てぶら

chmod 計算機

所有者・グループ・その他それぞれの読み取り・書き込み・実行をチェックボックスで選ぶと、8進数(755・0644・4755)と記号表記(rwxr-xr-x)が即座に連動します。どちらの表記から入力しても他方に反映され、「drwxr-xr-x」のような ls -l の出力もそのまま貼り付けられます。setuid・setgid・スティッキービットのs/S/t/Tにも対応し、「chmod 755 ファイル名」「chmod u=rwx,g=rx,o=rx ファイル名」の形でコマンドをコピーできます。

chmod 計算機について

Unix系OSのファイルには、所有者・グループ・その他の3者それぞれについて、読み取り(r=4)・書き込み(w=2)・実行(x=1)の権限が設定されています。chmodの「755」は各桁がこの合計値で、所有者が7(rwx)、グループとその他が5(r-x)を意味します。ls -l で表示される「-rwxr-xr-x」は同じ内容を記号で表したもので、先頭の1文字はファイル種別(- は通常ファイル、d はディレクトリ)です。

4桁目の特殊ビットは、setuid(4000)・setgid(2000)・スティッキービット(1000)を表し、記号表記では実行位置が s / t(実行権限あり)または S / T(実行権限なし)に変わります。このツールはこれらを含めて8進数と記号表記を相互に変換し、その他のユーザーに書き込み権限がある危険な設定には注意を表示します。サーバーのデプロイ設定やSSH鍵の権限確認に役立ちます。

詳しい解説: chmod 755と644の違いとは?パーミッションの数字の意味と使い分け →

主な使い方

  • 1シェルスクリプトやデプロイ用ファイルに設定する権限(755・644など)を確認する
  • 2ls -l で表示された「drwxr-sr-x」などの記号表記を8進数に変換する
  • 3SSHの秘密鍵や設定ファイルに必要な600・400などの権限を調べる
  • 4setuid・setgid・スティッキービットを含む4桁のパーミッションの意味を確認する
  • 5記号モード(u=rwx,g=rx,o=rx)でのchmodコマンドを作成する

よくある質問

Q. S(大文字)と s(小文字)の違いは何ですか?

A. どちらもsetuid/setgidが設定されていることを示します。小文字の s は同じ位置の実行権限もある状態、大文字の S は実行権限がない状態です。スティッキービットの t / T も同様です。

Q. どんな形式で入力できますか?

A. 8進数は「755」のような3桁と、特殊ビットを含む「4755」「0644」のような4桁に対応しています。記号表記は「rwxr-xr-x」の9文字と、ファイル種別付きの「-rwxr-xr-x」「drwxr-xr-x」の10文字に対応し、末尾のACL・拡張属性の記号(+ . @)は無視します。入力が正しくない場合は、直前の正しい設定を保ったままエラーを表示します。

Q. ディレクトリに chmod 755 を実行するとsetgidは解除されますか?

A. GNU coreutils の chmod では、ディレクトリのsetuid・setgidビットは3桁の数値指定では保持され、解除されません。解除したい場合は「g-s」のような記号モードを使うか、「00755」のように先頭に0を補った5桁で指定します。挙動はOSによって異なる場合があります。

Q. 記号モードのコマンドはLinuxとmacOSで同じ結果になりますか?

A. 通常ファイルでは、GNU coreutils(Linux)とBSD・macOSのどちらでも表示どおりの権限になるよう、スティッキービットは「o=rwxt」ではなく末尾の「+t」で指定しています(BSD・macOSの chmod は o だけを対象にした t を無視するため)。ただし BSD・macOS では、既存のスティッキービットは「o=」では外れません。また GNU coreutils は、ディレクトリの setuid・setgid を s を書かない「u=」「g=」では保持します。外したい場合は「-t」「g-s」のように明示してください。

Q. 777を設定しても大丈夫ですか?

A. 777は所有者以外の誰でもファイルを書き換え・実行できる設定のため、通常は避けるべきです。このツールでは、その他のユーザーに書き込み権限がある場合に注意を表示します。

変換ツールの一覧を見る →