web-dev-qa-db-ja.com

ユーザー固有のアプリケーションログファイルは、GNU Linuxのどこに保存する必要がありますか?

この質問は、単純なユーザーアプリケーションによって生成されたログファイルに関するものです。ファイルはユーザーに固有です。そのための /var/logはここでの解決策ではありません。

XDG仕様 でそのようなファイルに関する情報を見つけることができません。

デフォルトでどこに保存する必要がありますか?

3
buhtz

XDG仕様は、ログファイルをどこに置くべきかについてあまり明確ではありません。最適なのは、「ユーザー固有の必須ではないデータファイル」用の$XDG_CACHE_HOMEの下にあるようです。

私のローカルシステムを見ると、すべての$XDG_*_HOMEの場所にアプリケーションログがあります。

$ ls .cache/*/*log
.cache/shotwell/shotwell.log
.cache/simple-scan/simple-scan.log
.cache/virt-manager/virt-clone.log

$ ls .local/share/*/*log
.local/share/FasterThanLight/FTL.log
.local/share/xorg/Xorg.0.log

$ ls .config/*/*log
.config/VirtualBox/selectorwindow.log
.config/VirtualBox/VBoxSVC.log

$XDG_CONFIG_HOMEの使用は間違っているように見えますが、(再起動しても持続する可能性が高い)$XDG_DATA_HOMEを使用していることがわかります。特に、システムの再起動が必要になるほど激しく壊れ、エラーを保持できるようにしたいXorgなどのアプリケーションに使用します。これらのシナリオにログインします。

4
gz.