環境
MacBook Air (M1,2020)
macOS Monterey
⚠️こちらは、Linuxに入門したばかりの初心者が投稿しております⚠️
先日SSH接続をした際に、秘密鍵のパーミッションを600に変更しました。
こんな感じ。
% chmod 600 ファイル名
はて・・・これは何の数字なのだろう?と思ったので
今回は、パーミッションについて簡単にまとめてみました!
アクセス権について
ファイルやディレクトリにはアクセス権が設定されており、以下の記号で表記します。
・読み取り権 = r (Read)
・書き込み権 = w (Write)
・実行権 = x (eXecute)
#「読み取り権」「書き込み権」「実行権」がある場合は、下記の表記になります。
rwx
また、アクセス権は数値で表すことができます。
・読み取り権 (r) = 4
・書き込み権 (w) = 2
・実行権 (x) = 1
#「読み取り権」「書き込み権」「実行権」がある場合は、7
r w x
4 + 2 + 1 = 7
#「読み取り権」「書き込み権」の場合は、6
r w -
4 + 2 + 0 = 6
#「読み取り権」のみ場合は、4
r - -
4 + 0 + 0 = 4
アクセス権の範囲
上記の3つのアクセス権は、以下のそれぞれに対して設定されます。
・所有者
・所有グループのユーザー
・その他のユーザー
つまり、パーミッションは「誰が何の権利を持っているか」を示しています。
r w x r w x r w x
所有者の権利 所有グループの権利 その他ユーザーの権利
パーミッションの例
#すべてのユーザーが「読み」「書き」「実行」可能
rwxrwxrwx
7 7 7
#すべてのユーザーが「読み」「書き」可能
rw-rw-rw-
6 6 6
#すべてのユーザーが「読み」可能、所有者のみ「書き」可能
rw-r--r--
6 4 4
#所有者のみ「読み」「書き」可能
rw-------
6 0 0
※rootユーザーは、設定されているパーミッションにかかわらず
「読み」「書き」「実行」が可能です。
パーミッション変更のコマンド
パーミッションを変更するには、chmod(CHange MODe)コマンドを使います。
chmodコマンドを実行できるのは、変更対象のファイルの所有者とrootユーザーのみです。
# test.txtファイルのパーミッションを600に設定
% chmod 600 test.txt
# パーミッションの確認
% ls -l test.txt
#結果
-rw------- 1 所有者 所有グループ ファイルサイズ 最新更新日時 test.txt
まとめ
600というのは、所有者のみ「読み」「書き」可能という意味でしたね。「Permission denied」が出ても落ち着いて・・・!