
という名前のグループのユーザーと共有したいフォルダーがあります。フォルダーにfrx
適用しましたが、何らかの理由で、SUID ビット (/home/frx ディレクトリ内のフォルダー用) が代わりに として表示されました。chmod g+s
S
> pwd
/home/frx
> ls -al
drwxrws---+ 14 ferc frx 4096 Dec 24 23:20 .
drwxr-xr-x 8 root root 4096 Dec 2 12:48 ..
...
drwxrwS---+ 20 pi frx 4096 Dec 19 18:50 views
私が読んだところによると、s
ユーザーS
がファイルを開くだけの場合も、違いはないはずです。ただし、グループに読み取り/書き込み権限があるにもかかわらず、グループ内の別のユーザーはディレクトリfrx
内のファイルを表示またはアクセスできませんviews
。(そのユーザーは /home/frx 内のファイルを問題なく表示できますtouch
。) なぜこのようなことが起こるのでしょうか?
s
ディレクトリのSUID ビットを変更するにはどうすればよいですか?
答え1
ディレクトリ内のファイルにアクセスするには、ユーザーにそのディレクトリに対する実行権限が付与されている必要があります。
S
(大文字s
) は、グループのスティッキー ビットは設定されているが、実行ビットは設定されていないことを示します。このため、frx
グループの別のユーザーはディレクトリ内のファイルにアクセスできませんviews
。これを適切に機能させるには、グループのスティッキー ビットと実行ビットの両方を設定する必要があります。