LinuCレベル1 102試験の例題と解説
1.09.2システムのログ
今回は、LinuC 102試験の試験範囲から「1.09.2 システムのログ」についての例題を解いてみます。
今回はログローテーションの設定について確認しておきましょう。
例題
/etc/logrotate.confに以下の設定がされている時、設定の説明として正しいものを1つ選択してください。
weekly
rotate 4
create 0600 root root
dateext
include /etc/logrotate.d
- 4週間毎にローテーションが実行される
- 4日分のログが保存される
- ローテーション後のファイル名の末尾には年月日がつく
- ログファイルがない場合は作成される
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「3. ローテーション後のファイル名の末尾には年月日がつく」です。
ログファイルはシステムの情報を残す重要なファイルです。しかし、ログファイルをそのままにしておくと、ファイルサイズが大きくなり、ディスクとの空き容量を圧迫したり、ログを確認したりする際に確認範囲が広大になりすぎる可能性があります。
これを防ぐため、ログローテーションの設定を行います。
ログのローテーションを行う仕組みとして、よく利用されるのはlogrotatedです。
設定は「/etc/logrotate.conf」または「/etc/logrotate.d/」配下にファイルを作成して行います。
「/etc/logroted.d/」配下のファイルを取り込むには、例題にあるように「include /etc/logrotate.d」を設定します。
主な設定項目は以下の通りです。
daily | ログファイルを日毎にローテーションする |
weekly | ログファイルを週毎にローテーションする |
monthly | ログファイルを月毎にローテーションする |
rotate | ローテーションする世代数を設定する 周期がweeklyで4世代の場合、4週間分のログを保存します |
dateext | ローテーション後のファイル名に日付を付与する |
compress | ローテーション後のファイルをgz形式で圧縮する |
create | ローテーション後に空ファイルを作成する 以下の形式で、作成するファイルの権限を決められる create [権限] [オーナ] [グループ] |
missingok | ログファイルが存在しない場合も、エラーとしない |
よって正解は「3. ローテーション後のファイル名の末尾には年月日がつく」となります。
選択肢の解説は以下です。
[1. 4週間毎にローテーションが実行される]
▶︎誤りです。
ローテーションの周期設定は「weekly」ですので、1週間毎にローテーションが実行されます。
[2. 4日分のログが保存される]
▶︎誤りです。
ローテーションの周期が「weekly」で世代設定が「4」ですので、4週間分のログが保存されます。
なお、ローテーションの周期が「daily」で世代設定が「4」の場合は、4日分のログが保存されます。
[3. ローテーション後のファイル名の末尾には年月日がつく]
▶︎正解です。
ローテーション後のファイル名の末尾設定が「dateext」ですので、ファイル名の末尾には「年月日」の日付の情報が付与されます。
「dateext」の設定がない場合、ローテーション後のファイル名の末尾には「.数」が付与されます。
[4. ログファイルがない場合は作成される]
▶︎誤りです。
「create」はローテーション後に空ファイルを作成する設定です。
パーミッション(mode)や所有者(owner)、所有グループ(group)も指定することができます。
ローテーション設定は、システムによってデフォルトで設定が入っているものもあります。設定ファイルから「どのような条件でローテーションされるのか」理解し、環境に合わせて設定変更ができるようにしておきましょう。
例題作成者
株式会社デージーネット OSS研究室 橋本知里