なみかわみさきの日記

2018年ころまでの日記。

未経験者にLinuxを教える(仮)その2

前回

d:id:namikawamisaki:20160825

本稿は付け焼刃的にコマンドをコピペするような記事じゃないです。

今回の予告はしたけど、予習はいらないですっていうた。難しい言葉が増えていくので。それよりかは前回の復習のほうがいいなと

今回のトピック

ツリー構造

Windowsマイコンピュータとかある。Linuxはツリー構造で一番上が/のルートである。そこからツリー構造になってる。(システムによってtreeはなかったりするんでそれはやってない)

(ITパスポートとか基本情報で、架空のディレクトリを移動する問題とかある)
実際に動いてみて、現在地をpwdでたしかめる。もどるのはcdのみ打てばいい($HOMEは言ってない)。

[namikawa@mkl999 ~]$ pwd
/home/namikawa
[namikawa@mkl999 ~]$ cd /
[namikawa@mkl999 /]$ pwd
/
[namikawa@mkl999 /]$ cd etc
[namikawa@mkl999 etc]$ pwd
/etc
[namikawa@mkl999 etc]$ cd
[namikawa@mkl999 ~]$ pwd
/home/namikawa


./はいまここの。../はひとつ上の。

[namikawa@mkl999 ~]$ pwd
/home/namikawa
[namikawa@mkl999 ~]$ cd ../
[namikawa@mkl999 home]$ pwd
/home
[namikawa@mkl999 home]$ ls
akkie ayumi goinkyo miyako namikawa
[namikawa@mkl999 home]$ cd ./namikawa
[namikawa@mkl999 ~]$ pwd
/home/namikawa

/から指定したら絶対的にみる。
たとえば/etcとetcは意味が違う。

[namikawa@mkl999 ~]$ pwd
/home/namikawa
[namikawa@mkl999 ~]$ ls
MP3  MW  book
[namikawa@mkl999 ~]$ ls etc
ls: etc にアクセスできません: そのようなファイルやディレクトリはありません
[namikawa@mkl999 ~]$ ls /etc
DIR_COLORS               hostname                  python
DIR_COLORS.256color      hosts                     rc.d
DIR_COLORS.lightbgcolor  hosts.allow               rc.local
GREP_COLORS              hosts.deny                rc0.d
:(略)

ファイル操作

ls

ls -al すると見える情報。

[namikawa@mkl999 ~]$ ls -al
合計 80
drwx------  6 namikawa namikawa   152  722 21:37 .
drwxr-xr-x. 5 root     root        49  29  2016 ..
-rw-------  1 namikawa namikawa 57637  827 13:31 .bash_history
-rw-r--r--  1 namikawa namikawa    18 1120  2015 .bash_logout
-rw-r--r--  1 namikawa namikawa   193 1120  2015 .bash_profile
-rw-r--r--  1 namikawa namikawa   263  210  2016 .bashrc
-rw-rw-r--  1 namikawa namikawa    69  722 21:37 .gitconfig
drwxrwxr-x  3 namikawa namikawa    27  610 21:11 MW
drwxrwxr-x  3 namikawa namikawa    15  722 21:37 book
-rw-r--r--  1 namikawa namikawa  1216  29  2016 hoge.txt
d rwxrwxr-x 3 namikawa namikawa 15 7月 22 21:37 book
d→ディレクト 権限 持ち主 グループ*1 サイズ 日付 名前

dがlとかsとかの話はしてない

rwxrwxrwxについてはまた今度いうけど左からユーザ(u)、グループ(g)、その他(o)に関しての権限について。ugoぜんぶでaとする。(覚えてくれていたら、chmod a+xとか通じるはず)

あー拡張子はいうてないけど、ドットファイルはいちおうここの世界で隠しファイルとか設定的なものだということにした。

stat , file とかも打った気がするけど別にすぐにみる必要はないと思う。

ls のiオプションでiノード情報がみられる。

[namikawa@mkl999 ~]$ ls -ail hoge.txt
202279655 -rw-r--r-- 1 namikawa namikawa 1216  29  2016 hoge.txt
ファイル操作コマンド

コマンド、オプション、ターゲットの順で。
作業ディレクトリを作る mkdir

ファイルのコピー、移動、「空のディレクトリを」rmdirできる、など。

あといちいち、コピーしましたとか表示されない。寡黙なシステム。

[namikawa@mkl999 ~]$ cd test/
[namikawa@mkl999 test]$ ls -al
合計 4
drwxrwxr-x 2 namikawa namikawa    6  828 21:50 .
drwx------ 7 namikawa namikawa 4096  828 21:50 ..
[namikawa@mkl999 test]$ mkdir test2
[namikawa@mkl999 test]$ ll
合計 4
drwxrwxr-x 3 namikawa namikawa   18  828 21:50 .
drwx------ 7 namikawa namikawa 4096  828 21:50 ..
drwxrwxr-x 2 namikawa namikawa    6  828 21:50 test2
[namikawa@mkl999 test]$ ls -al test2/
合計 0
drwxrwxr-x 2 namikawa namikawa  6  828 21:50 .
drwxrwxr-x 3 namikawa namikawa 18  828 21:50 ..
[namikawa@mkl999 test]$ cd test2/
[namikawa@mkl999 test2]$ cp ../../hoge.txt ./
[namikawa@mkl999 test2]$ ll
合計 4
drwxrwxr-x 2 namikawa namikawa   21  828 21:51 .
drwxrwxr-x 3 namikawa namikawa   18  828 21:50 ..
-rw-r--r-- 1 namikawa namikawa 1216  828 21:51 hoge.txt
[namikawa@mkl999 test2]$ cd ..
[namikawa@mkl999 test]$ rmdir test2
rmdir: `test2' を削除できません: ディレクトリは空ではありません
[namikawa@mkl999 test]$ rm ./test2/hoge.txt
[namikawa@mkl999 test]$ rmdir test2
[namikawa@mkl999 test]$ ls -al
合計 4
drwxrwxr-x 2 namikawa namikawa    6  8月 28 21:51 .
drwx------ 7 namikawa namikawa 4096  8月 28 21:50 ..

そういえばファイルを新規作成ってやっぱりtouchかなあ。だいたい結果をリダイレクトするのが多いよね。

[namikawa@mkl999 test]$ touch testfile
[namikawa@mkl999 test]$ ls -al
合計 4
drwxrwxr-x 2 namikawa namikawa   21  828 21:54 .
drwx------ 7 namikawa namikawa 4096  828 21:50 ..
-rw-rw-r-- 1 namikawa namikawa    0  828 21:54 testfile
[namikawa@mkl999 test]$ cp testfile testfile2
[namikawa@mkl999 test]$ ls -al
合計 4
drwxrwxr-x 2 namikawa namikawa   37  828 21:54 .
drwx------ 7 namikawa namikawa 4096  828 21:50 ..
-rw-rw-r-- 1 namikawa namikawa    0  828 21:54 testfile
-rw-rw-r-- 1 namikawa namikawa    0  828 21:54 testfile2
[namikawa@mkl999 test]$ mv testfile testfile3
[namikawa@mkl999 test]$ ls -al
合計 4
drwxrwxr-x 2 namikawa namikawa   38  828 21:54 .
drwx------ 7 namikawa namikawa 4096  828 21:50 ..
-rw-rw-r-- 1 namikawa namikawa    0  828 21:54 testfile2
-rw-rw-r-- 1 namikawa namikawa    0  828 21:54 testfile3

リダイレクトは、>と>>で違う動きをする。

[namikawa@mkl999 test]$ more testfile
1gyoume
2gyoume
3gyoume
[namikawa@mkl999 test]$ cat >> testfile
4gyoume
5gyoume
^C
[namikawa@mkl999 test]$ more testfile
1gyoume
2gyoume
3gyoume
4gyoume
5gyoume
[namikawa@mkl999 test]$ cat > testfile
6gyoume
7gyoume
^C
[namikawa@mkl999 test]$ more testfile
6gyoume
7gyoume

ここまででいちおうできること

ツリー構造のどこに自分がいるかわかる。
作業コマンドをコピペして貼るとき、なんとなく何が書いてるかわかる。(ここにあるなんとかっていうやつをコピーしてるとか)
ファイル操作の練習用のディレクトリを作ってその中でちょっと操作ができる。

反省

iノードとシンボリックリンク・ハードリンクのことがちゃんと言えなかった。

以下俺の復習

ファイルはどこからも参照されなくなったらどっかのタイミングで削除される。どっかていうのはプロセスが離れた時点。それまでならどうにかしたらいちおう復旧できるけど。うーんlsofはLPI試験でも出てるのか、、



ハードリンクはiノード同じ、シンボリックリンクはiノードを別に割り当てる。iノード枯渇っていう。iノード量って設定できるんだっけ?空ファイル永遠に作って落とすとか書けるよねえ。

cp -l でハードリンクとする話があった。ただ、ハードリンクだと実体いっしょやから(窓っぽく)コピーしたと思って編集しちゃって、、つうのあるよね



参考資料

たいらさんも書いてるこれを投入したいけど、入門者にはまだ難しいかなあ。
【改訂3版 Linuxエンジニア養成読本】は8月23日発売です - Mana Blog Next

改訂3版 Linuxエンジニア養成読本 (Software Design plus)

改訂3版 Linuxエンジニア養成読本 (Software Design plus)

  • 作者:
  • 出版社/メーカー: 技術評論社
  • 発売日: 2016/08/23
  • メディア: 大型本

以下前回と同じ。もうちょっと細かい説明がほしくていろいろ調べ始めてくるころだと思うけど、そのときはその記事の「書いた日」と「対象のLinux/UNIXが何か」を見ておこう。

Linux教科書 LPICレベル1 Version4.0対応

Linux教科書 LPICレベル1 Version4.0対応

  • 作者:中島 能和
  • 出版社/メーカー: 翔泳社
  • 発売日: 2015/06/16
  • メディア: 単行本(ソフトカバー)

Linuxコマンド集 INDEX:ITpro Linuxコマンド集 INDEX:ITpro

Linuxコマンド道場---目次 - Linuxコマンド道場:ITpro Linuxコマンド道場---目次 - Linuxコマンド道場:ITpro

Linux基本コマンドTips - @IT Linux基本コマンドTips - @IT

*1:持ち主と同じ名前