Linux
logrotate

ディストロ別 logrotateで使えないディレクティブまとめ

どのLinuxディストロにも必ず入っているlogrotateですが、バージョンの違いにより別ディストロでのノウハウが使えなかったりすることがままあります。
そこでディストロ別に使用できないディレクティブをまとめてみました。

まえがき

  • 確認は2018/1/3時点のものです。
  • 以下で述べるlogrotate最新版は 3.13.0 を指します。
  • 各ディストロのlogrotateパッケージは2018/1/3時点の最新版です。
  • 不具合修正、挙動の違いは省略しています。

比較表

RHEL/CentOS 6.9 3.7.8-28.el6 RHEL/CentOS 7.4 3.8.6-14.el7 Amazon Linux 2 2017.12 3.8.6-14.amzn2 Ubuntu 16.04LTS 3.8.7-2ubuntu2.16.04.2 Ubuntu17.10 3.11.0-0.1ubuntu1 Debian 9.3.0 3.11.0-0.1 対応バージョン
maxsize 1 3.8.1
dateyesterday × 3.8.0
su × 3.8.0
preremove × 3.8.4
hourly × 3.8.5
--version コマンドラインオプション × 3.8.4
ログ個別の設定内で include × 3.7.9
createolddir / nocreateolddir × 1 1 × 3.8.9
olddir における renamecopy × 1 1 × 3.8.9
dateformat における %H × 1 1 × 3.9.0
-l コマンドラインオプション × 1 1 × 3.9.0
taboopat × × × × 3.11.0
addextension × × × × 3.11.0
minage × × × × 3.11.0
dateext における %M, %S, %V × × × × 3.9.2
-l コマンドラインオプションにおける syslog × × × × 3.9.2

まとめ

  • Debian 9とUbuntu 17.10はさすが新しいリリースだけあってほぼ全機能が使えます。
  • RHEL / CentOS 7は少し古めですが、バックポートで使えるようになっている機能が意外とあります。
  • RHEL / CentOS 6とUbuntu 16.04LTSは古いことを留意して設定を書かないとはまるかも知れません。
  • Amazon Linux 2は先月出たばかりですが、logrotate パッケージはまんまRHEL / CentOS 7で意外にも古いバージョンでした。

注釈


  1. バックポートにて対応