Provided by: manpages-ja_0.5.0.0.20180315+dfsg-1_all
名前
chmod - ファイルのモードビットを変更する
書式
chmod [OPTION]... MODE[,MODE]... FILE... chmod [OPTION]... OCTAL-MODE FILE... chmod [OPTION]... --reference=RFILE FILE...
説明
このマニュアルページでは GNU バージョンの chmod について説明しています。 chmod は指定され たファイルのモードビット (mode bits) を mode に基いて変更します。 mode は、変更内容の記号 表現 (記号モード)か、新しく設定するモードビットの ビットパターンを表す 8 進数 (数値モード) のどちらかで指定します。 記号モードの書式は [ugoa...][[-+=][perms...]...] です。 perms には、rwxXst のうち 0 個以上 の文字か、 ugo のいずれか 1 文字を指定します。 コンマで区切って、複数の記号表現を指定する ことができます。 ugoa の組み合わせで、そのファイルに対するユーザのアクセス権限を制御します。 それぞれ、ファ イルの所有者のユーザ (u)、ファイルのグループに属する 所有者以外のユーザ (g)、ファイルのグ ループに属さない他のユーザ (o)、 全てのユーザ (a) を意味します。 ugoa のどれも指定されな かった場合、(a) が指定されたのと同じ効果を 持ちますが、umask でセットされているビットは変 更されません。 + 演算子は、各ファイルの現在のファイルモードビットに 指定されたファイルモードビットを追加 します。 - を指定すると、指定されたファイルモードビットが削除されます。 = を指定すると、指 定されたファイルモードビットが追加され、 指定されていないビットが削除されます。 ただし、指 定されていないビットのうち、ディレクトリの set-user-ID と set-group-ID は影響を受けませ ん。 文字 rwxXst で設定対象のユーザのファイルモードビットを選択します: 読み出し許可 (r)、書き込 み許可 (w)、 実行許可 (もしくはディレクトリの検索許可) (x)、 ファイルがディレクトリの場合 もしくはファイルが 実行許可/検索許可 (ただし、ファイルがディレクトリの場合か、 あるユーザ に対してすでに実行許可がある場合のみ) (X)、 実行時にユーザ ID もしくはグループ ID を設定す る (s)、 削除制限 (restricted deletion) フラグもしくはスティッキービット (t)。 これらの文 字を一つ以上指定する代わりに、 文字 ugo のいずれか一つだけを指定することもできます: ファイ ルを所有するユーザに付与されたアクセス許可 (u)、 ファイルのグループの所有者以外のメンバー に付与されたアクセス許可 (g)、 前記のどちらでもないユーザに付与されたアクセス許可 (o)。 数値モードでは 1 桁から 4 桁の 8 進数 (0-7) で指定します。 その値は、ビットを値 4, 2, 1 に 対応させたものを加算することで得られます。 省略された桁は先頭にある 0 とみなされます。 1 桁目では、set-user-ID (4)、set-group-ID (2)、削除制限/スティッキー (1) といった属性を指定 します。 2 桁目では、ファイルを所有するユーザに対するアクセス許可を指定します: 読み出し許 可 (4)、書き込み許可 (2)、実行許可 (1)。 3 桁目ではファイルのグループの所有者以外のメン バーに対するアクセス許可を 指定します: 値は 2 桁目と同じ。 4 桁目ではファイルのグループに 属さないユーザに対するアクセス許可を 指定します: 値は 2 桁目と同じ。 chmod はシンボリックリンクのアクセス許可を変更することはありません。 chmod システムコール がシンボリックリンクのアクセス許可を変更できないからです。 シンボリックリンクのアクセス許 可が使われることは決してないため、 これは問題にはなりません。 しかし、chmod は、コマンドラ インで列挙されたシンボリックリンク それぞれについて、シンボリックリンクが指しているファイ ルのアクセス許可を 変更します。その一方で、chmod は再帰的にディレクトリを辿っている途中で 見つけたシンボリックリンクは無視します。
SETUID ビットと SETGID ビット
chmod は、ファイルのグループ ID がユーザの実効グループ ID とも ユーザの追加グループ ID と も一致せず、 ユーザが適切な特権を持っていない場合は、 通常のファイルの set-group-ID ビット をクリアします。 他にも追加の制限があり、MODE や RFILE の set-user-ID ビットや set-group-ID ビットが無視される場合があります。どのような動作になるかは 裏で呼び出される chmod システムコールのポリシーや機能に依存します。 疑わしい点がある場合は、動作しているシ ステムの動作を確認して下さい。 chmod は、明示的に指定した場合を除き、ディレクトリの set-user-ID ビットと set-group-ID ビットを保持します。 これらのビットの設定や解除を行うには、 記号モードで u+s and g-s のよ うに指定します。 また、数値モードで対応するビットを指定することでビットの設定ができます (解除はできません)。
削除制限フラグとスティッキービット
削除制限フラグ (restricted deletion flag) とスティッキービット (sticky bit) は 1 ビットの 情報で、ファイル種別によりその意味が変わります。 ディレクトリの場合、このビットがセットさ れていると、 非特権ユーザは、自分が所有者のファイルやディレクトリ以外は そのディレクトリに あるファイルの削除や名前変更ができなくなります。 この機能はディレクトリの 削除制限フラグ と呼ばれ、 /tmp などの誰でも書き込みできるディレクトリでは一般的に使われています。 いくつ かの古いシステムでは、通常のファイルでこのビットが設定されている場合、 そのプログラムのテ キストイメージがスワップデバイス上に保持され、 実行時により早くファイルがロードできるよう になります。 この機能は スティッキービット と呼ばれます。
オプション
各 FILE のモードを MODE に変更します。 --reference を指定した場合は、各 FILE のモードを RFILE のものに変更する。 -c, --changes verbose モードと同様だが、変更が行われた場合にのみ出力する -f, --silent, --quiet ほとんどのエラーメッセージの出力を抑制する -v, --verbose 処理した各ファイルについて診断メッセージを出力する --no-preserve-root '/' を特別扱いしない (デフォルト) --preserve-root '/' に対する再帰的な操作を失敗させる --reference=RFILE MODE の値ではなく RFILE のモードを使用する -R, --recursive ファイルとディレクトリを再帰的に変更する --help この使い方を表示して終了する --version バージョン情報を表示して終了する 各 MODE は '[ugoa]*([-+=]([rwxXst]*|[ugo]))+|[-+=][0-7]+' の形式です。 GNU coreutils のオンラインヘルプ: <http://www.gnu.org/software/coreutils/> chmod の翻訳に 関するバグは <http://translationproject.org/team/ja.html> に連絡してください。 完全な文書 は <http://www.gnu.org/software/coreutils/chmod> にあります。 ローカルでは info '(coreutils) chmod invocation' で参照できます。
作者
作者 David MacKenzie および Jim Meyering。
著作権
Copyright © 2016 Free Software Foundation, Inc. ライセンス GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
関連項目
chmod(2) chmod の完全なマニュアルは Texinfo マニュアルとして整備されている。もし、 info および chmod のプログラムが正しくインストールされているならば、コマンド info chmod を使用すると完全なマニュアルを読むことができるはずだ。