こんにちは。
前回と前々回でAWSでブログシステムの環境を構築し、色々やりました。
ハンズオン中に詰まったり分からないところはAIに聞いて「このコマンド打って!」と言われたのをホイホイ打っておりました。
が、仕組みもよくわからないまま使っていたので、自戒の意も込めて調べた内容を書き記します。
lsコマンド
HTTPS接続できていたかを調べるためssl.confファイルを覗いたときに使ったコマンド。
ファイルやディレクトリの情報を示すコマンドで、今回は-lオプションをつけて詳細に表示したもの。
今回は一番下の行のssl.confファイルについて見てみます。
パーミッション -rw-r--r--.
https://www.ibm.com/docs/ja/aix/7.2.0?topic=l-ls-command
https://qiita.com/shin4488/items/8ecb8d06be7a47a48bec
上記サイトを参考にしました。
左から①-/②rw-/③r--/④r--/⑤.と区切ります。
①形式
-・・・ファイル形式
d・・・ディレクトリ
l・・・シンボリックリンク
②ファイルを作成したユーザ(オーナー)が持つ権限
左からread(読み込み),write(書き込み),execute(実行)、-(権限なし)を示す。
③グループ内のオーナー以外が持つ権限
④その他ユーザーの権限
なので今回のssl.confはファイル形式であり作成者kyotenは読み取り、書き込みができ、他のユーザは読み取りのみのようです。
パーミッションとシンボリックの対応を8進数表記で表すと644となる。
| 8進数値 | シンボリック |
|---|---|
| 0 | --- |
| 1 | --x |
| 2 | -w- |
| 3 | -wx |
| 4 | r-- |
| 5 | r-x |
| 6 | rw- |
| 7 | rwx |
⑤ファイルの拡張属性
.はSELinuxで使われるコンテキストが存在していることを表す。
余談
AWSハンズオン中に秘密鍵のパーミッションを変更するときchmod 400というコマンドを何回も打ち込んでいましたが、やっと意味が分かりました。
秘密鍵ファイルのパーミッションを
r-- オーナーは読み取り専用 → 4
--- グループ内ユーザ なし → 0
--- その他のユーザ なし → 0
としていたのですね!!!感動!!!
リンク数(-rw-r--r--.の右にある1)
このファイルを参照しているハードリンクの数
ハードリンクって??
・ファイルにあだ名をつけること
・ファイルAに対してハードリンクとしてBというあだ名をつけるとBを開いてと命令してもAが開く。
・Aだけ/Bだけの名前が削除されてもファイルは残るが、どちらも削除されるとファイルは消える。
↔シンボリックリンク
・Windowsにおけるショートカットのようなもの。
・シンボリックリンクを削除しても、元のファイルは残る。
・元ファイルが削除されれば機能しなくなる。
・ln -s <ターゲットファイルまたはディレクトリ> <リンク名> でリンクを作成できる
所有者とグループ root root
最初のrootはファイルを管理しているユーザ名。
2つ目のrootは属しているグループ名。
このファイルは管理者権限で作成され、管理者のグループに属している。
サイズ名と更新日時 9558 Nov 27〜
9558 バイト単位でのサイズを表す。
Nov 27 最終更新日時。
/etc/httpd/conf.d/ssl.conf
ファイルのディレクトリ。
システム全体の設定ファイル/etcの中のApacheサーバの設定httpdの中の追加設定ファイルconf.dの中のssl.confファイルという意味。
おわりに
未経験で勉強中の方は最近特にAIに頼ることが多いかと思います。
ただ愚直にAIの指示に従って手を動かし全体をざっと把握するのもアリですが、このようにコマンドの意味や出てきた情報の意味を一つ一つ調べていくことも過去の行為の意味を知ることができ、大変味わい深かったです。
今後も楽しくモリモリと学習して成長していきたいです。
