グループ書き込み可能ディレクトリを設定するにはどうすればよいですか?


16
$ whoami
meder
$ cd /var/www
$ sudo mkdir html
$ sudo groupadd web
$ sudo usermod -a -G web meder
$ sudo usermod -a -G web medertest
$ sudo chown meder:web html
$ sudo chmod -R g+rwx html

問題は、/var/www/htmlグループがに設定されている場合でも、新しいファイルを作成するときはいつでもweb、元のユーザーのみが書き込み可能であることです。

デフォルトが問題の原因でumaskある002ため、を設定するようアドバイスされました。しかし、そのグループのすべてのユーザーに対してこれを行う必要があり、私が知る限り、すべてのユーザーを変更~/.bashrcするのは退屈umask 002です。それらのすべてのユーザーに対してシェルコマンドを使用して自分でそれを行うことができたとしても、それでも面倒です。

誰でもグループの書き込み可能なディレクトリを持つことについてアドバイスを提供できますか


2
ログアウトしてから、ユーザーmederで再度ログインしようとしましたか?グループ情報は現在のセッションでは更新されません。
マルコ

@marco -私がやったsu medertestsu meder何千回と同様。それはログアウトとみなされますか?
メダーオムラリエフ

@marcoおかげで、そのグループ情報は、現在のセッションで更新されません知りませんでした...残念
gabeio

回答:


30

まず、ディレクトリのSGIDビットを有効にします。

sudo chmod g+s html

これにより、そのディレクトリ内に作成された新しいファイルは、親のグループ所有権を継承します。

POSIXアクセス許可モデルには、アクセス許可レベルの継承はありません。ただし、これは、アクセス制御リストを使用して、umask設定を心配することなく実行できます。

sudo setfacl -d -m group:web:rwx html

ディレクトリごとにumaskを割り当てることができないのは本当に残念です。


g+sの数字に?
ユルゲンポール

1
@WearetheWorldには2が付加されますchmod 2XXX file
みぞ

1
私はこの答えをずっと探し回っていましたが、Twitterの回答でそれを紹介しました。ありがとう@mizo!
グリフ14

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.