【Linux】権限(パーミッション)の確認と変更方法

上司

たけのこくん、takenoko.txtファイルの権限を755に変更してくれるかな?

たけのこ

権限は何となく分かりますが…。

755?何ですかそれ?

 

初めてだと何を言ってるのかさっぱり分かりませんよね。

本記事では上司の指示に応えられるように、権限の確認方法変更方法について説明します。

権限の確認方法:ls -lコマンド

ls -l

ls -lコマンドを実行すると、ファイルの詳細情報が表示されます。

実行すると、下のように表示されると思います。

-rwxr- -r- - 1  root root 0 Aug 1 2018 takenoko.txt 

drwxr- -r- - 1  root root 0 Aug 1 2018 たけのこブログ

表示された先頭の10文字のうち、2-10文字目まで(9文字)が権限になります。

上の例だと「rwxr- -r- -」の部分ですね。

権限の説明

権限がどこに表示されるのかは分かりましたね。

ただ、初めての人にとっては、

rwx-ってなに?

となると思います。

rwx-が何を表すかと言いますと

  • 読み取り権限:r(Read)
  • 書き込み権限:w(Write)
  • 実行権限:x(eXecute)
  • 権限なし:-

となります!

rwx-は分かった!

しかし、何で9文字もあるの?

権限は3文字ごとにセットになっており、

セットごとに「所有者」「所有グループ」「その他のユーザー」の権限を表しています。

なので、「rwxr- -r- -」のtakenoko.txtのファイルの権限を説明すると

  • 所有者は「rwx:全ての権限」がある
  • 所有グループとその他のユーザーは「rのみ:読み取り権限」だけある

と言うことが分かりますね。

なるほど、3つの権限を設定できるのね!

もしかして755はそれぞれの権限なの?

その通り!

権限は数値で表すことができます。

複数の権限をつけたい時には、足し算した値を設定します。

  • 読み取り権限:4
  • 書き込み権限:2
  • 実行権限:1

例えば、「読み取り権限」と「書き込み権限」をつけたい時には、

4 + 2 = 6 を設定します。

上司に言われた755の権限をつけると言うのは、

  • 所有者の権限 = 7:「全ての権限」
  • 所有グループとその他のユーザー = 5:「読み取りと実行権限」

をつけることになります。

じゃあ、残りの1文字目は?

1文字目は、ファイルorフォルダを表します。

 

上記の説明をまとめると下のようになります。

内容
1ファイル or フォルダ
2所有者:読み取り権限
3所有者:書き込み権限
4所有者:実行権限
5所有グループ:読み取り権限
6所有グループ:書き込み権限
7所有グループ:実行権限
8その他のユーザー:読み取り権限
9その他のユーザー:書き込み権限
10その他のユーザー:実行権限

権限の変更方法:chmodコマンド

権限について分かってきたと思います。

あとは権限の変更方法です!

権限の変更には、chmod(CHange MODe)コマンドを使用します。

chmod [-R] 権限 ファイルorフォルダ名

上司に頼まれたことを実行するには、下のコマンドを実行します。

chmod 755 takenoko.txt

 

オプションに-R(Recursive:再帰的)があります。

フォルダの中の権限も一括で変更したい時に、-Rオプションを使用します。

まとめ

以上で、Linuxでの権限の確認と変更方法ができるようになったはずです!

本記事をまとめます。

  • 「ls -l」 で権限を確認
  • 権限はrwx-で表される
  • 権限は9文字からなる
  • 3文字1セットで3つの権限がある
  • 「chmod 権限 ファイルorフォルダ名」で権限変更

 

▼今回参考にした本はこちらです▼

 

▼「Linux勉強中という方」はこちらもどうぞ▼

【Linux】初心者を脱出するためのコマンドを覚えよう