最近、NvidiaドライバをNvidiaカード用のNouveauドライバと交換してみました(参照:Debian wheezyのNvidiaカード用Nvidia専用ドライバからNouveauドライバに切り替える)。
残念ながら、この試みは失敗して放棄しました。しかし、カスタム設定で再起動して煙が消えた後、DebianはXサーバーログのコピーのみを保持することを発見しました。つまり、/var/log/Xorg.0.log
残念ながら新しいスタイルに切り替えようとしましたが、ログがありません。
だから私の質問は、Xログファイルの古いコピーを維持するためにDebianの設定をどのように変更しますか? :
このロジックは logrotate として扱うようですが、特別なロジックはないことがわかります/etc/logrotate.conf
。/etc/logrotate.d/
そこに何かを追加するだけですか?それなら、なぜまだ存在しないのだろうか。
答え1
Xのロギング動作は次のとおりです。
- 存在する場合は、
/var/log/Xorg.DISPLAY.log
名前を変更して/var/log/Xorg.DISPLAY.log.old
存在できるすべてのファイルを上書きします。 - 開いて
/var/log/Xorg.DISPLAY.log
ログインを開始します。
残念ながら、すべてのオープンソースソフトウェアの場合を除き、これを構成することはできません。ソースコードを変更して再コンパイルできます。xserver-xorg
ソースパッケージにあり、grepがLogInit
正しい場所を見つけることができます。
つまり、古いログを保存する方法を見つけることができます。たとえば、kdm
/etc/kde4/kdmには、ログイン画面が表示される前にrootとして実行されるいくつかのスクリプトがあります。ファイルsavelog
を保存するコマンドを追加できます。似たようなものが必要です。.old
gdm
dpkg-divert
またはonを使用し/usr/bin/X
てスクリプトを置いてsavelog
古いファイルを呼び出すと、execは実際にはXです。 Xを移動する代わりに、ディスプレイマネージャ(kdm、gdm)がXを実行するために使用するパスをこのスクリプトに変更することもできます。