LinuxからWindowsの共有フォルダをmountした際にファイルが作成・変更できない問題

$ mount -t smbfs //192.168.0.2/htdocs /var/www/htdocs -o username=hoge,password=hoge,uid=apache

192.168.0.2 : Windows側のIPアドレス
username,password : Windows側でパスワード保護している場合に必要
uid : Linux側の実行ユーザー。httpd.confでUser指定しているユーザー名を記述


普通にWindowsのフォルダをLinux側でマウントする場合は、上記のようなコマンドを打ちます。
で、マウントできてPHPとかを実行することが出来たんだけど、
ログファイル等ファイルの作成・変更・削除が何故か行えないので、色々調べて見ました。


・そもそも、何がダメなのか?
 samba経由でアクセスしているWindowsディレクトリに対するファイル作成・削除の権限がない
  → じゃあmountする際にlinux側から編集する権限をwindowsのフォルダに付加すればいいんじゃない?


・で、いろいろためしてみた
 - gid=apacheをmountオプションに付加
  無駄
 - uidをrootとかに変更してみる
  無駄無駄
 - Apacheの実行ユーザーをapacheからrootに変更
  無駄無駄無駄
 - ファイルを開く権限がありませんって出てるから、rootでやればいけそうなのに…
  [function.fopen]: failed to open stream: Permission denied
 - 保存する階層を変えてみたけど
  無駄だった
 - でもphpのセッションとかは保存できてるから、apache経由でファイルの作成ができなくなっているってワケではない
  VM側ならダイジョーブ。Win側をいぢると怒られるってこと
 - mountオプションにrwつけてみた
  やっぱり無駄
 - apacheとかrootを含めたグループを作ってみた。apacheの実行グループ(httpd.conf)も変えた
  でもダメダメ
 - umaskで実行権限を0777に変えてみた
  でもそんなのry
 - sambaの設定ファイルをいじくってみる
  windowsからのアクセスができるようになったけど関係ないよね


・どーしてなのさ
 moountのオプションでrw権限与えてるのに動かないって何Yo
 → CacheFS, NFS, PCFS, UFS, S5FSとかじゃないと有効じゃないらしい?(http://docs.sun.com/app/docs/doc/806-2717/6jbtqleh3?l=ja&a=view)
   と思ったけど違うぽい


・とりあえずVMをリブートしてtouchされたメッセージを眺めてみることにする

Feb 9 09:47:41 yeOldZX kernel: smb_create: //test failed, error=-13

 なんかそれっぽいメッセージが出だした!!
  それをもとに、しぶしぶ海外のサイトをあさってみたら答えがあった
   http://www.linuxquestions.org/questions/linux-networking-3/smbmount-write-permissions-root-288157/



・結果
 Windows側の共有フォルダのアクセス許可でフルコントロールにチェックいれたらなおた!←結論
 Linux側は全く関係なかった!Linux側が原因と思ってずっと見てたのに!!
 基本大事!超大事!