Linuxでログを調査する方法|syslogや/var/log/についても解説

Linuxでログを調査する方法|syslogや/var/log/についても解説のアイキャッチイメージ

ログの調査とは


サーバを利用する際には、ログの調査が必要不可欠です。
ログを調査することによって、利用状況や外部からの不正アクセスなどを把握することができます。

本記事では、Linuxでログを調査する方法についてまとめました。
仕事でLinuxを使用する際には、ぜひ参考にしてください。

Linuxとは

Linuxとは、WindowsやMacと同じOSの1つです。CentOS、Fedora、Ubuntu、RedHatが有名で、AndroidもLinuxが組み込まれています。

Linuxでログを調査する方法


Linuxのログ調査は、保守者が直接コマンドを投入しログファイルを確認する方法です。テキストデータで格納されていますので、目視で行います。

実際にログ調査に使用するコマンドは、次項で詳しくご紹介します。

Linuxでのログ調査で使用するコマンド

Linuxのログ調査に使用するコマンドは「grep」「tail」「last」「less」の4つがあります。

「grep」は、ログ情報の条件を設定するものです。「tail」は、ログファイルの最後を指定するものです。「-f」の入力で最新情報の表示が可能です。「last」では、最近のログイン履歴を確認することができます。「less」はファイルの閲覧にするのに使うコマンドです。

syslogとは


syslogとは、情報をログとして保存していく仕組みを表します。
Linuxではsyslogデーモンがログを記録しており、syslogデーモンの種類としてはrsyslogやjounraldなどがあります。
syslogの書式は、以下のようになっています。

<ファシリティ>.<プライオリティ> 出力先
例えばcron.* /var/log/cronであれば、ファシリティがcron、プライオリティがすべて、出力先がlog/cronとなります。

*(アスタリスク)はすべてを指定するときに用いられます。

ファシリティとはメッセージの出力先のことで、具体的にはcron(cronからのメッセージ)、daemon(daemonからのメッセージ)、kern(カーネルからのメッセージ)、lpr(印刷関係のメッセージ)、mail(メール関係のメッセージ)、syslog(syslogの機能関係のメッセージ)などがあります。

また、プライオリティとは優先度のことをいいます。
プライオリティが高い順に、emerg、alert、crit、err、warning、notice、info、debug、noneとなっています。

ログのローテーション

ログのローテーションは、ログ記録データが限りなく増えることを防ぐために、一定の容量や期間ごとに古いログを削除したり上書きする機能のことです。

ローテーション機能は、cronによる定期実行で成り立っています。「/etc/logrotate.conf」ファイルでlogrotateの設定が可能です。

/var/log/とは


Linuxのログは、アプリケーションが記録するログとsyslogデーモンが記録するログの2つに分けられます。
そして、アプリケーション自体が記録するログのほとんどは/var/log/配下に保存されます。

ログを正しく調査・管理するためには、どのログがどこに保存されているのかを把握しておくことが大切だといえます。
個別アプリケーションに問題が生じた場合などは、/var/log/配下を確認してみてください。
スムーズに問題の原因を発見できる可能性があるといえるでしょう。

systemdの場合のログ管理


systemdはログを出力する機能を有するため、後から分析するときなどに便利です。
初期の設定では、ログは再起動時にクリアされるため、再起動時のエラー処理が走ったときに、ログの参照不可という問題があります。

対処として、ログを消さない設定する事でログがクリアされず分析に利用可能となります。

Linuxをマスターしてエンジニアとしての市場価値を上げよう


Linuxは、アプリケーション開発やサーバ構築を始めとした様々な用途で利用されています。
エンジニアであればLinuxを使う機会は多いといえるでしょう。
そのため、他のエンジニア以上にLinuxに関する知識を深めていくことで、希少な存在になることができます。エンジニアとしての市場価値を上げるためにも、ぜひLinuxをマスターしてください。

インフラエンジニア専門の転職サイト「FEnetインフラ」

FEnetインフラはサービス開始から10年以上『エンジニアの生涯価値の向上』をミッションに掲げ、多くのエンジニアの就業を支援してきました。

転職をお考えの方は気軽にご登録・ご相談ください。

合わせて読みたい

Linuxの歴史を紹介|Androidとの関係やUnixの歴史についても解説... Unixの歴史のポイント5つ 現在多くの企業で利用されているLinuxは、かつてはUNIXと呼ばれるものでした。 そのため、Linuxについて学ぶ上で、Linuxの前史とも言えるUnixの歴史について理解を深める必要があります。 ここではUnixの歴史から順にLinuxの歴史についてご...
Linuxのセキュリティ対策方法7つ!セキュリティ対策ソフトを入れよう... セキュリティ対策すべき「マルウェア」とは? マルウェアとは、コンピューターやネットワークに害を与えるソフトウェア全般を指します。 サイバー犯罪には様々な種類のマルウェアが使用されており、被害内容としては金銭を要求される、重要情報が盗まれるなどが挙げられます。 さらに、被害者がサイバー犯罪そ...
Linuxで何ができる?インフラエンジニアが仕事で使うLinuxの用途... Linuxは、多くのインフラエンジニアが利用しているOSです。 これからLinuxを学びたいと考えているインフラエンジニアの方も多いのではないでしょうか。 ここでは、Linuxのスキルが重要な理由やLinuxの用途、Linux案件の特徴などについてご紹介します。 Linuxを使えるインフラエン...
サーバーエンジニアが意識すべきLinuxのセキュリティ【ウイルス対策】... サーバーエンジニアにとってウイルス対策は必要なものですが、「Linuxだから大丈夫」と対策を疎かにしてしまう人もいるかもしれません。 はたしてLinuxはウイルスに感染しないのでしょうか。 そして、Linuxのウイルス対策にはどのような方法があるのでしょうか。 Linuxに感染するウイルス...
サーバーエンジニアが職場で使うLinuxディストリビューションの紹介2【Debian】... 前回はUbuntuに関して紹介をしましたが、サーバーエンジニアが使うLinux ディストリビューションの1つにDebian(デビアン)というものもあります。 ここではDebianについて簡単に紹介し、Linuxにおけるシェアも述べていきます。 DebianとはどんなOSか Debian...