質問: マウントしたディレクトリの権限 ファイルサーバ(windows2000) のディレクトリを mount -t smbfs -o username=un,password=pw,codepage=cp932, iocharset=euc-jp //server/dir /home/temp でマウントしました。(rootでマウント) マウント自体はうまく行くのですが マウントしたディレクトリ内に一般ユーザでファイル等を作成できません。 できない理由は分かるのですが、それをできるようにする方法が分かりません。 hp上に"fstabを変更することによって、一般ユーザがマウントできる。" との方法があったので、下記のようにやってみたのですがうまく行きませんでした。 /etc/fstabに //server/dir /home/temp smbfs noauto,user 0 0 の一行を加えました。 そしてマウントした結果は"rootだけがそれを行えます。" となり、できません。 上記の方法やまたそれ以外の方法でもよいので、 アドバイスを宜しくお願い致します。
回答: umaskはfat,vfat,msdosのfilesystemをmountする 時のオプションですから、smbfsでは使えないようです。 つーか、samba-2.2.4に付属のsmbmountでは使えません。 (smbmountがsmbfsのmount動作の実体です)。 で、smbfsでは、uidやgid。また、fmask,dmaskが 使えます。 自分のuser idが501だったら、 mount -t smbfs -o username=un,password=pw,codepage=cp932, iocharset=euc-jp,uid=501 //server/dir /home/temp って感じ(rootでね)。 >そしてマウントした結果は"rootだけがそれを行えます。" >となり、できません。 fstabにuserオプションを書いても、上記のように mountコマンドを使うと、fstabの設定は無視されます。 例えば、 mount /home/temp の様に、マウントポイントだけ与えてやるとfstabの 内容を検索し、一致すればそれを使うようになって います。この時、username等のオプションも、fstab に記述しておけば良いでしょう。 # ただしその後もsmbmntコマンドとumountコマンドに # suidビットをセットしなくちゃならんし、マウント # ポイントのディレクトリの所有者もユーザーに # 変更する必要が有るみたいだし