UNIX系のパーミッション設定
macやLinuxでパーミッションの設定方法をなんとなくしかわかっていなかったのでまとめました.
パーミッションの確認方法
$ ls -l
lsコマンドのオプションでパーミッションがどんな状態になっているか確認できます.
実際にコマンドを実行してみると下のような感じになります.
drwx------@ 63 user staff 2016 3 26 13:19 Dropbox drwxr-xr-x 14 user staff 448 5 20 13:13 Git drwx------ 69 user staff 2208 5 8 22:25 Library
これによりファイルやフォルダに関してのパーミッションが分かります.
パーミッションの見方は次のようになります.
そのため, 図の例ですとGitというディレクトリはユーザのアクセス権としては読み込み可能, 書き込み可能, 実行可能の権限を持ち, グループからのアクセス権としては読み込み可能, 実行可能を持ち, その他からはアクセス権として読み込み可能と実行可能といった状態になっていることがわかります.
パーミッションの変更
パーミッションの変更はchmodコマンドを使って変更を行います.
コマンド名はchange modeの略です.
変更の仕方は2通りあります.
種別等をしていする方法
次のように行います
# ファイル作成 $ touch sample # パーミッションの確認 $ ls -l sample -rw-r--r-- 1 user staff 0 5 21 20:28 sample # パーミッションの変更 $ chmod u+x,g+wx,o=u sample $ ls -l sample -rwxrwxrwx 1 user staff 0 5 21 20:28 sample
chmod コマンドは chmod モード ファイル名とすることで実行できます.
モードは複数 , で区切って指定できます.
数字で指定する方法
こちらのほうが使っているかたが多いと思いますが次のようになります.
# パーミッションの確認 $ ls -l sample -rwxrwxrwx 1 user staff 0 5 21 20:28 sample # パーミッションの変更 $ chmod 755 sample $ ls -l sample -rwxr-xr-x 1 user staff 0 5 21 20:28 sample
数字の3桁はそれぞれユーザ, グループ, その他の順で表されます.
・読み込みを4
・書き込みを2
・実行を1
という数字で表し, それぞれ与えたい権限の数字を足したものをモードとして指定してあげます.
なので, 755ならば7ですべての権限を5で読み込みと実行の権限を与えることになります.
先輩から効いたのですが, 数字で指定するやり方は割りと古いそうで最近では種別等を指定することが多いみたいです. (数字のほうをよくつかっていたのでびっくり.)
もうちょっとブログを書く頻度を上げたい.....