Linuxのディレクトリの「s」権限をクリアするにはどうすればよいですか?


24

許可マスクが表示されているディレクトリがありdrwsrwsr-xます。755S へのアクセス許可をリセットしようとすると、まだ残ります。

「s」とは何ですか。また、許可を775(drwxrwxr-x)に戻すことができないのはなぜですか?

回答:


25

ユーザーおよびグループ列の「実行」位置に表示されるのは、SetUID(実行時にユーザーIDを設定)およびSetGID(実行時にグループIDを設定)ビットです。

Unixファイルのアクセス許可は、実際には4桁の8進数です SUGO

  • SはSetUID(4)、SetGID(2)、および "Sticky"(​​1)ビットを制御します
  • Uは、ファイル所有者のRead(4)/ Write(2)/ Execute(1)ビットを制御します
  • Gは、ファイルのグループの読み取り/書き込み/実行ビットを制御します
  • Oは、他のすべてのユーザーの読み取り/書き込み/実行ビットを制御します。

を使用して、ディレクトリからsetuidビットを削除できますchmod ug-s directory。またはchmod 0755 directory

詳細については、のmanページchmod、およびこのWikipediaのSetUIDビットに関するページを参照してください


「sgid」(「u」なし)です。
追って通知があるまで一時停止します。

「drwsrwsrwxとは?」<-もう一度確認してください
HrvojeŠpoljar11年

6
chmod 0755少なくともLinuxでは、setuidビットをクリアしませ。現在、他のシステムでテストしています。
-FUZxxl

1
POSIXはchmod、8進モードでsetuid、setgid、およびvtxビットをクリアするかどうかにかかわらず、通常のファイル以外のファイルタイプに対して定義された実装であると言います。
-FUZxxl

2
Linuxのディレクトリのsetuidビットをクリアするにはchmod 00755、;を使用します。参照unix.stackexchange.com/q/393531/46851
ロジャーLipscombe

23

setuidおよびsetgid

setuidおよびsetgid(それぞれ、実行時のユーザーID設定および実行時のグループID設定の略)は、ユーザーが実行可能ファイルの所有者またはグループの権限で実行可能ファイルを実行できるようにするUnixアクセス権フラグです。多くの場合、特定のタスクを実行するために、コンピューターシステム上のユーザーが一時的に昇格した特権でプログラムを実行できるようにするために使用されます。提供される想定のユーザーIDまたはグループIDの特権は必ずしも昇格されるわけではありませんが、少なくとも特定の特権です。

setuidおよびsetgidビットを数値的に削除するには、ビットパターンの前にaを付ける必要があります0(例:に0775なります00775)。

実行してsetuidとsetgidを削除します。

chmod 00775 path

または

chmod a-st path

ファイルではなくディレクトリにあります
HrvojeŠpoljar11年

1
ディレクトリはUnixファイルシステムのファイルでもあり、ooshroの言うことは完全に正しいです。
lynxman11年

はい、それはすべてファイルですが、drwxrwxr-xのように見えるものを実行しないため、説明は適合しません:|
フルボイェショポルジャー

UNIXでは、inodeはパーミッションを取得するものです。
クリス

2
GNU chmodは、8進モードで実行すると、ディレクトリのsetuidおよびsetgidバイトをクリアしません。POSIXはこの動作を許可します。
-FUZxxl

2

ooshroの答えに追加...

ディレクトリでsuidまたはsgid権限を使用する場合、そのディレクトリ内で作成されたファイルは、問題のディレクトリと同じ所有者(suidの場合)またはグループ(sgid)を持ちます。

私はそれを自宅のSamba共有に使用しています。ベースディレクトリはユーザーnobodyとグループolympiaによって所有され、パーミッションは2770です。したがって、そのディレクトリの下にあるものを読み書きするためにグループolympiaにいる必要があります。 。また、2770のdirmaskと660のファイルマスクを使用して、ツリーの最後までアクセス許可を正しく保つようにSambaを構成しました。

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