MENU
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
カテゴリー
  • IT関連 (623)
    • Bootstrap (2)
    • クラウド (4)
    • サーバー技術 (185)
    • ストレージ (7)
      • NetApp (7)
    • ネットワーク技術 (91)
      • Cisco (36)
      • Juniper (18)
      • 負荷分散装置 (17)
    • パソコン関連 (92)
      • MAC (25)
      • Windows (54)
    • プログラミング (154)
      • Ansible (11)
      • C言語 (23)
      • Python (111)
        • Django (20)
    • 仮想化 (88)
      • Docker (63)
      • VMware (23)
  • VPS (200)
    • ABLENET VPS (16)
    • Amazon Lightsail(VPS) (2)
    • ConoHaVPS (37)
    • mixhostVPS (4)
    • WebARENAIndigo (16)
    • XServerVPS (34)
    • お名前.com VPS (12)
    • さくらのVPS (24)
    • カゴヤクラウドVPS (13)
    • シンVPS (7)
  • レンタルサーバー (56)
    • エックスサーバー (38)
  • 光回線 (8)
  • 技術スキルアップ開発・学習 (7)
    • Envader (2)
    • RareTECH (2)
    • Udemy (3)
もう現役20年超えましたー。経験値ならだれにも負けないエンジニア技術ブログ
インフラエンジニアの技術LOG
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
インフラエンジニアの技術LOG
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
  1. ホーム
  2. IT関連
  3. サーバー技術
  4. CentOSログローテーション(logrotate)の設定

CentOSログローテーション(logrotate)の設定

2018 5/15
サーバー技術
2014年6月20日2018年5月15日

CentOSで/var/log配下に蓄積されていく各種ログを圧縮したり定期的に置き換え、破棄などの処理をする為
logrotateの設定をします。

目次
  1. logrotateの設定
    1. logrotate.confの設定
    2. ログローテーションの対象となるファイルの確認
    3. logrotateのcronを確認
安くて高速!高性能VPSで快適開発!
最速5分でサーバー構築
>>>こちらをチェック

エンジニア必見! 技術力を伸ばすVPS徹底比較
>>>VPS比較

logrotateの設定

現状CentOSで構成されているlogrotateの確認をします。

01
02
03
04
05
06
07
08
09
10
11
# rpm -ql logrotate
/etc/cron.daily/logrotate          #logrotateを毎日実行するためのcronの設定ファイル
/etc/logrotate.conf           #logrotateの設定ファイル
/etc/logrotate.d              #このディレクトリ配下の各ファイルがlogrotate.confにより読み込みされる
/usr/sbin/logrotate           #logrotateの実行ファイル
/usr/share/doc/logrotate-3.7.8
/usr/share/doc/logrotate-3.7.8/CHANGES
/usr/share/doc/logrotate-3.7.8/COPYING
/usr/share/man/man5/logrotate.conf.5.gz
/usr/share/man/man8/logrotate.8.gz
/var/lib/logrotate.status          #logrotateの各ステータスの記録ファイル

logrotate.confの設定

以下では、ログローテーションを毎月に変更し、世代管理を3か月間へ設定変更します。
また、各ログファイルは圧縮するように設定します。

それぞれのコマンドはなんのために使われているのか、各箇所でコメントを入れてます。

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# cat /etc/logrotate.conf
# see "man logrotate" for details
# rotate log files weekly
monthly                  #毎月に変更
 
# keep 4 weeks worth of backlogs
rotate 3            #ログを世代管理します。ここでは3か月間に設定
 
# create new (empty) log files after rotating old ones
create                   #新規ログファイルをローテーション後に作成。デフォルト有効
 
# use date as a suffix of the rotated file
dateext                  #ログファイルの末尾に日付(YYYYMMDD)がつく。デフォルト有効
 
# uncomment this if you want your log files compressed
compress            #ログファイルの圧縮。デフォルトは有効でない為、ディスクの空き容量などを考慮し使用するか決めること
 
# RPM packages drop log rotation information into this directory
include /etc/logrotate.d
 
# no packages own wtmp and btmp -- we'll rotate them here
/var/log/btmp
/var/log/lastlog
/var/log/wtmp {
    monthly
    create 0664 root utmp
        minsize 1M
    rotate 1
}
#/var/log/XXXファイルは毎月1世代のログを保管し、所有者がrootでグループがutmpで、なおかつパーミッションが644のログファイルを作成
 
 
# system-specific logs may be also be configured here.

ログローテーションの対象となるファイルの確認

ログローテーションの対象となるファイルは以下のディレクトリ配下で確認できます。

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
# ll /etc/logrotate.d/
合計 12
-rw-r--r--. 1 root root 103 11月 29 22:26 2013 dracut
-rw-r--r--. 1 root root 210  8月 15 20:24 2013 syslog
-rw-r--r--. 1 root root 100 12月 17 21:27 2013 yum
 
 
# cat /etc/logrotate.d/syslog
/var/log/cron
/var/log/maillog
/var/log/messages
/var/log/secure
/var/log/spooler
{
    sharedscripts
    postrotate
        /bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
    endscript
}

logrotateのcronを確認

/etc/cron.daily/logrotateファイルでcronにより、毎日一度logrotateが実行されるように指定されています。
※以下の値はデフォルト

1
2
3
4
5
6
7
8
9
# cat /etc/cron.daily/logrotate
#!/bin/sh
 
/usr/sbin/logrotate /etc/logrotate.conf >/dev/null 2>&1
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
    /usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit 0

こんな感じです。
ほとんどは”logrotate.conf”で設定しますので、環境に合わせて設定を実行しましょう。

あわせて読みたい
サーバーエンジニアへの構築手順書 サーバエンジニアにおすすめの構築手順をまとめたページです。 サーバ初心者の方。じぶんも初心者なので、そっから目線で構築した設計手順書となっています。 ご興味の...
エンジニアスキルをアップする勉強法

ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。

あわせて読みたい
現役エンジニアがおすすめするVPSレンタルサーバ比較(高速SSD限定) 格安VPS比較(2025年最新版)

サーバー技術
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする コメントをキャンセル

email confirm*

post date*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)


検索
カテゴリー
新着記事
  • XServerVPS アニメ風 男の子 プログラミングをしている VPSを利用している 楽しそうにしている
    XServerVPSで証明書(SSL)を取得する方法
    2025年3月24日
    XServerVPS
  • レンタルサーバ アニメ風 女の子 楽しんでパソコンをしている 目がキラキラ
    WordPressがレンタルサーバよりVPSで利用する方がおすすめの理由
    2025年3月19日
    VPS
  • VPS レンタルサーバー アニメ風 女の子 プログラミングをしている VPSを利用している 楽しそうにしている
    VPSとクラウドの違いとは?初心者向けにわかりやすく解説
    2025年3月5日
    VPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSはWindows serverを利用できない。その理由と利用できるOSは?
    2025年3月4日
    シンVPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSでゲームを利用する環境はあるのか
    2025年3月4日
    シンVPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSのサイトの表示速度は他社に比べて早いのか?
    2025年3月4日
    シンVPS
目次
  1. logrotateの設定
    1. logrotate.confの設定
    2. ログローテーションの対象となるファイルの確認
    3. logrotateのcronを確認
目次
  1. logrotateの設定
    1. logrotate.confの設定
    2. ログローテーションの対象となるファイルの確認
    3. logrotateのcronを確認