Logrotateを使用してUbuntuでログを管理する方法を紹介します。 Logrotateは、システム管理者がシステムサービスによって生成された大きなログファイルの管理を容易にするために使用するツールです。 logrotateの最も重要な機能は、自動ログローテーション、ログ圧縮、ログ削除、およびログファイルのメール送信です。このチュートリアルでは、logrotateを使用して、LinuxVPSで実行されているサービスによって生成されたログファイルを管理する方法を紹介します。
1。 SSH経由で接続し、Logrotateがインストールされているかどうかを確認します
開始する前に、logrotateがサーバーにインストールされていることを確認してください。 SSH経由でサーバーに接続し、次のコマンドを使用してlogrotateがインストールされているかどうかを確認します。
sudo dpkg -l | grep logrotate
2。パッケージインデックスを再同期し、すべてのパッケージをアップグレードします
Ubuntu VPSにインストールされていない場合は、インストールのお手伝いをします。まず、パッケージインデックスを再同期し、以下のコマンドを使用して、システムに現在インストールされているすべてのパッケージを最新バージョンにアップグレードします。
sudo apt-get update sudo apt-get upgrade
3.Logrotateをインストールします
パッケージマネージャーがアップグレードを完了したら、先に進んでlogrotateをインストールします。
sudo apt-get install logrotate
4。インストールを確認します
インストールが成功したことを確認します:
sudo logrotate
次のようなメッセージが表示されます。
logrotate 3.8.7 - Copyright (C) 1995-2001 Red Hat, Inc. This may be freely redistributed under the terms of the GNU Public License Usage: logrotate [-dfv?] [-d|--debug] [-f|--force] [-m|--mail=command] [-s|--state=statefile] [-v|--verbose] [--version] [-?|--help] [--usage] [OPTION...]
logrotateの主な構成ファイルは/etc/logrotate.conf
です。 一方、アプリケーション固有の構成ファイルは /etc/logrotate.d
に保存されます ディレクトリ。
5。構成オプション
Ubuntu VPSにインストールされているサービスに応じて、 /etc/logrotate.d
ディレクトリには、多かれ少なかれ構成ファイルが含まれる場合があります。まだ確認していない場合は、そのディレクトリのコンテンツを一覧表示し、logrotateが機能するように構成されているサービスについて理解してください。例として、 /etc/logrotate.d/dpkg
を使用します 最も重要な構成オプションのいくつかを示すファイル。テキストエディタを使用してファイルを開きます:
sudo nano /etc/logrotate.d/dpkg
構成ファイルの内容は、次のようになっている必要があります。
/var/log/dpkg.log { monthly rotate 12 compress delaycompress missingok notifempty create 644 root root } /var/log/alternatives.log { monthly rotate 12 compress delaycompress missingok notifempty create 644 root root }
Logrotateは/var/log/dpkg.log
をチェックします および/var/log/alternatives.log
毎月。ローテーション時間はmonthly
で指定されます オプション。他のローテーションオプションはdaily
、毎時
、毎週
および毎年
。
回転コード> 削除または特定のアドレスにメール送信する前に、ログファイルをローテーションする必要がある回数を示します。この例では、ログファイルは12回ローテーションされます。
rotate
の場合 が0に設定されている場合、古いログファイルはローテーションではなく削除されます。
次のオプションはcompress
です これは、古いバージョンのログファイルを圧縮する必要があることを指定します。代替オプションはnocompress
です inは、古いバージョンのログファイルを圧縮しない場合に使用できます。
delaycompress
前のログファイルの圧縮を次のローテーションサイクルに延期する必要があることを指定します。
missingok
およびnotifempty
ログファイルが見つからない場合はエラーメッセージを発行せずにローテーションをスキップし、ログファイルが空の場合はローテーションをスキップするために使用されます。
644rootrootを作成
特定のモード、所有者、およびグループを使用して、ローテーションの直後にログファイルを作成するために使用されます。
この例では言及されておらず、カスタム構成で役立つ可能性のある別のオプションは、 size
です。 。このオプションを使用すると、ログファイルが特定のサイズより大きくなった場合にのみログファイルをローテーションするようにlogrotateを構成できます。サイズは、バイト、キロバイト、メガバイト、およびギガバイトで指定できます。したがって、 size 100
、 size 100k
、 size 100M
およびsize100G
すべて有効です。
その他のデータと構成オプションについては、logrotateのマニュアルページを確認してください。
man logrotate
デフォルトでは、logrotateは毎日のcronジョブとして実行されます。 cronジョブの詳細については、 /etc/cron.daily/logrotate
を確認してください。 。 logrotateのcronジョブを自由に設定して、毎時、毎週、毎年、または特定の時間や曜日に実行することができます。
もちろん、マネージドUbuntuホスティングサービスのいずれかを使用している場合は、Logrotateを使用してUbuntuのログを管理する必要はありません。その場合は、専門のLinux管理者にlogrotateの構成を依頼するだけです。 24時間年中無休でご利用いただけます。リクエストはすぐに処理されます。
PS。この投稿が気に入ったら。 Logrotateを使用してUbuntuでログを管理するには、左側のボタンを使用してソーシャルネットワーク上の友達と共有するか、下に返信を残してください。ありがとう。