無料ホームページスペース無料メールアドレスをご提供します。    KANSAI WEBサービス会員規約   
広島の関西商事のサーチエンジン。お互いのアクセスアップのため、どんどん登録してください!!  kansai.homelinux.com
コンピュータ/通信総合サイト・広島の関西商事           管理人:大内 雅司  

Linuxのコマンドによるパーミッション操作「chmod」

■パーミッション
”/etc/shadow”ファイルを、「cat」コマンドを使って参照してみてください。

[user01@linux ~]$ cat /etc/shadow [enter]
cat: /etc/shadow: 許可がありません




「cat: /etc/shadow:許可がありません」というエラーに注目をして下さい。つまり、このファイルは一般ユーザーでは読み取りができないファイルになっています。このように、ファイルには「パーミッション」(許可属性)というものが存在します。
では、ファイルやディレクトリのパーミッション情報を表示させてみます。「ls」コマンドを、”-l”と”-a”のオプションを付けて実行します。

[user01@linux ~]$ ls  -la [enter]
合計  36

drwsr-xr-x  2 user01  user           4096   6月 13 13:22  .
drwsr-xr-x  3 root    user           4096   6月 13 13:22  ..
-rw-r--r-   1 user01  user             24   6月 13 13:22  .bash_logout
-rw-r--r-   1 user01  user             191    6月 13 13:22  .bash_profile
-rw-r--r-   1 user01  user             124   6月 13 13:22  .bashrc
-rw-r--r-   1 user01  user            5619   6月 13 13:22   .canna
-rw-r--r-   1 user01  user            120   6月 13 13:22  .gtkrcp
パーミッション 所有ユーザ 所有グループ ファイルやディレクトリのサイズ・作成日時時刻・名前














▼パーミッションの見方
drwxrwxrwx
最初のdの意味

ファイルのタイプ
−:普通のファイル
d:ディレクトリ
l:シンボリック









所有者・所有グループ・その他
r:読み取り権限
w:書き込み権限
x:実行権限








では、このようにパーミッションの設定を行うと、どういった操作ができて、どういった操作ができなくなるのかを。以下の表にまとめます。
▼パーミッションと操作

権限 ファイル・ディレクトリ 説明
読み取り ファイル catなどでファイルの内容を参照できるかどうか。
ディレクトリ lsなどでディレクトリ内ファイル一覧を表示できるかどうか。
書き込み ファイル ファイルを編集できるかどうか。ただし、ファイルの書き込み
権限とファイル自体の削除とは無関係です。
ディレクトリ ディレクトリ内のファイルを作成/削除できるかどうか。
実行 ファイル コマンドとして実行できるかどうか。
ディレクトリ ディレクトリ内のファイルへアクセスできるかどうか。

パーミッションは、以下の要素と「chmod」コマンドを使用して変更することができます。
▼chmodコマンドで指定する要素

ユーザ定義 追加/削除/等 パーミッション
u ファイル所有者 パーミッションの追加 r 読み取り権限
g ファイル所有グループ パーミッションの削除 w 書き込み権限
o その他のユーザ 指定したパーミッションを
付加し、それ以外を削除
x 実行権限
a すべてのユーザ

では実際に「chmod」コマンドを使って、ホームディレクトリ下にある.gtkrcファイルのパーミッションを変更します。「所有者」「所有グループ」「その他のユーザ」の全てに対して、「読み取り権限」を取り除く設定を行います。

[user01@linux ~]$ chmod a -r .gtkrc [enter]



本当にパーミッションが変更されたかどうか、”ls -la”を実行して確認します。

[user01@linux ~]$ ls  -la [enter]
合計  36

drwsr-xr-x  2 user01  user           4096   6月 13 13:22  .
drwsr-xr-x  3 root    user           4096   6月 13 13:22  ..
-rw-r--r-   1 user01  user             24   6月 13 13:22  .bash_logout
-rw-r--r-   1 user01  user             191    6月 13 13:22  .bash_profile
-rw-r--r-   1 user01  user             124   6月 13 13:22  .bashrc
-rw-r--r-   1 user01  user            5619   6月 13 13:22   .canna
--w-----   1 user01  user            120   6月 13 13:22  .gtkrcp













すべてのユーザーに対して、「.gtkrc」ファイルの「読み取り」権限が削除されているこが確認できます。
実際に、このファイルを閲覧できなくなっているかどうか、「cat」コマンドを使って、このファイルを閲覧してみます。

[user01@linux ~]$ cat .gtkrc [enter]
cat: .gtkrc: 許可がありません




このファイルのパーミッションをデフォルトの状態に戻します。

[user01@linux ~]$ chmod a+r .gtkrc [enter]



また、”=”を用いて、.bashrcファイルの所有者/所有グループだけの権限を”rw-”に変更できます。
以下を実行すると、.bashrcファイルのパーミッションが”rw-rw-r--”に変更されます。

[user01@linux ~]$ chmod ug=rw .bashrc [enter]



また、パーミッションの変更を指定するとき、3桁の8進数を用いて表現することもできます。
▼パーミッションを指定する数値

所有者 所有グループ その他のユーザ
400:読み取り権限 40:読み取り権限 4:読み取り権限
200:書き込み権限 20:書き込み権限 2:書き込み権限
100:実行権限 10:実行権限 1:実行権限








8進数の数字を用いて、.bashrcファイルのパーミッションを元に戻します。
元のパーミッションは”rw-r--r--”なので、8進数表記では「644」となります。

[user01@linux ~]$ cgnid 644 .bashrc [enter]



これで、元のパーミッション設定に戻りました。”ls -la”で確認してみて下さい。

400        r(所有者)
200        w(所有者)
 40        r(所有グループ)
  4        r(その他のグループ)
-----------------------------------
644        -rw-r--r--









[戻  る]

無料でホームページスペースをご提供しています。

 copy right kansai-syoji,.co all right reserved Web-Master masashi ouchi http://kansai.homelinux.com/~Linux