お金をかけずにサーバーの勉強をしよう

Linuxのディレクトリとファイルのパーミッション

2022年7月20日

メニューへ戻る

Linuxの黒い画面で泳ぎ回る で cdコマンドを使ってアッチコッチのディレクトリに移動する方法を書きましたが、一部のディレクトリやファイルで参照できないものがあったかと思います。

全てではないですが、これはディレクトリとファイルに設定されたパーミッションによるものです。

これからその説明をしますが、パーミッションはユーザーとユーザーが所属しているグループに紐づくものなので、まずはそこから。

自分のユーザーの情報を確認してみましょう。
idコマンド(print real and effective user and group IDs)がユーザーの情報を、groupsコマンド(print the groups a user is in)が所属しているグループを表示するコマンドです。

subro@Ubuntu2204:~$ id
uid=1000(subro) gid=1000(subro) groups=1000(subro),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),120(lpadmin),999(sambashare)

subro@Ubuntu2204:~$ groups
subro adm cdrom sudo dip plugdev lpadmin sambashare

idコマンドの結果はこんな内容になっています。

uidユーザー番号()は番号紐付けられたユーザー名
gid主として所属するグループ番号()は番号紐付けられたグループ名
groups所属グループ番号()は番号紐付けられたグループ名

OS内部ではユーザーとグループは番号で管理されているんですが、ユーザーの目には紐付けられた名称が出るようになっています。
普段この番号を意識することはないと思います。

この例では、subroユーザーは、subroグループに所属していて、他にもいくつかのグループに所属していることを示しています。

ディレクトリとファイルにはオーナー(所有者)と所属グループがあります。
以下の例では、ピンクの箇所がオーナーで、水色の箇所がグループです。

subro@Ubuntu2204:/$ ls -l
total 524364
lrwxrwxrwx   1 root root         7  4月 19 19:02 bin -> usr/bin
drwxr-xr-x   3 root root      4096  7月 14 09:20 boot
drwxr-xr-x  19 root root      4180  7月 19 11:09 dev
drwxr-xr-x 136 root root     12288  7月 16 18:20 etc
drwxr-xr-x   3 root root      4096  6月 27 11:23 home

そして次のピンク色の箇所がパーミッションです。

subro@Ubuntu2204:/$ ls -l
total 524364
lrwxrwxrwx   1 root root         7  4月 19 19:02 bin -> usr/bin
drwxr-xr-x   3 root root      4096  7月 14 09:20 boot
drwxr-xr-x  19 root root      4180  7月 19 11:09 dev
drwxr-xr-x 136 root root     12288  7月 16 18:20 etc
drwxr-xr-x   3 root root      4096  6月 27 11:23 home

最初の1文字以外の箇所の1文字1文字がパーミッションを表していて、こんな感じになっています。
パーミッションの説明図

これ、ファイルの場合は「そうかそうか」ってすぐに理解できるんですが、ディレクトリだと?となります。
以下ディレクトリの場合のパーミッションの意味です。

rディレクトリにあるファイルやディレクトリの一覧を見られる
wディレクトリにあるファイルやディレクトリを変更したり新規作成できる
xcdコマンドでそこに移動できる

これに照らし合わせると、cdコマンドで移動できないところがあるとか、見られないファイルがあるという状況も理解できると思います。

どうしても見たい!という場合はどうするか、とりあえず rootユーザーだと全てのパーミッションを無視することができるので、管理者ユーザーで sudoコマンドを使いましょう。

subro@Ubuntu2204:/$ sudo less ファイル名


ここまで理解できれば、設定ファイルを見るとか、何かのソースファイルを見るといった簡単な作業が黒い画面でできるようになります。

Linuxのどのディストリビューションでも Windowsのエクスプローラーのようなファイル操作用のツールはありますが、慣れてくるとこの黒い画面でやるのも苦痛ではなくなってきますよ。


本気で学ぶ Linux実践入門 サーバ運用のための業務レベル管理術 [ 大竹龍史 ]

価格:3,278円
(2022/7/20 10:32時点)
感想(0件)

ITエンジニア1年生のための まんがでわかるLinux コマンド&シェルスクリプト基礎編 [ Piro ]

価格:2,420円
(2022/7/20 10:33時点)
感想(0件)