コマンド練習問題(その2)

初心者からさらに1歩前に進むために覚えておくべきコマンドを問題にしてみました。まずはコマンドを覚えて、そこから自分でコマンドを使いこなせるように、何回も実行して使い方を覚えてみてください。
 

1. /home配下の各ディレクトリ毎の使用容量を確認する
正解を確認
コマンド: du -sm /home/*
 
ファイルシステムの使用率が逼迫してきた時などに、どのディレクトリが容量をくっているかを確認するために使用したりする。オプション-mでMB表示にすることが多い。ちなみにls -lでディレクトリ表示した時のサイズはディレクトリエントリのサイズ。ディレクトリの中身のデータの総量ではないので注意。
http://g-network.boo.jp/wiki/2018/04/post-1112/ 
 
2. リストファイルtest.listの中身の行数を確認する
正解を確認
コマンド: cat test.list | wc -l
 
作業前後で数が変わってないよね確認、もしくは数が想定通り増減していることを確認したりする。たまに使う。
 
3. 物理ボリュームの情報を表示する
正解を確認
コマンド:
pvs
pvdisplay
 
物理ボリューム(PV)の情報を表示する。pvsはPVひとつを1行で表示する簡易的な情報表示。pvdisplayはPVの詳細情報を表示してくれる。
 
4. ボリュームグループの情報を表示する
正解を確認
コマンド:
vgs
vgdisplay
 
ボリュームグループ(VG)の情報を表示する。vgsはVGひとつを1行で表示する簡易的な情報表示。vgdisplayはVGの詳細情報を表示してくれる。
 
5. 論理ボリュームの情報を表示する
正解を確認
コマンド:
lvs
lvdisplay
 
論理ボリューム(LV)の情報を表示する。lvsはLVひとつを1行で表示する簡易的な情報表示。vgdisplayはLVの詳細情報を表示してくれる。PV、VG、LVとディスクを論理的に区切って管理する機能をLVMという。インフラエンジニアなら必須知識。
 
6. メモリの容量や使用量を表示する
正解を確認
コマンド:
free
top
 
なんか処理が重いなあという時などにメモリの使用率を見る時に使う。メモリの使用率監視のシェルを作る際などにも利用したりする。freeコマンドではSWAPの使用量も見ることができる。topコマンドはリアルタイムで使用状況を確認するコマンド。
 
7. ネットワーク通信のパケットキャプチャを実行する
正解を確認
コマンド: tcpdump
 
通信が届いているかを詳細確認する時に使用する。引数なしで実行するとサーバに届く全てのパケット情報が対象になり大量に出力されるので注意。実際は細かく条件を指定して必要なパケット情報のみに焦点を絞って実行することが多い。これを実行する必要に迫られているということはまあまあめんどくさい状況。
 
8. メモリやCPUの使用状況を3秒間隔で表示する
正解を確認
コマンド: vmstat 3
 
メモリやCPUのリソース負荷をリアルタイムで見たい時によく使う。上記のコマンドで3秒ごとに1行ずつ出力してくれるのでtopコマンドとくらべてエビデンスとして後でも見やすい。
 
9. 現在の作業ユーザのcron設定を確認する
正解を確認
コマンド: crontab -l
 
cron設定を表示する。/var/spool/cron配下のユーザ名のファイルをcatするのと同じ結果となる。
 
10. 現在の作業ユーザのsudo設定を確認する
正解を確認
コマンド: sudo -l
 
sudoに登録したはずのコマンドがうまくいかない時などに登録コマンドをさくっと確認できる。が使う機会は少ないかも。
 
11. 「/logディレクトリ配下の全てのファイルにls -lを実行する」をwhile文を使って1行で実行する
正解を確認
コマンド: find /log -type f | while read a;do ls -l $a;done
 
findの-lsオプションを使いたくない時は、while文を使ってループ処理でlsコマンドを実行する。サーバ上でさくっとコマンドラインで実行する時はこのように1行(ワンライナー)で書く時もある。; の位置に注意すること。
 
12. gz形式で圧縮したログファイル(./test.log.gz)を解凍せずに中身を確認する
正解を確認
コマンド:
 zcat ./test.log.gz
 zless ./test.log.gz
 
頭にzをつけた上記のコマンドで中身を確認できる。解凍しなくても確認できるのでちょっとした時に役にたつ。
 
13. userAの権限でwhoamiコマンドを実行する
正解を確認
コマンド:
 su – userA -c whoami
 sudo -u userA whoami
 
コマンド実行時のみ他のユーザの権限で実行できる。例えば上記のコマンドをrootユーザで実行しても結果はどちらもuserAと表示される。コマンドが終了すればもちろん元のユーザの状態になる。ただしsuコマンドで実行時はuserAのパスワードを求められる。またsudoコマンドで実行するためには、あらかじめ/etc/sudoersに設定をしておく必要がある。
 
14. プロセスIDが1001のプロセスを強制終了する
正解を確認
コマンド:kill 1001
 
killコマンドで動作中のプロセスを強制終了させることができる。ちなみにkillコマンドはプロセスを強制終了させるだけではなく、引数に色々なシグナルを指定することでプロセスを一時停止させたり、回復させたりできる。が基本的にはプロセスの強制終了で使うことがほとんど。
 
15. 5秒間隔でdfを打ち続ける(1行で実行すること)
正解を確認
コマンド:while true;do df; sleep 5;done
 
大量にアウトプットをはく処理を実行する際にファイルシステムの使用量がパンクしないかをリアルタイムで見たい時などに使ったりする。無限ループなので終了する時はCtrl+Cで抜ける。sleepを入れるのを忘れると、超高速で無限ループしてCPU使用率が跳ね上がるので要注意。
 
16. カレントディレクトリのファイルをサイズ順に並び替えて表示する
正解を確認
コマンド:ls -l | sort -k5
 
サイズの大きいファイルを削除してファイルシステムの空きを増やしたい時などに使うかも
スポンサーリンク
勉強wikiの下部広告
  • このエントリーをはてなブックマークに追加
スポンサーリンク
勉強wikiの下部広告

コメントをどうぞ

メールアドレスが公開されることはありません。

CAPTCHA