2007年8月29日水曜日

create maskを775にしたのに。

sambaでcreate maskを775にしたのに、何故か実行権限だけ外れてしまう。

この問題の解として、2ちゃんねるの過去ログで以下を見つけた。
http://www.kp2.jp/cgi-bin/2chbbs/test/read.cgi/nono/990671952/421-520
UNIX と DOS(Windows) のファイルモードの違いを吸収する
ためにそういうことが起こる。

(1) DOS には実行権限なんていうモードは存在しないので、
UNIX 側でも当然記録しない。
(2) 逆に DOS のアーカイブ属性は UNIX に存在しないので
samba はこれを UNIX 側ではファイル所有者の実行権限に
マッピングすることで、違いを吸収しようとする。

(1)と(2)の合わせ技で、mask が 777 のとき 766 になる。

問答無用で 777 にしたいなら、 smb.conf に
force create mode
force directory mode
あたりを設定すればいい。

普通はセキュリティのことも考えて 777 にはしないけど、
そうしないと不便だと文句いう奴らもいるからなあ。

なるほど。
ただ、force create modeやらを使うと、Windowsのファイルプロパティなどで設定する
「読み取り専用」だったり「隠しファイル」だったりを設定できなくなるので、実行権限は諦めることにした。

2007年8月20日月曜日

Sambaの接続エラー。

Aug 20 00:42:43 roserogue smbd[4367]: [2007/08/20 00:42:43, 0] lib/util_sock.c:get_peer_addr(1000)
Aug 20 00:42:44 roserogue smbd[4367]: getpeername failed. Error was Transport endpoint is not connected
Aug 20 00:42:44 roserogue smbd[4367]: [2007/08/20 00:42:44, 0] lib/util_sock.c:get_peer_addr(1000)
Aug 20 00:42:44 roserogue smbd[4367]: getpeername failed. Error was Transport endpoint is not connected
Aug 20 00:42:44 roserogue smbd[4367]: [2007/08/20 00:42:44, 0] lib/access.c:check_access(328)
Aug 20 00:42:44 roserogue smbd[4367]: [2007/08/20 00:42:44, 0] lib/util_sock.c:get_peer_addr(1000)
Aug 20 00:42:44 roserogue smbd[4367]: getpeername failed. Error was Transport endpoint is not connected
Aug 20 00:42:44 roserogue smbd[4367]: Denied connection from (0.0.0.0)
Aug 20 00:42:44 roserogue smbd[4367]: [2007/08/20 00:42:44, 0] lib/util_sock.c:get_peer_addr(1000)
Aug 20 00:42:44 roserogue smbd[4367]: getpeername failed. Error was Transport endpoint is not connected
Aug 20 00:42:44 roserogue smbd[4367]: Connection denied from 0.0.0.0
Aug 20 00:42:44 roserogue smbd[4367]: [2007/08/20 00:42:44, 0] lib/util_sock.c:write_socket_data(430)
Aug 20 00:42:44 roserogue smbd[4367]: write_socket_data: write failure. Error = Connection reset by peer
Aug 20 00:42:44 roserogue smbd[4367]: [2007/08/20 00:42:44, 0] lib/util_sock.c:write_socket(455)
Aug 20 00:42:44 roserogue smbd[4367]: write_socket: Error writing 5 bytes to socket 5: ERRNO = Connection reset by peer
Aug 20 00:42:44 roserogue smbd[4367]: [2007/08/20 00:42:44, 0] lib/util_sock.c:send_smb(647)
Aug 20 00:42:44 roserogue smbd[4367]: Error writing 5 bytes to client. -1. (Connection reset by peer)


というエラーメッセージがログに残る。
特に不具合はないのだけれども、どうも気になるので調べると

http://blog.hashimoto-clinic.jp/200611/article_7.html

http://www.kozupon.com/samba/samba2.html

原因:プリンタの設定をしていないにも関わらず、プリンタードライバの自動配布機能が動いてしまうから。

対策:[global]内に以下の2行を入れる。
load printers = no
disable spoolss = yes


らしい。
なるほど、納得。

2007年8月16日木曜日

ネットワークサーバから切断する方法

ファイルサーバなどで複数のIDをテストする場合、ネットワークサーバから切断を何度もしなければならない。
前は再起動を繰り返していたのだけれども、流石に面倒。

Windowsでは、コマンドラインでネットワークサーバから切断することが出来るのを発見。
NET USE \\XXX.XXX.XXX.XXX /DELETE /YES
(バックスラッシュは¥マーク)
XXX.XXX.XXX.XXXにはIPアドレスを記入する。

例:NET USE \\192.168.1.7 /DELETE /YES

2007年8月1日水曜日

sambaで待たされる(異常に遅い)現象について

この概要は表示できません。投稿を閲覧するには ここをクリック してください。