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.conf
ben dosyanın sonuna aşağıdaki eklenen:
local7.* /var/log/anm.log
Ayrıca, komut /var/log/anm.log
dosyası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.log
ancak 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.log
ve 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.conf
dosyanı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 syslog
ve grubun olması gerekiyor adm
. Bunu user.log
dosya 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.