SAMBAでマウントしたけど書き込めず

LANDISKに対して、以前書いた

degas@debian:~$ sudo mount -t smbfs -o username=common,codepage=cp932,iocharset=utf8 //192.168.100.101/share /mnt/nas_share

でmountしたのだけど、ownerもgroupもrootのみ。

ようやく書き込みできるようにマウントできた。ポイントは2つ。

  • いまdebianにログインしているユーザと違うユーザでマウントしたためにownerに成れなかった。なのでユーザをdegasとしてマウントさせる。
  • マウントユーザを明示しないとダメらしい。

ということで、

degas@debian:~$ sudo mount -t smbfs -o username=degas,uid=degas,codepage=cp932,iocharset=utf8 //192.168.100.101/share /mnt/nas_share

とすることで

degas@debian:/mnt/nas_share$ ls -alF
合計 75
drwxr-xr-x 1 degas root 4096 2008-03-05 13:39 ./
drwxr-xr-x 3 degas root 4096 2008-01-19 01:21 ../
drwxr-xr-x 1 degas root 4096 2007-01-19 23:24 .AppleDB/
drwxr-xr-x 1 degas root 4096 2008-02-20 09:50 .AppleDesktop/
drwxr-xr-x 1 degas root 4096 2008-01-16 16:58 .AppleDouble/
-rwxr-xr-x 1 degas root 6148 2008-02-29 15:49 .DS_Store*
drwxr-xr-x 1 degas root 4096 2008-02-22 15:50 .TemporaryItems/
-rwxr-xr-x 1 degas root 4096 2008-02-22 15:50 ._.TemporaryItems*
drwxr-xr-x 1 degas root 4096 2007-01-21 23:03 Desktop/
drwxr-xr-x 1 degas root 4096 2008-02-25 00:03 MacData/
drwxr-xr-x 1 degas root 4096 2008-02-15 09:33 Network Trash Folder/
drwxr-xr-x 1 degas root 4096 2008-02-27 18:37 PCData/
drwxr-xr-x 1 degas root 4096 2007-12-05 00:36 Temporary Items/
drwxr-xr-x 1 degas root 4096 2007-01-21 23:03 TheVolumeSettingsFolder/
drwxr-xr-x 1 degas root 4096 2008-02-28 00:58 etc/
drwxr-xr-x 1 degas root 4096 2008-02-10 22:38 kakeibo/
drwxr-xr-x 1 degas root 4096 2008-02-20 10:09 music/
drwxr-xr-x 1 degas root 4096 2008-02-08 22:01 photo/

とownerでマウントできた。

だが、ここで

degas@debian:/mnt/nas_share$ touch test

とすると

degas@debian:/mnt/nas_share$ ls test -alF
-rwxr-xr-x 1 degas root 0 2008-03-05 13:45 test*

と実行可能になってしまう。ということでファイルマスクfmask=664を付けておく。ついでにディレクトリマスクdmask=775も。
先にマウントされている場所から出て、umountする。

degas@debian:/mnt/nas_share$ cd /mnt
degas@debian:/mnt$ sudo umount /mnt/nas_share/

ということでやり直し。

degas@debian:/mnt$ sudo mount -t smbfs -o username=degas,uid=degas,fmask=664,dmask=775,codepage=cp932,iocharset=utf8 //192.168.100.101/share /mnt/nas_share

こうすると

degas@debian:/mnt$ cd nas_share/
degas@debian:/mnt/nas_share$ touch test
degas@debian:/mnt/nas_share$ ls test -alF
-rw-rw-r-- 1 degas root 0 2008-03-05 14:11 test

のように実行なしになる。こっちのほうが良いかな。