-1

の考え では、Windows 8を使用しており、仮想ボックス内にarchlinux(sassとcompass用のLAMPとRubyのセットアップのみ)を使用してローカルWeb開発ボックスを構築しています。sambaを使用してLinux内のフォルダーの1つを共有し、Windows 8内でフォルダーを表示および編集できるようにしました。Linux内のフォルダーをhttp:httpおよび0777に設定して、Windows内で編集できるようにしました。

私の問題: ウィンドウ内で新しいファイル(画像、フォルダー、ファイルなど)を作成するときは常に、所有権とグループがnobody:nobodyに設定されます。

私の質問: Windowsで新しいファイルを作成するときに、所有者とグループが自動的にhttp:httpと0777の書き込み権限に設定される方法はありますか?

私はLinuxを初めて使用し、これがセキュリティリスクであることを知っていますが、これはWeb開発ボックスにすぎません。私がRubyとRails、SassまたはCompassで遊ぶことができ、もちろんLinuxに関する私の小さな知識をゼロから拡張できるようにするためだけに。

4

2 に答える 2

1

smb.confを編集する

  • セキュリティ上の理由から、Windows 8に静的IPを設定します(例:192.168.1.50)。これにより、誰もsamba共有ディレクトリにアクセスできなくなります。smb.confでコメントhost allowを外し、Windowsの静的IPに設定します。

例:

host allow = 192.168.1.50

次に、下に移動して共有セクションに移動し、共有するディレクトリを設定します。

例:

[www]
comment = www
path = /www
writable = yes
guest ok = yes
public = yes
created mask = 0777
directory mode = 0777

次に保存します。

次はsetuiとsetgidです。詳細はこちら

$sudo chmod -R g+s /www

次は、アクセス制御リストの設定です。*私はここからこれを手に入れました

$sudo setfacl -R -m d:g:http:rwx /www

それでおしまい!

出力サンプル、Windows8およびvirtualboxを介したテスト

Linuxから作成されたディレクトリ

drwxrwsrwx+ 2 devbox http 4096 Mar 12 10:18 testfromnix

Linuxから作成されたファイル

-rw-rw-rw-+ 1 devbox http 1 Mar 12 10:20 testfromnix.file

(setfaclでrwxを設定しましたが、ファイルには読み取りと書き込みしか表示されません。何かが足りない可能性があります。しかし、それはあなたの目的に役立ちます。誰かが説明のために開いている理由を知っている場合。)

Windowsから作成されたディレクトリ

drwxrwsrwx+ 2 nobody http 4096 Mar 12 10:27 testfromwin

Windowsから作成されたファイル

-rwxrwxrw-+ 1 nobody http 0 Mar 12 10:29 testfromwin.file

これで、両方のマシンで問題なくファイル/ディレクトリを編集または追加できます...

于 2013-03-11T18:56:28.470 に答える
0

ディレクトリ(= folder)に「setgid」フラグを設定できます。これにより、後でその下に作成されるすべてのファイルとディレクトリの所有グループが変更されます。詳細な説明については、http://en.wikipedia.org/wiki/Setuid#setuid_and_setgid_on_directoriesを参照してください。

あなたがあなたのニーズに完全に十分であるはずの特別な何かを必要としない限り。ディレクトリにも適切なグループ権限を設定するだけです。

別の方法は、新しいファイルを作成するために別のユーザーを使用するようにSamba構成を変更することです。しかし、それは他の誰かが答えるためです:)

于 2013-03-11T16:54:17.250 に答える