このチュートリアルでは、Ubuntu 16.04 LTSにLogrotateをインストールして構成する方法を示します。知らない人のために、Logrotateはログファイルの管理に役立ちます。定期的に実行できます。読み取り、最小化、バックアップ、新しいログファイルの作成、および基本的にそれらを使用して実行したいすべてのこと。これは通常、単一のログファイルのサイズが扱いにくくなるのを防ぐために使用されます。通常、古いログを削除するためにも使用されます。サーバーのハードドライブがいっぱいにならないようにファイルを作成します。Logrotateの最も重要な機能は、自動ログローテーション、ログ圧縮、ログ削除、およびログファイルの電子メール送信です。
この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、サイトを独自のVPSでホストしていることを前提としています。インストールは非常に簡単で、ルートアカウントで実行されていますが、そうでない場合は、'sudo
を追加する必要があります。 ‘ルート権限を取得するコマンドに。 Ubuntu 16.04(Xenial Xerus)サーバーにLogrotateを段階的にインストールする方法を紹介します。
前提条件
- 次のオペレーティングシステムのいずれかを実行しているサーバー:Ubuntu 16.04(Xenial Xerus)。
- 潜在的な問題を防ぐために、OSの新規インストールを使用することをお勧めします。
- サーバーへのSSHアクセス(またはデスクトップを使用している場合はターミナルを開く)。
non-root sudo user
またはroot user
へのアクセス 。non-root sudo user
として行動することをお勧めします ただし、ルートとして機能するときに注意しないと、システムに害を及ぼす可能性があるためです。
Ubuntu16.04LTSにLogrotateをインストールする
手順1.まず、次のapt-get
を実行して、すべてのシステムパッケージが最新であることを確認します。 ターミナルのコマンド。
sudo apt-get update sudo apt-get upgrade
ステップ2.UbuntuにLogrotateをインストールします。
Logrotateをインストールするには、パッケージマネージャーを使用するだけです:
sudo apt-get install logrotate
インストールが成功したことを確認します:
sudo logrotate
ステップ3.Logrotateを構成します。
logrotateのメインの構成ファイルは/etc/logrotate.conf
です。 一方、アプリケーション固有の構成ファイルは/etc/logrotate.d
に保存されます ディレクトリ。在庫のUbuntu、/etc/logrotate.d
に配置した構成ファイル 1日1回実行されます。ログは通常、1日1回以下でローテーションされます(UbuntuのApacheのデフォルトは実際には毎週です)。 UbuntuでのApacheのデフォルトを見てみましょう– /etc/logrotate.d/apache2
:
/var/log/apache2/*.log { weekly missingok rotate 52 compress delaycompress notifempty create 640 root adm sharedscripts postrotate /etc/init.d/apache2 reload > /dev/null endscript prerotate if [ -d /etc/logrotate.d/httpd-prerotate ]; then \ run-parts /etc/logrotate.d/httpd-prerotate; \ fi; \ endscript }
これにより、「。log」で終わる/ var / log / apache2内のファイルがローテーションされます。これが、新しいApache仮想ホストを作成するときに通常、ログは/ var / log / apache2に配置されます。Logrotateはログファイルを自動的に管理します!オプションを確認してみましょう:
- 毎週 :ログを週に1回ローテーションします。利用可能なオプションは、日次、週次、月次、および年次です。
- missingok :*。logファイルが見つからない場合でも、びっくりしないでください
- 52回転 :古いログファイルを削除する前に52個のファイルを保持します(これはデフォルトで52週間、つまり1年分のログです!)
- 圧縮 :圧縮(gzip)ログファイル
- delaycompress :回転の周りで2回目まで圧縮を遅らせます。その結果、現在のログが1つ、圧縮されていない古いログが1つ、そして一連の圧縮されたログが作成されます。
- compresscmd :圧縮に使用するコマンドを設定します。デフォルトはgzipです。
- uncompresscmd: 解凍に使用するコマンドを設定します。デフォルトはgunzipです。
- 通知なし :空のファイルをローテーションしないでください
- 640ルートアドミンを作成 :permissions / owner / groupを設定して新しいログファイルを作成します。この例では、ユーザー
root
を使用してファイルを作成します。 およびグループadm
。多くのシステムでは、root
になります 所有者とグループのために。 - 共有スクリプト :回転後スクリプトを後実行します すべてのログがローテーションされます。これが設定されていない場合、 post-rotateが実行されます。 一致する各ファイルがローテーションされた後。
- 後回転 :回転が完了した後に実行するスクリプト。この場合、Apacheがリロードされるため、新しく作成されたログファイルに書き込みます。 Apacheを(正常に)リロードすると、現在の接続がすべて終了してから、リロードして新しいログファイルに書き込むように設定されます。
- 前回転 :ログの回転が始まる前に実行します。
その他のデータと構成オプションについては、ログローテーションのマニュアルページを確認してください。
man logrotate
おめでとうございます。Logrotateが正常にインストールされました。このチュートリアルを使用してLogrotateをインストールし、Ubuntu 16.04 LTS(Xenial Xerus)システムでログを管理していただきありがとうございます。追加のヘルプや役立つ情報については、次のことをお勧めします。 Logrotateの公式ウェブサイトを確認してください。