chmod:ファイルモードビットの変更
使用法(8進モード):
chmod <octal-mode> files...
使用法(記号モード):
chmod <references><operator><modes> files..
references文字の組み合わせですugoa。これfilesは、変更するユーザーのアクセスを指定します。
u それを所有するユーザー
gfileのグループの他のユーザー
o ファイルのグループに属さない他のユーザー
a すべてのユーザー
省略すると、デフォルトですべてのユーザーになりますが、許可されてumaskいる権限のみが変更されます。
operator文字の1つです+-=。
+ 指定されたファイルモードビットをそれぞれの既存のファイルモードビットに追加します file
- 指定されたファイルモードビットをそれぞれの既存のファイルモードビットに削除します file
=明示的に指定されない限り、指定されたビットを追加し、ディレクトリに設定されたビットsetuidとsetgidビットを除く未指定のビットを削除します。
moderwxXst変更する許可ビットを指定する文字の組み合わせで構成されます。
r 読んだ
w 書く
x 実行(またはディレクトリの検索)
X ファイルがディレクトリであるか、すでに一部のユーザーに実行ビットが設定されている場合にのみ実行/検索
ssetuidまたはsetgid(指定に応じてreferences)
t 制限付き削除フラグまたはスティッキービット
または、mode文字の1つで構成することもできます。ugoこの場合、モードは、所有者(u)、fileグループのメンバー()、gまたは前のカテゴリのいずれにも属さないユーザーの許可()に現在許可されている許可に対応しますo。
さまざまなビットのchmod説明:
- アクセス制御(も参照
setfacl)
rwx —読み取り(r)、書き込み(w)、および実行/クロス(x)許可。
- 読み取り(r)は、ファイルを読み取ることができるか、またはディレクトリをリストできるかどうかに影響します。
- 書き込み(w)は、ファイルへの書き込みが可能かどうか、またはディレクトリの編集(ファイルの追加、削除、名前の変更)が可能かどうかに影響します。
- 実行(x)は、ファイルを実行できるかどうか、スクリプトの使用(を参照
#!)、およびその他の実行可能ファイルに影響します。
- クロス(x)は、ディレクトリを横断できるかどうかに影響します。
sおよびt—スティッキビット(t)、およびディレクトリのsetgid(s)
- スティッキービットはディレクトリにのみ影響します。ファイル所有者とルート以外のユーザーがディレクトリ内のファイルを削除できないようにします。
- ディレクトリのsetgidビットは、新しいファイルとディレクトリのグループを同じグループに設定し、新しいディレクトリのsetgidビットを設定します(setfaclのデフォルトも参照)。
s —実行可能ファイルのsetuid、setgid。
- 何をしているのかわからない場合、これはセキュリティに悪影響を及ぼす可能性があります。
- 実行可能ファイルが実行されているときに、これらのビットのいずれかが設定されている場合、実行可能ファイルの有効なユーザー/グループはファイルの有効なユーザー/グループになります。したがって、プログラムはそのユーザーとして実行されます。
setcapこれを行うためのより現代的な方法を参照してください。
使用法:
chattr <operator><attribute> files...
operator文字の一つである+-=:* +既存のものであることが選択した属性を追加してattributesのfiles
* -選択し削除しattributes
* =ファイルが指定していた属性の現在のセットを上書きしますattributes。
attributeacdeijstuADST属性に対応する文字の組み合わせです:
a 追加のみ
c 圧縮された
d ダンプなし
e エクステント形式
i 不変
j データジャーナリング
s 安全な削除
t テールマージなし
u 削除できない
Aノーatimeアップデート
D 同期ディレクトリ更新
S 同期更新
T ディレクトリ階層のトップ
使用法(属性を設定):
setfattr -n <name> -v <value> files...
使用法(削除):
setfattr -x <name> files...
name 設定または削除する拡張属性の名前です
value 拡張属性の新しい値です
setfacl:ファイルアクセス制御リストの変更
使用法:
setfacl <option> [default:][<target>:][<param>][:<perms>] files...
option 次のいずれかを含める必要があります。
--set ファイルまたはディレクトリのACLを設定し、以前のACLを置き換えます
-m| --modifyファイルまたはディレクトリのACLを変更します
-x| --remove ファイルまたはディレクトリのACLエントリを削除する
target文字の1つugmo(または以下に示すより長い形式):
u、でusers識別される名前付きユーザーの許可、省略時のparamデフォルトはファイル所有者uid
g、groupによって識別される名前付きグループの許可、省略された場合のparamデフォルトは所有グループuid
m、mask実効権利マスク
o、other他の人の許可
permsrwxX許可に対応する文字の組み合わせです。
r 読んだ
w 書く
x 実行する
X ファイルがディレクトリであるか、すでにユーザーの実行権限を持っている場合にのみ実行
または、許可のセットを示すperms8進数(0- 7)にすることもできます。
使用法:
setcap <capability-clause> file
capability-clauseコンマ区切りのリストで構成されて機能オペレータフラグペアのリストが続く名前。
利用可能な演算子は=、+および-です。使用可能なフラグはe、iおよびです。pこれらは、Effective、Inheritable、およびPermittedの機能セットに対応しています。
=オペレータは、指定された機能セットを高め、他の人をリセットします。=オペレーターと一緒にフラグが指定されていない場合、すべての機能セットがリセットされます。+そして-、オペレータは、それぞれ一つ以上の指定された機能セットを上げたり下げます。
使用法:
chcon [-u <user>] [-r <role>] [-t <type>] files...
ユーザは等SELinuxのユーザであるuser_u、system_uまたはroot。
ロールはSELinuxロールです(常にobject_rファイル用)
typeはSELinuxサブジェクトタイプです
使用法:
chsmack -a <value> file
valueSMACK64拡張ファイル属性に設定されるSMACKラベルです
richaclは、より高度なACLを追加する機能です。
現在進行中の作業なので、それらについてはあまり説明できません。私はそれらを使用していません。
この質問も参照してください。従来の「rwx」およびPOSIX ACLを超える、より高度なファイルシステムACLはありますか?
およびマニュアルページ
chmod