問題一覧
1
旧来のsyslogにある問題点は?
・ネットワーク経由でのメッセージ送受信にUDP(ポート512番)を使用しているため、サーバにログメッセージが届いていることが保証できない(TCPのように確認応答がない) ・syslogは暗号化機能を持っておらず全てのログメッセージが平文で送受信されるため、ログが覗かれる可能性がある など
2
syslogの問題点を克服した次世代のsyslogは?
syslog-ng(syslog next-generation)やrsyslog(reliable-syslog)
3
syslogは?
ログメッセージを送受信する規格。クライアント・サーバ型で、サーバ内部で利用されるだけではなく、ネットワーク越しに他の機器(ルータやスイッチなどのネットワーク機器、外部のサーバなど)からのログメッセージを受信することもできる。
4
rsyslogの設定ファイルは?
「/etc/rsyslog.conf」
5
「/etc/rsyslog.conf」はどの設定項目に分かれている?
モジュール設定、グローバル設定、ルール設定(どのログをどこに出力するか)
6
「/etc/rsyslog.conf」以外で設定を読み込む方法は?
「/etc/rsyslog.d」ディレクトリに拡張子.confのファイルを追加する
7
rsyslogの設定を変更した場合はどうする?
rsyslog.serviceを再起動する
8
rsyslog.serviceを再起動するコマンドは?
systemctl restart rsyslog
9
rsyslogで扱うログメッセージの認証サービスを表すファシリティは?
auth,authpriv
10
rsyslogで扱うログメッセージのデーモン各種を表すファシリティは?
daemon
11
rsyslogで扱うログメッセージのカーネルを表すファシリティは?
kern
12
rsyslogで扱うログメッセージの印刷サービスを表すファシリティは?
lpr
13
rsyslogで扱うログメッセージのメールサービスを表すファシリティは?
14
rsyslogで扱うログメッセージのsyslogdデーモンを表すファシリティは?
syslog
15
rsyslogで扱うログメッセージのユーザアプリケーションを表すファシリティは?
user
16
rsyslogで扱うログメッセージの独自に使用可を表すファシリティは?
local0〜7
17
rsyslogで扱うログメッセージの非常に危険を表すプライオリティは?
emerg
18
rsyslogで扱うログメッセージの緊急対応が必要な状態を表すプライオリティは?
alert
19
rsyslogで扱うログメッセージの危険な状態を表すプライオリティは?
crit
20
rsyslogで扱うログメッセージの一般的なエラーメッセージを表すプライオリティは?
err
21
rsyslogで扱うログメッセージの警告メッセージを表すプライオリティは?
warning
22
rsyslogで扱うログメッセージの通知メッセージを表すプライオリティは?
notice
23
rsyslogで扱うログメッセージの情報メッセージを表すプライオリティは?
info
24
rsyslogで扱うログメッセージのデバッグ時の有益な情報を表すプライオリティは?
debug
25
rsyslogで扱うログメッセージのメッセージを送らないを表すプライオリティは?
none
26
rsyslogのログメッセージのルール設定の書式は?
ファシリティ.プライオリティ アクション
27
ファシリティとプライオリティは何で繋ぐ?
「.(ドット)」
28
ファシリティとプライオリティをあわせてなんと呼ぶ? また、どのような機能がある?
「セレクタ」と呼び、セレクタによって扱うログメッセージを特定する
29
全てのファシリティや全てのプライオリティを指定するには?
「*(アスタリスク)」を使う
30
プライオリティはどのようなログを出力する?
指定したレベル以上のログを出力する
31
特定のレベルのログだけを指定するにはどうする?
「=(イコール)プライオリティ」とする
32
アクションには何を指定する?
出力先を指定する
33
アクションで出力先を指定する際、ファイルであればどう指定する?
絶対パス
34
アクションで出力先を指定する際、外部のsyslogサーバであればどう指定する?
@サーバアドレス
35
アクションで出力先に「/dev/console」を指定するとどうなる?
ログメッセージはコンソールに表示される
36
緊急メッセージなど全ユーザーのコンソールに送信したい場合はどう指定する?
「*(アスタリスク)」
37
1つのアクションに対して複数のセレクタを指定するには?
「;(セミコロン)」でつなぐ
38
手動でログメッセージを生成するコマンドは?
logger [オプション] [メッセージ]
39
loggerコマンドでメッセージのファシリティ、プライオリティが指定できるオプションは?
-p
40
loggerコマンドの-pオプションで何も指定しなかった場合どうなる?
ファシリティ、プライオリティを「user.notice」として送信する
41
systemdの動作するシステムでログの一元管理を行うには?
systemd-journaldデーモンを動作させる
42
systemd-journaldは何を記録する?
systemdから起動したプロセスの標準出力やsyslogへのログメッセージをバイナリ形式で記録する
43
systemd-journaldが書き込むジャーナルファイルはバイナリ形式のため、どうする必要がある?
catコマンドでは中を表示できないため、journalctlコマンド [オプション] [検索文字列]を使用する
44
journalctlコマンドでデフォルトでは画面表示されない文字も含めて省略せず、すべて表示するオプションは?
-a(--all)
45
journalctlコマンドで特定のシステム起動時のログを表示するオプションは?
-b(--boot)
46
journalctlコマンドの-bオプションで今回の起動時を意味する数字は?
0
47
journalctlコマンドの-bオプションで最古のログを意味する数字は?
1
48
journalctlコマンドの-bオプションで前回の起動時を意味する数字は?
-1
49
journalctlコマンドで指定したディレクトリのログを表示するオプションは?
-D(--directory)
50
journalctlコマンドで新規に追加されたログをリアルタイムに表示するオプションは?
-f(--follow) tail -fと同様
51
journalctlコマンドでカーネルからのメッセージを表示するオプションは?
-k(--dmesg) dmesgコマンドと同じ出力
52
journalctlコマンドで画面表示可能なすべてのログを表示するオプションは?
-l(--full)
53
journalctlコマンドで直近のログから指定行数分を表示するオプションは?
-n(--lines) 行数未指定時のデフォルトは10行
54
journalctlコマンドでデフォルトで使われるlessコマンドを使用しないオプションは?
--no-pager
55
journalctlコマンドでログの出力形式を指定するオプションは?
-o(--output)
56
journalctlコマンドの-oオプションで指定可能な形式は?
verbose(通常より詳細)形式 JSON(json)形式
57
journalctlコマンドで最古のログからの表示(デフォルト)を逆にし、最新のログからするオプションは?
-r(--reverse)
58
journalctlコマンドで指定した日付時刻以降のログを表示するオプションは?
--since
59
journalctlコマンドで特定のユニットからのログを表示するオプションは?
-u(--unit)
60
journalctlコマンドで指定日付までのオプションは?
--until
61
journalctlコマンドで追加の説明を表示(メッセージカタログがある場合)するオプションは?
-x エマージェンシーモードで起動時に"journalctl -xb"でログを確認するように表示される
62
journalctlコマンドで指定した期間より古いアーカイブジャーナルを削除するオプションは?
--vacuum-time=
63
どのようにしてログメッセージの送受信を行う?
通常 syslog は、ログメッセージを /dev/log に書き込み、syslogデーモン(syslogdなど)が /dev/log から読み出す
64
systemd-journald は /dev/log と syslogデーモンの間に入るがどのような影響がある?
syslogデーモンより先にsyslogのログメッセージを読み出すため、systemd-journaldとsyslogdが同時に稼働しているシステムでは、syslogdがsystemd-journaldからsyslogを読み出すように設定する必要がある。 ※旧来のsyslogに代わるrsyslog(reliable-syslog)やsyslog-ng(syslog next-generation)では、設定不要
65
systemd-journaldの設定はどこで設定する?
「/etc/systemd/journald.conf」
66
systemd-journaldのデフォルトの設定ではログをどこに記録する?
バイナリ形式のログは「/run/log/journal」配下にシステム固有のディレクトリを作成し、その中の「system.journal」というジャーナルファイルに記録する
67
「/run/log/journal」配下にシステム固有のディレクトリ名はどう決まる?
システム固有のディレクトリ名は、インストール時に実行された systemd-machine-id-setup コマンドにより「/etc/machine-id」に記録されたものを使用する
68
「/run」ディレクトリはメモリ上に作成されたファイルシステム上のディレクトリのため、どうなる?
再起動するとデータが消えてしまう。そのため、前回起動中に記録されたログは参照できなくなる。
69
ログが再起動によってクリアされないようにするには?
「/etc/systemd/journald.conf」でジャーナルファイルの保存先を制御する設定項目「Storage=persistent」を設定する。この設定により、systemd-journaldは「/var/log/journal」ディレクトリを作成し、その配下にログを記録するようになる。
70
journalctlの検索条件指定でプロセス番号の指定を行うものは?
_PID=
71
journalctlの検索条件指定でユーザIDの指定を行うものは?
_UID=
72
journalctlの検索条件指定でUnit名の指定を行うものは?
_SYSTEMD_UNIT= -uオプションと同じ
73
指定したコマンドの実行結果をジャーナルファイルに書き込むことができるコマンドは?
systemd-cat コマンド loggerコマンドと同様
74
journalctlコマンドのsince,untilオプションの日付時刻指定形式は?
日付時刻は「yyyy-mm-dd hh:mm:ss」の形式で指定する。時刻のフィールドを省略すると「00:00:00」が指定されたものとして扱われる。また、秒のフィールドを省略すると「00秒」が指定されたものとして扱われる
75
ログローテーション機能を利用することで、ログファイルを自動的に分割・更新できるが、どの問題を解決できる?
ログの量が増えログファイルのサイズが大きくなると、ディスク容量の圧迫や検索に時間がかかったり等の問題
76
ログローテーションの設定ファイルは?
「/etc/logrotate.conf」
77
ログローテーションを実行するコマンドは?
logrotate 通常はcronによって定期的に実行される
78
「/var/log」ディレクトリ配下のファイルで、ログローテーションが実施されているものはどうなる?
ファイル名の最後に1、2、3、4と番号が振られる
79
logrotateの設定は「/etc/logrotate.conf」ファイル以外何でできる?
「/etc/logrotate.d」ディレクトリに、サービスごとの個別のログローテーション設定を記述したファイルを配置する
80
logrotate.confの設定項目(ディレクティブ)で切り替え後のログを圧縮するものは?
compress
81
logrotate.confの設定項目(ディレクティブ)でログ切り替え時に新たな空のログファイルを作成するものは?
create
82
logrotate.confの設定項目(ディレクティブ)でログの切り替えタイミング(日次、週次、月次、年次)を設定するものは?
daily,weekly,monthly,yearly
83
logrotate.confの設定項目(ディレクティブ)で指定したディレクトリ配下の設定ファイルを読み込むものは?
include ディレクトリ名
84
logrotate.confの設定項目(ディレクティブ)でログ切り替えによって削除されるログの内容を指定されたメールアドレスにメールするものは?
mail メールアドレス
85
logrotate.confの設定項目(ディレクティブ)でログ切り替え後に実行するスクリプトを設定するものは?
postrotate 〜 endscript
86
logrotate.confの設定項目(ディレクティブ)でログ切り替え前に実行するスクリプトを設定するものは?
prerotate 〜 endscript
87
logrotate.confの設定項目(ディレクティブ)で切り替え後に保持する世代数を設定するものは?
rotate
88
compress設定されているログファイルはどうなる?
gzipによる圧縮が行われ、.gzの拡張子がつく
89
各ディレクティブは記述する位置によってどうなる?
全ファイルに適用されたり、指定した個別のログファイルに適用されたりする