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鍵の権限確認に役立ちます。
主な使い方
- 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は所有者以外の誰でもファイルを書き換え・実行できる設定のため、通常は避けるべきです。このツールでは、その他のユーザーに書き込み権限がある場合に注意を表示します。
関連ツール
- 数値進数変換2進数・8進数・10進数・16進数を相互に変換します。1つ入力するだけで他の基数の値を同時に表示し、ビット演算やカラーコード、メモリアドレスの確認に便利。ブラウザ内で完結し、データは送信されません。
- カラーコード変換HEX・RGB・HSLのカラーコードを相互に変換し、色のプレビューも表示します。CSSやデザインツールで使う色の値をすばやく書き換えられます。ブラウザ内で完結し、インストール不要ですぐに使えます。
- タイムゾーン変換日本時間(JST)・UTC・ニューヨーク・ロンドンなど世界各地のタイムゾーン間で日時を変換します。海外とのミーティング調整やサーバーログの時刻確認に便利。サマータイムも考慮し、ブラウザ内で完結します。
- Unixタイムスタンプ変換Unixタイムスタンプ(エポック秒・ミリ秒)と日時を相互に変換します。ISO 8601形式やローカル時刻・UTCでの表示に対応し、ログやAPIレスポンスの時刻確認に便利。ブラウザ内で完結し、データは送信されません。
- CSV ↔ JSON変換CSVをJSONに、またはJSONをCSVに相互変換します。1行目をヘッダーとして扱い、ダブルクォートで囲まれた値にも対応。データ分析やAPIデータの加工に便利です。ブラウザ内で完結し、データは送信されません。
- テキストケース変換テキストをcamelCase・snake_case・PascalCase・kebab-caseなど9種類のケースに一括変換します。変数名や関数名、定数名、ファイル名の命名規則をそろえるのに便利。ブラウザ内で完結し、データは送信されません。