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 | ディレクトリにあるファイルやディレクトリを変更したり新規作成できる |
x | cdコマンドでそこに移動できる |
これに照らし合わせると、cdコマンドで移動できないところがあるとか、見られないファイルがあるという状況も理解できると思います。
どうしても見たい!という場合はどうするか、とりあえず rootユーザーだと全てのパーミッションを無視することができるので、管理者ユーザーで sudoコマンドを使いましょう。
subro@Ubuntu2204:/$ sudo less ファイル名
ここまで理解できれば、設定ファイルを見るとか、何かのソースファイルを見るといった簡単な作業が黒い画面でできるようになります。
Linuxのどのディストリビューションでも Windowsのエクスプローラーのようなファイル操作用のツールはありますが、慣れてくるとこの黒い画面でやるのも苦痛ではなくなってきますよ。
本気で学ぶ Linux実践入門 サーバ運用のための業務レベル管理術 [ 大竹龍史 ] 価格:3,278円 |
ITエンジニア1年生のための まんがでわかるLinux コマンド&シェルスクリプト基礎編 [ Piro ] 価格:2,420円 |