Kullanıcı alanı programlarının varsayılan olarak günlükleri atması bekleniyor izlenimi altındayım. Çeşitli programların günlükleri istedikleri yere döktüğünü ve sistemime asla hoş gelmediğini; Çok fazla olmadıkça / fark edilmeden asla fark edilmeyen bir yerde inşa etme eğilimi gösterir.
Onlar için kesin bir yer olsaydı tercih ederim, sistemimde onlar için istikrarlı bir yer bulmaya çalışıyorum.
İlk fikrim kullanmaktı /var/run/user/$UID/log
, ancak sistemimde, bunun bir TMPFS montajı olduğunu, yeterince büyük olmadığını ya da günlüklerle kullanım için gerçekten iyi olduğunu tespit ettim.
Onlar için bir yer yarat
/ Var / run / kullanıcısını onunla bütünleşecek kadar iyi anlamadığım için, bunu 1000 kullanıcısı için elle taklit etmeyi seçtim.
# mkdir /var/log/user
# install -d /var/log/user/1000 --owner 1000 -g 1000 -m 0700
Bu klasör içindeki yapı için FHS / var / log spc'ye yapıştırılmasını tavsiye ederim , ancak spec serbest biçimli, böylece uyulması gereken çok fazla şey yok.
Logrotate Config
Sisteminiz tarafından sağlanan bu dizinde mevcut günlük döndürme yok, sisteminiz için bir tane oluşturmanızı öneririz:
# /etc/logrotate.d/userlogs
/var/log/user/*/log/*.log
/var/log/user/*/log/**/*.log
{
daily
missingok
rotate 7
compress
notifempty
nocreate
}
Önceki / var / run / user / 1000 / log yazım aşağıda, ne yaptığınızı gerçekten bilmiyorsanız tavsiye edemem (Ve yaparsanız, bana nasıl yapılacağını da söyleyin!)
belki aşağıdaki gibi, ama bunu daha yeni yaptım çünkü benim için anlamlıydı.
/var/run/user/1000/log/<app>.log
/var/run/user/1000/log/<app>/<context>.log
/ Var / log / user / 1000 ile entegre et:
# Integrate with above /var/run/user, probably a bad idea:
# ln -s /var/log/user/1000/ /var/run/user/1000/log