カテゴリ: Linux 更新日: 2026/02/13

Linuxパーミッション完全攻略!ls -lで見れるファイル権限と所有権の仕組み

Linuxのファイル権限を確認する方法(ls -lの見方)
Linuxのファイル権限を確認する方法(ls -lの見方)

先生と生徒の会話形式で理解しよう

生徒

「Linuxを使っていると、ファイルを編集しようとした時に『許可がありません』と怒られてしまいました。これってどういうことですか?」

先生

「それは『パーミッション』が原因ですね。Linuxには、誰がそのファイルを読んでいいか、書き換えていいかという厳しいルールがあるんですよ。」

生徒

「難しそうですね…。どうすれば今の設定を確認できるんでしょうか?」

先生

「まずは ls -l というコマンドを使いましょう。これを使えば、ファイルにかけられた『鍵』の状態が丸わかりになります。一緒に読み解き方を覚えましょう!」

1. Linuxのパーミッション(権限)とは?

1. Linuxのパーミッション(権限)とは?
1. Linuxのパーミッション(権限)とは?

Linux(リナックス)というシステムは、世界中のサーバーなどで使われている非常に安全なOSです。その安全性を支えている仕組みの一つが「パーミッション(権限)」です。これは、簡単に言うと「このファイルは誰が触っていいですよ」というルールのことです。

例えば、あなたの家の住所録や日記が誰にでも勝手に見られたり、書き換えられたりしたら困りますよね?Linuxでも同じように、システムを守るために「管理者だけが触れるファイル」「自分だけが読めるファイル」「みんなが使えるプログラム」といった具合に細かく制限がかかっています。

パソコンを初めて触る方にとっては、少し窮屈に感じるかもしれませんが、この仕組みのおかげで、ウイルスが勝手に大事なファイルを消したり、他のユーザーが勝手に設定を変えたりすることを防いでいるのです。

2. ls -lコマンドで詳細情報を表示しよう

2. ls -lコマンドで詳細情報を表示しよう
2. ls -lコマンドで詳細情報を表示しよう

ファイルにどのような権限がついているかを確認するには、ターミナル(黒い画面)で「ls -l」というコマンドを入力します。単なる ls コマンドはファイル名を表示するだけですが、 -l という「オプション」をつけることで、詳細な情報をリスト形式で表示できます。

実際にコマンドを打ってみると、以下のような表示が出てきます。


ls -l
-rw-r--r-- 1 user group 1024 Jan 10 10:00 memo.txt

この中で特に注目してほしいのが、一番左側の -rw-r--r-- という10文字の記号です。これがそのファイルの状態や、誰が何をしていいかを示す「パーミッション」の正体です。初心者のうちは暗号のように見えるかもしれませんが、読み方が分かれば非常にシンプルです。

3. パーミッション文字列の読み解き方

3. パーミッション文字列の読み解き方
3. パーミッション文字列の読み解き方

先ほどの -rw-r--r-- という文字列を分解して考えてみましょう。この10文字は、大きく4つのパーツに分かれています。

まず、一番左の1文字目は「種類」を表します。ハイフン - なら普通のファイル、 d ならディレクトリ(フォルダ)を意味します。

その後の9文字は、「3文字ずつ」のセットで読みます。

  • 左の3文字: 所有者(自分)の権限
  • 真ん中の3文字: グループ(仲間)の権限
  • 右の3文字: その他(第三者)の権限

つまり、「自分にはどんな権利があるか?」「仲間にはどこまで許すか?」「全く知らない人にはどうするか?」という3段階でルールが決められているのです。

4. r・w・xの意味を知ろう

4. r・w・xの意味を知ろう
4. r・w・xの意味を知ろう

パーミッションに使われるアルファベットは主に3種類あります。これらがファイルの「鍵」の種類を表しています。プログラミング未経験の方でも、以下の3つの英単語の頭文字だと覚えれば簡単です。

  • r (read): 読み取り権限。中身を見ることができます。
  • w (write): 書き込み権限。中身を書き換えたり、消したりできます。
  • x (execute): 実行権限。プログラムとして動かすことができます。

もし、その権限がない場合はハイフン - で表示されます。例えば、 r-- となっていれば、「読むことはできるけど、書き換えることも動かすこともできない」という状態を指します。読み取り専用のファイルなどはこのようになっていることが多いです。

5. 所有権(オーナー)とグループの違い

5. 所有権(オーナー)とグループの違い
5. 所有権(オーナー)とグループの違い

ls -l の結果をもう一度見てみましょう。権限の文字列の右側には、名前が2つ並んでいるはずです。


ls -l sample.sh
-rwxr-xr-- 1 taro sales 500 Jan 10 11:00 sample.sh

ここで taro と書いてある部分が「所有者(ユーザー)」です。このファイルを作った人、あるいは現在の持ち主です。その隣の sales というのが「グループ」です。Linuxでは複数のユーザーを「営業部」「開発部」のようにグループにまとめることができ、そのグループ単位で権限を与えることができます。

上記の sample.sh の例で見ると、所有者の taro さんは rwx(何でもできる)、 sales グループの人は r-x(読むことと実行はできるが書き換え不可)、それ以外の人は r--(読むことしかできない)という設定になっていることがわかります。

6. 特殊な権限!管理者「root」の存在

6. 特殊な権限!管理者「root」の存在
6. 特殊な権限!管理者「root」の存在

Linuxには、あらゆる制限を無視して何でもできる最強のユーザーが存在します。それが「root(ルート)」です。Windowsでいうところの「管理者」にあたります。

通常、一般のユーザーがシステムの重要な設定ファイルをいじろうとすると、「許可がありません」と拒否されます。しかし、設定を変更する必要があるときは一時的にrootの権限を使って操作します。この時に使うのが sudo という魔法の言葉です。root権限でファイルを確認する例を見てみましょう。


ls -l /etc/shadow
-rw-r----- 1 root shadow 1234 Jan 10 12:00 /etc/shadow

このように、システムにとって非常に重要なファイル(パスワード情報など)は、所有者が root になっており、一般ユーザーが中身を盗み見ることができないように厳重に守られています。Linuxを学ぶ上で、この「一般ユーザー」と「rootユーザー」の使い分けはとても大切です。

7. ディレクトリの権限には要注意

7. ディレクトリの権限には要注意
7. ディレクトリの権限には要注意

実は、ディレクトリ(フォルダ)における rwx の意味は、ファイルの場合と少しだけ異なります。ここが初心者がつまずきやすいポイントです。

  • r(ディレクトリ): 中にあるファイルの一覧を表示できるか。
  • w(ディレクトリ): 中に新しいファイルを作ったり、削除したりできるか。
  • x(ディレクトリ): そのフォルダの中に「入る」ことができるか。

意外なのが x です。ファイルなら「実行」でしたが、ディレクトリの場合は「中に入る(アクセスする)」ための通行証のような役割を果たします。もしディレクトリに x 権限がついていないと、たとえ中のファイル名を知っていても、その場所に移動することすらできません。

8. 数値で表されるパーミッション

8. 数値で表されるパーミッション
8. 数値で表されるパーミッション

Linuxを勉強していると、 chmod 755 のように、権限を数字で表現することがよくあります。これは rwx を数字に置き換えて合計したものです。

記号 数値 意味
r 4 読み取り
w 2 書き込み
x 1 実行

例えば、 rwx なら 4+2+1=7 となります。 r-x なら 4+0+1=5 です。これを「自分・グループ・その他」の3人分並べて、「755」や「644」といった3桁の数字で表現します。エンジニア同士の会話では「このファイルの権限はロクヨンヨンにしておいて」といった風に使われます。少し専門的ですが、仕組みを知っておくとプロっぽくなりますね!

9. なぜ権限の確認が必要なのか

9. なぜ権限の確認が必要なのか
9. なぜ権限の確認が必要なのか

最後に、なぜ初心者のうちから ls -l で権限を確認する癖をつけるべきなのかをお話しします。プログラミングの学習を始めると、プログラムを書いたのに動かない、画像が表示されない、といったトラブルによく遭遇します。その原因の多くが、実は「コードの間違い」ではなく「権限不足」だったりするのです。

自分が作ったプログラムが実行できないとき、あるいはWEBサイトの画像が表示されないときは、まず落ち着いて ls -l を叩いてみましょう。所有者が自分になっているか? 実行権限 x はついているか? 読み取り権限 r が欠けていないか? これを確認するだけで、解決までの時間が大幅に短縮されます。

Linuxを使いこなす第一歩は、このパーミッションを正しく理解し、コントロールできるようになることです。ターミナルの向こう側に広がる安全な世界を守るために、この ls -l の見方をしっかりマスターしておきましょう。

10. 実際の操作例で復習

10. 実際の操作例で復習
10. 実際の操作例で復習

最後におさらいとして、新しくファイルを作成した直後の状態を確認してみましょう。通常、新しくファイルを作ると、システムの設定に基づいた標準的な権限が自動的に割り当てられます。


touch newfile.txt
ls -l newfile.txt
-rw-rw-r-- 1 student users 0 Jan 10 13:00 newfile.txt

この結果を見ると、このファイルは「所有者の student さんと users グループの人は読み書きができるけど、それ以外の人は読むことしかできない」という状態であることがわかりますね。このように、コマンド一つでファイルを取り巻く人間関係やルールが瞬時に把握できるようになります。最初は難しく感じるかもしれませんが、何度も見ているうちに自然と体が覚えていきますよ!

カテゴリの一覧へ
新着記事
New1
RDS(データベース)
AWS RDSのメンテナンスウィンドウの設定方法を解説!初心者でもできるクラウドデータベースの管理
New2
Direct Connect(専用線接続)
AWS Direct Connectのルーティング設計(BGP設定の基本)を初心者向けにやさしく解説
New3
S3(オブジェクトストレージ)
AWS S3のデータ保護(オブジェクトロック・WORM設定)を初心者向けにやさしく解説
New4
ファイル・ディレクトリ構造
Linuxのディレクトリ構造を徹底解説!/bin・/sbin・/usrの違いと役割を初心者向けに解明
人気記事
No.1
Java&Spring記事人気No1
S3(オブジェクトストレージ)
AWS S3の料金体系をわかりやすく解説
No.2
Java&Spring記事人気No2
シェルとターミナル基礎
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.3
Java&Spring記事人気No3
AWS 基本
AWSのサービスのステータス確認方法(AWS Health Dashboard)
No.4
Java&Spring記事人気No4
プロセス・ジョブ管理
LinuxのプロセスID(PID)とは?仕組みと管理方法を初心者向けに徹底解説
No.5
Java&Spring記事人気No5
ELB(ロードバランサー)
AWS ELBでターゲットグループを設定する方法を初心者向けに解説!
No.6
Java&Spring記事人気No6
ファイル・ディレクトリ構造
Linuxの/homeディレクトリとは?役割と構造を初心者向けに徹底解説!
No.7
Java&Spring記事人気No7
シェルとターミナル基礎
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.8
Java&Spring記事人気No8
RDS(データベース)
AWS RDSのセキュリティグループ設定方法を解説!初心者でも安心のクラウドデータベース対策