運用保守で毎日のように叩くLinuxコマンドを、用途別にまとめました。新人に渡す用のメモがベースです。
状況把握(まずこれ)
top / htop … CPU・メモリ・プロセスをリアルタイムで
df -h … ディスク使用率(満杯は障害直結、最頻出)
free -h … メモリ・スワップ
uptime … ロードアベレージと稼働時間
障害の第一報が来たら、まず df -h と top を見る癖がついています。
プロセスとサービス
ps aux | grep プロセス名 … 動いているか
systemctl status サービス … サービスの状態
systemctl restart サービス … 再起動
ss -tuln … 待ち受けポート一覧(netstatの後継)
ログ調査
journalctl -u サービス --since "10:00"
tail -f /var/log/messages
grep -i error /var/log/アプリ.log
ディスクが満杯のとき(あるある)
du -sh /var/* | sort -h … どのディレクトリが太っているか
find / -size +500M 2>/dev/null … 巨大ファイルを探す
ログの肥大やコアダンプが犯人であることが多いです。
ネットワーク確認
ip a … IPアドレス確認(ifconfigの後継)
ping / traceroute
ss -s … コネクション統計
ちょっと危険なコマンド(要注意)
運用では「打つ前に一呼吸」なコマンドもあります。
rm -rf… 対象を必ず指差し確認。カレントディレクトリに注意。kill -9… 最終手段。まずは通常killで。- 本番での
>(リダイレクト上書き)… 既存ファイルを消しかねない
コツ
- 破壊系は、まず
lsやechoで対象を確認してから実行 - よく使う組み合わせは alias やスクリプトにして、手打ちミスを減らす
派手さはないですが、この基本セットを体で覚えていると、障害時に手が勝手に動きます。新人にはまず「状況把握の4コマンド(top/df/free/uptime)」から渡しています。