組み込みLinuxデバイスで再起動時に/var/logを変更せずに維持する方法

組み込みLinuxデバイスで再起動時に/var/logを変更せずに維持する方法

想像する
私は組み込みLinuxシステムを使用しています。通常どおり、/var/log/このディレクトリはすべてのログが保存されるディレクトリです。/safepath画像の作成中に作成され、永続メモリに配置されるというディレクトリがあります。つまり、私が入れたすべてのコンテンツは、/safepath再起動セッションでも維持されます。

再起動するたびにログイン情報が/var/log/失われず、再起動後も維持されることを望みます。それで私はこの興味深い議論で読んだことを一つ/var/log/作りたいと思いました。/persistsmount --bind /var/log /safepathここ

質問:
しかし、このようにしても損害を受け続けます/var/log/。そうですか?/var/log/再起動セッションで永続性を強制する方法は?

答え1

質問は1年4ヶ月前に投稿されたため、まだ解決策を探しているかどうかはわかりません。とにかく、これは非常に簡単な解決策です。

設定ファイル/etc/syslog.conf(または/etc/rsyslog.conf)を/var/log/messages目的のパスに変更します。

答え2

最も簡単な方法は、/var/logを/safepath/logまたは類似のシンボリックリンクにすることです。

答え3

実際に質問に答えません。ただし、回避策を提供するには... syslogにルールを追加して、すべてのメッセージをサーバーに転送します。

*.*    @server.host.name

これにより、持続する必要はありません。/var/log (私の経験によると、永続的な店があればいつもいっぱいになります/var/log。)

サーバーのsyslogでネットワークモジュールを有効にする必要があります。これを行う方法は、実行しているsyslogソフトウェアによって異なります。ファイアウォール(通常はUDPポート514)を処理する必要があるかもしれません。

server.host.nameまた、syslogデーモンの起動時にDNSリゾルバを使用できない場合は、IPアドレスを使用する必要があります。

このタスクの1つ(私の考えに大きな)利点は、すべての内蔵デバイスを1つのサーバーに記録でき、すべてのログを1か所で使用できることです。サーバーのsyslogソフトウェアでは、一致ルールを使用して各サーバーのメッセージングデータを保存する必要があります。デバイスはソースデバイスの名前を付けた別のファイルに分割されます(時々設定するのは難しいかもしれませんが、それは価値があります)。

関連情報