ユーザーtomcat6が所有しているフォルダがあります
drwxr-xr-x 2 tomcat6 tomcat6 69632 2011-05-06 03:43 document
他のユーザ(ruser)にドキュメントフォルダへの書き込み権限を与えたい。tomcat6とruserは同じグループに属していません。setfacl
を使ってみました
sudo setfacl -m u:ruser:rwx document
が、setfacl: document: Operation not supported
エラーを出してしまいます。親切に助けてください
84 TheVillageIdiot 2011-05-09
これには2つの方法があります: ディレクトリを “world “書き込み可能に設定するか、2人のユーザのために新しいグループを作成して、そのグループにディレクトリを書き込み可能にします
明らかに世界で書けるようにすることは悪いことなので、第二の選択肢が望ましいです
Linux のユーザは複数のグループに所属することができます。この場合、tomandruser
という新しいグループを作成したいとします
sudo groupadd tomandruser
グループが存在するので、そのグループに2人のユーザーを追加します
sudo usermod -a -G tomandruser tomcat6
sudo usermod -a -G tomandruser ruser
今、残っているのは、ディレクトリのパーミッションを設定することです
sudo chgrp -R tomandruser /path/to/the/directory
sudo chmod -R 770 /path/to/the/directory
これで、tomandruserグループのメンバーだけがディレクトリ内の何かを読み書きしたり、実行したりすることができるようになりました。chmod と chgrp コマンドの -R 引数に注意してください: これは、ターゲットディレクトリのすべてのサブディレクトリに再帰し、それが見つけたすべてのファイルとディレクトリを変更するように指示します
また、他の人にファイルを読ませたい場合は774
、他の人にファイルを読ませて実行させたい場合は775
などと770を変更するとよいでしょう。グループ割り当ての変更は、ユーザーがログアウトして戻ってくるまで有効になりません
また、ユーザーの一人によってディレクトリ内に作成された新しいファイルがグループ内の他のユーザーによって自動的に書き込み可能であることを(おそらくあなたはそうします)したい場合は、こちらを参照してください
160 Andrew Lambert 2011-05-09
例のスクリプトでは、w (write)/ r (read) / x (execute)
にUSER1
とUSER2
に/path/to/the/directory
のフォルダパスを指定して、w (write)/ r (read) / x (execute)
にアクセス権を与える例を示しています。書き込みのみのアクセス権を与えたい場合は、rwx
をw
に置き換えてください
#!/bin/bash
# Block others and people in the same group to do read/write/execute on give folder:
sudo chmod 700 /path/to/the/directory
#Give read/write/execute access to USER1 on give folder:
sudo setfacl -R -m user:USER1:rwx /path/to/the/directory
#Give read/write/execute access to USER2 on give folder:
sudo setfacl -R -m user:USER2:rwx /path/to/the/directory
3 alper 2018-07-23