- PR -

samba経由でファイルが削除されない

1
投稿者投稿内容
ma
常連さん
会議室デビュー日: 2004/08/09
投稿数: 34
お住まい・勤務地: 福岡
投稿日時: 2005-01-25 10:47
クライアントからファイルサーバにフォルダを作ると
「フォルダ〜〜(作成したフォルダ名)内に作成された
 ファイルにはアクセスできない場合があります。
 続行しますか?」

とメッセージが出てきます。ここで yes/no どちらを選択しても
フォルダはできるのですが、フォルダの中をのぞいてみると
TESTDIR.TMPなるファイルが出来ています。
その後、Word文書やテキストファイルを作成し、削除しようとすると
「送り側のファイルが使用中の可能性があります」
とメッセージが出てきてファイルを削除できません。
しかし、ファイル名の変更や内容の変更(保存)は出来ます。

出来たファイルはサーバ側から削除できるのですが、クライアント側からは
削除できません。

色々と記事を探しましたが参考になるものがありませんでした。

ファイルを削除する方法、フォルダ作成時に出てくるメッセージが出ないように
する方法を教えていただきたく投稿しました。

マシンの配置、バージョンは以下のとおりです
Windows2000(クライアント)−(Samba2.2.3a-6)−RedHatLinux7.3(ファイルサーバ)
コブラ
ぬし
会議室デビュー日: 2003/07/18
投稿数: 1038
お住まい・勤務地: 神奈川
投稿日時: 2005-01-25 15:49
ファイルを開かずに削除。
ma
常連さん
会議室デビュー日: 2004/08/09
投稿数: 34
お住まい・勤務地: 福岡
投稿日時: 2005-01-25 17:15
コブラさん 返答ありがとうございます。

>ファイルを開かずに削除。
ダメでした。作成直後にやっても作成して開いてから削除しても
「送り側のファイルが使用中の可能性があります」 とでます。

ついさっきわかったことなのですが、プロセス一覧を表示すると
smbdデーモンが22個(?)動作していました。
それと、Word文書を開くと一時ファイルができるのですが、文書を閉じても
一時ファイルが残っています。(作成時はありません)

実は先日、ファイルオープン時にロックファイルが作成されないトラブルがおきました。
私はこのトラブルと関係があるような気がするのですが、それから先がわかりません。

コブラ
ぬし
会議室デビュー日: 2003/07/18
投稿数: 1038
お住まい・勤務地: 神奈川
投稿日時: 2005-01-26 13:30
その、問題のフォルダーのパーミッションは?
実行権限は other にも x がついてますか?
電子の妖怪
会議室デビュー日: 2005/01/26
投稿数: 1
投稿日時: 2005-01-26 14:53
コブラさんと同じく、ファイル&ディレクトリのパーミッションを疑え、に一票。

確認するとしたら、smb.confの
create mode = xxxx
directory mode = xxxx
これのxxxxの部分がどうなってるか、ですね。
ma
常連さん
会議室デビュー日: 2004/08/09
投稿数: 34
お住まい・勤務地: 福岡
投稿日時: 2005-01-26 20:32
コブラさん、電子の妖怪さん 返信ありがとうございます。

現在、クライアントが
create mode = 0664
directory mode = 0775
となっております

会社のサーバですので、こちらも色々探ってみました。

どうやらこの現象はWin2000のみ起きるようで、
NTでは通常の動作をしました。
Debianが一台あったのでサーバマシンとsmb接続しましたが、
こちらも通常の動作をしました。

次にロックファイルについてですが、smbstatus上でロックファイルが
確認できませんでした。
しかし、例えばExcelファイルを二重オープンすると排他制御が行われます。

あと、Sambaのログでマシンごとのログファイルを見ると気になる文がいくつかありました。
  日付と時刻 lib/util_sock.c:open_socket_out(858)
  error connecting to 192.168.200.2:445 (Connection refused)

  日付と時刻tdb/tdbutil.c:tdb_log(475)
   tdb(/var/cache/samba/locking.tdb): expand_file write of 1024 failed (Operation not permitted)

  日付と時刻smbd/trans2.c:set_delete_on_close_internal(2143)
   set_delete_on_close_internal: failed to change delete on close flag for file ファイルのパス/TESTDIR.TMP

です。
未記入
常連さん
会議室デビュー日: 2004/11/30
投稿数: 21
投稿日時: 2005-01-26 20:41
一つ目のlogの「error connecting to 192.168.200.2:445 (Connection refused) 」が気になったので「port 445」で調べてみましたが・・・
http://www.atmarkit.co.jp/fwin2k/win2ktips/088directhostedsmb/088directhostedsmb.html
ma
常連さん
会議室デビュー日: 2004/08/09
投稿数: 34
お住まい・勤務地: 福岡
投稿日時: 2005-01-31 11:57
未記入さん、返答をくださった皆さん ありがとうございました。

結論として、SambaがWindows2000(他のWinOSを除く)とLinuxの間で起きた現象で、
Sambaの潜在バグが出てきたようです。
原因はSambaが作るロックファイルあたりにあるようですが、それ以上は追究不可能でした。

対策としてはSamba2.2系のアップグレードをとりました。
それ以降は以前の現象は起きなくなりました。
1

スキルアップ/キャリアアップ(JOB@IT)