AZ Tools

Unix ファイルパーミッション (chmod)

ファイル

Unix がファイルパーミッションに使用する 3 つの形式間をラウンドトリップする:ビットチェックボックス、8 進数(setuid/setgid/sticky が設定されている場合は 4 桁)、および ls スタイルのシンボリック文字列。下部のセクションは、コピーしてすぐ実行できる chmod および find -perm コマンドと、人間が読める要約を出力するため、4755 が実際に何を付与するかが一目でわかる。一般的なモードはプリセット行から 1 クリックで適用できる。

プリセット
パーミッションビット
所有者
グループ
その他
特殊ビット
  • chmodchmod 755 <file>
  • find -permfind . -type f -perm 755
  • 意味
    • owner: read + write + execute
    • group: read + execute
    • other: read + execute

シンボリックは setuid/setgid に s/S、sticky に t/T を使用 — 大文字は特殊ビットが設定されているが対応する x が設定されていないことを意味する。

使い方

  1. プリセットを選ぶか、チュートリアルからコピーした 8 進数モードを貼り付けるか、シンボリック形式をタイプする。
  2. 必要に応じて特殊ビット(setuid、setgid、sticky)をチェック。
  3. chmod コマンドをシェルにコピー。

よくある質問

なぜディレクトリには 755 が「正しい」?
ディレクトリは走査可能になるために実行ビットが必要 — ディレクトリに x がないと、その名前をリストできるが cd できない。755 は所有者にフルコントロールを与え、他のすべての人に走査 + 読み取りを許可する。
rws の s は実際に何をする?
実行ファイルでは、setuid(ユーザー実行スロットの s ビット)は呼び出し元ではなく所有者の有効 UID でファイルを実行させる。ディレクトリでは setgid は新しいファイルにディレクトリのグループを継承させる。ディレクトリの sticky(/tmp など)は、ファイルの所有者のみが削除できることを意味する。

関連ツール