Burada yanlış yaptığımı söyleyen var mı?
İşte nihai soru:
Logger komutunu kullandığımda neden özel bir günlük dosyasına çıktısını alamıyorum /var/log?
Senaryomda:
logger -i -t ANM -p local7.info "This is a local 7 test"
In rsyslog.confben dosyanın sonuna aşağıdaki eklenen:
local7.* /var/log/anm.log
Ayrıca, komut /var/log/anm.logdosyasının dosya için izni var
* GÜNCELLEME *
Bu yüzden günlük hizmetlerini yeniden başlatmayı unuttum. Yeniden başlatmayı denedim ve " service rsyslog restart" Hala değişiklik yok. Test metni görünmüyor /var/log/anm.logancak içinde görünüyor/var/log/syslog
* GÜNCELLEME *
Hangi izinlere /var/log/"yourlogfilehere"ihtiyaç var? Owner, Group, rwx?
Ben kök ve logger komutunu çalıştıran kullanıcı adına grp ve kendi ayarını denedim. İkisinde de değişiklik yok.
Ayrıca özel bir dizin içinde günlük dosyaları oluşturmayı denedim /var/log. ie /var/log/anm/anm.logve dizin için her iki izin türünün ayarlanması.
* GÜNCELLEME *
rsyslogd çalışıyor
syslog 598 0.0 0.1 31060 1292 ? Sl 03:02 0:02 rsyslogd -c5
ve burada benim çıktısı olan /etc/rsyslog.confdosyanın
# /etc/rsyslog.conf Configuration file for rsyslog.
#
# For more information see
# /usr/share/doc/rsyslog-doc/html/rsyslog_conf.html
#
# Default logging rules can be found in /etc/rsyslog.d/50-default.conf
#################
#### MODULES ####
#################
$ModLoad imuxsock # provides support for local system logging
$ModLoad imklog # provides kernel logging support (previously done by rklogd)
#$ModLoad immark # provides --MARK-- message capability
# provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514
# provides TCP syslog reception
#$ModLoad imtcp
#$InputTCPServerRun 514
###########################
#### GLOBAL DIRECTIVES ####
###########################
#
# Use traditional timestamp format.
# To enable high precision timestamps, comment out the following line.
#
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
# Filter duplicated messages
$RepeatedMsgReduction on
#
# Set the default permissions for all log files.
#
$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup syslog
#
# Where to place spool files
#
$WorkDirectory /var/spool/rsyslog
#
# Include all config files in /etc/rsyslog.d/
#
$IncludeConfig /etc/rsyslog.d/*.conf
local7.* /var/log/anm.log
Ben de koymak denedim /etc/rsyslog.d/50-default.conf(Ubuntu 12.04 LTS çalıştırıyorum)
# Default rules for rsyslog.
#
# For more information see rsyslog.conf(5) and /etc/rsyslog.conf
#
# First some standard log files. Log by facility.
#
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none -/var/log/syslog
#cron.* /var/log/cron.log
#daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
#lpr.* -/var/log/lpr.log
mail.* -/var/log/mail.log
#user.* -/var/log/user.log
local7.* /var/log/anm.log
* GÜNCELLEME *
Sonunda anladım. Keşke birisi bunu benim için cevaplasaydı. Neyin yanlış olduğunu anlamak için birkaç gün sürdü, ama sanırım süper kullanıcıda çok fazla insan yok.
Sorun, başlangıçta teorik olarak özel günlük dosyasının dosya izinleriyle ilgiliydi. İzinlerin doğru olduğunu düşündüm, ancak sahibinin syslogve grubun olması gerekiyor adm. Bunu user.logdosya ile karşılaştırarak belirledim . İzinler değiştirilip tekrar test edildikten sonra, hepsi mükemmel çalışır! Umarım bu, cevap bulabildiğimden daha hızlı başka birine yardımcı olur.