駆け出しインフラエンジニアが業務上でよく使うコマンド集

こんにちは!Yuuです。

最近は少しずつ涼しくなり、秋らしい季節になってきましたね。
個人的には過ごしやすい気温になってきたので、休日には散歩でもしながら秋を楽しみたいなと思っています。

さて、今回は普段の業務でよく使用しているLinuxコマンドについて紹介していきたいと思います。

インフラエンジニアとしてサーバの運用や保守に携わっていると、サーバの状態確認やログの調査など、様々な場面でLinuxコマンドを使用する機会があります。

最初の頃はコマンドの種類が多く、どのような場面で何を使えばよいのか分からず、その都度調べながら作業していました。

そこで今回は、駆け出しインフラエンジニアの私が、実際の業務でよく使用しているコマンドをいくつか紹介していきたいと思います!

■cat:ファイルの内容を表示する
catは、ファイルの内容を表示するコマンドです。
ログの調査や設定周りの調査等1日1回は必ず叩くといってもいいほど常用しています。


cat /etc/hosts
このコマンドでは、/etc/hostsファイルの内容が表示されます。
設定ファイルの内容を確認したい場合などによく使用します。
また、複数のファイルを指定して、内容を続けて表示することもできます。


cat file1.txt file2.txt
ただし、ファイルの内容が多い場合は一度に大量の情報が表示されるため、lessなどのコマンドを使用した方が確認しやすい場合もあります。
■grep:特定の文字列を検索する
grepは、ファイルの中から指定した文字列に一致する行を検索するコマンドです。

サーバのログファイルには大量の情報が記録されているため、すべての内容を目視で確認するのは大変です。
そのような場合にgrepを使用することで、必要な情報を絞り込むことができます。


grep "error" /var/log/httpd/error_log
こちらは、Apacheのエラーログからerrorという文字列を含む行を検索します。

また、-vオプションを指定すると、指定した文字列を含まない行を表示できます。

grep -v "error" /var/log/httpd/error_log
上記の場合は、errorという文字列を含まない行が表示されます。

例えばログ調査の際に特定のメッセージを除外して確認したい場合などに便利です。

私自身、ログ調査を行う際には、エラーメッセージやIPアドレス、ドメイン名などを指定して検索することが多いです。
■du:ファイルやディレクトリの容量を確認する
duは、ファイルやディレクトリが使用しているディスク容量を確認するコマンドです。


du -sh /var/log
-sは合計容量のみを表示するオプション、-hはGBやMBなどの読みやすい単位で表示するオプションです。

また、以下のように実行すると、指定したディレクトリ直下の各ファイルやディレクトリの容量を確認できます。


du -sh /var/log/*
ディスクの使用率が高くなっている場合などに、どのディレクトリで容量を使用しているのか調べる際に便利です。
■df:ディスクの空き容量を確認する
dfは、ファイルシステムのディスク使用状況を確認するコマンドです。

よく使用するのが以下のコマンドです。


df -h
-hオプションを指定すると、容量がGBやMBなどの読みやすい単位で表示されます。

実行結果の例は以下の通りです。

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        50G   30G   20G  60% /
/dev/sdb1       100G   85G   15G  85% /data
この場合、/dataの使用率が85%になっていることが分かります。

先ほど紹介したduが個別のファイルやディレクトリの容量を確認するのに対して、dfはファイルシステム全体の使用状況を確認する際に使用します。

ディスク容量の調査では、まずdfで使用率を確認し必要に応じてduで容量を使用しているディレクトリを調べるといった使い方もできます。
■ps:実行中のプロセスを確認する
psは、現在実行されているプロセスを確認するコマンドです。
サーバではApacheやnginx、MySQLなど様々なサービスが動作しています。
それらのプロセスが実行されているかを確認したい場合に使用します。

例えば、Apacheのプロセスを確認したい場合は以下のように実行します。


ps aux | grep httpd
ここで使用している|(パイプ)は左側のコマンドの出力結果を右側のコマンドへ渡すための記号です。

今回の場合はps auxで取得したプロセス一覧からgrepを使用してhttpdという文字列を含む行を抽出しています。

このように複数のコマンドを組み合わせて使用することもよくあります。
■まとめ
今回は、駆け出しインフラエンジニアの私が普段の業務でよく使用しているLinuxコマンドを紹介しました。

今回紹介したcat、grep、du、df、psはサーバの状態確認やログ調査など、日々の運用業務で使用する機会が多いコマンドです。

私自身、最初はコマンドの種類やオプションを覚えるのに苦労しましたが、実際の業務で繰り返し使用するうちに少しずつ使い方を覚えられるようになってきました。

コマンドを単体で使用するだけでなく、パイプなどを使って複数のコマンドを組み合わせることでより効率的に調査できることも分かりました。

今回紹介したもの以外にも便利なコマンドはたくさんありますので、今後も業務を通じて学んだことを紹介していければと思います。

最後までお読みいただき、ありがとうございました!