「date -s」コマンドをログに記録する

「date -s」コマンドをログに記録する

date -s <STRING>コマンドは文字列で記述された時間を設定することがわかっていますSTRING

私が望んでいるのは、ファイルに時間を設定するために使用されるたびに上記のコマンドをログに記録することです/tmp/log/user.log

私の Linux ディストリビューションでは、ログ記録は によって行われますsyslog-ng。すでに にいくつかのログが記録されています/tmp/log/user.log

これは私のシステムにログインするための/etc/syslog-ng/syslog-ng.confの内容です。/tmp/log/user.log

destination d_notice  { file("/tmp/log/user.log");};

filter f_filter10   { level(notice) and not facility(mail,authpriv,cron); };

log { source(s_sys); filter(f_filter10); destination(d_notice); };

date -sコマンドもログインするにはどうすればいいですか?/tmp/log/user.log

答え1

少なくとも Debian では、日付の変更はデフォルトでは記録されません。

logger最も簡単なオプションは、/bin/dateを、ログメッセージを出力して実際の/bin/date実行可能ファイルを呼び出すラッパーに置き換えることです。例:

mv /bin/date /bin/date.real
cat << 'EOF' >/bin/date
#!/bin/bash
logger -p user.notice "date run by $UID: $*"
/bin/date.real
EOF
chmod +x /bin/date

それ以外は、grセキュリティシステム時間の変更をログに記録できます。カスタム カーネルをコンパイルする必要があります。

関連情報