田川と申します。Sambaのことで質問をします。

Sambaを導入したFreeBSD5.4のマシンにFAT32のドライブをマウントして、
Windowsマシンから直接マウントしたFAT32領域に書き込むとファイルが壊れま
す。

書き込んだ後すぐに読み込んでみると問題なく読み込めますが、リブートして立
ち上げたWindowsからSamba経由で書き込んだファイルを読み込んでみると、ファ
イルが壊れていてアクセスできません。またリブートして再度FreeBSDを立ち上
げ、マウントしたFAT32に書き込んだファイルをWindowsマシンから読み込んでみ
るとこれもファイルが壊れていることが解ります。

FreeBSDのヴァージョンによって変わるのかと思い、デスクトップのFreeBSD6.0
で同じことを試してみましたが、現象は同じでした。

不思議なことに同じようにFAT32領域をマウントしたLinuxで、Samba経由で直接
Windows経由で書き込んでもこのような現象は起こりません。

又、FreeBSDのUFSの領域にWindowsから一旦書き込み、書き込まれたFreeBSDで
UFSの領域からFAT32の領域にコピーしてやるとファイルは壊れません。

なんとなくFreeBSDのファイルシステムの問題のような気がしますが、このよう
な現象について対処方法を御存じの方はいらっしゃらないでしょうか?

以下に私の環境と設定について書きます。
SambaはPortsからインストールしています。(libiconvはコンパイル時に
WITH_EXTRA_PATCHES=yesとしてコンパイルしています。)

マシン: IBM ThinkPad s30
OS: FreeBSD5.4 (Windows XP Professional とのデュアルブート)
Samba: ja-samba-3.0.21b_1,1
libiconv: libiconv-1.9.2_2

/etc/fstabの内容(以下の/mnt/windowsにFAT32の領域をマウントしています。)
# Device                Mountpoint      FStype  Options         Dump    Pass#
/dev/ad0s3b             none            swap    sw              0
0 /dev/ad0s3a             /               ufs     rw
1       1 /dev/ad0s3e             /tmp            ufs
rw              2       2 /dev/ad0s3f             /usr
ufs     rw              2
2 /dev/ad0s3d             /var            ufs     rw
2       2 /dev/ad0s5              /mnt/windows    msdosfs
noexec,-L=ja_JP.eucJP,-D=CP932,rw       0       0

/usr/local/etc/smb.confの内容
#======================= Global Settings =====================================
[global]
   dos charset = cp932
   unix charset = EUCJP-MS
   display charset = EUCJP-MS

   workgroup = K1_RD
   netbios name = Confucius

   server string = Samba Server

   security = user

   load printers = yes

   log file = /var/log/samba/log.%m

   max log size = 50

   socket options = TCP_NODELAY

   dns proxy = no 
#============================ Share Definitions ==============================
[homes]
   comment = Home Directories
   browseable = yes
   writable = yes

[printers]
   comment = All Printers
   path = /var/spool/samba
   browseable = no
   guest ok = no
   writable = no
よろしくお願いします。

メールによる返信