Начал разбираться со скриптом, возникли вопросы.
Так в файле конфигурации указано, что созданные лог файлы имеют владельца root и группу root. Однако, в моей системе есть только пользователь admin. Возможно, в моём случае скрипт требует правки.
Ещё одно небольшое замечание:
у тех, у кого как и у меня, установлен logrotate следует внести исправления в файл /opt/etc/logrotate.conf -
строку
заменить соответственно наPHP Code:
killall -HUP syslogd
PHP Code:
killall -HUP syslog-ng
Asus WL-500W (firmware wl500w-1.9.2.7-d-r, rTorrent 0.8.4, ADOS, nShaper) + WD Elements 160Gb + БП AT 200W (+5V 18A )
Возникли вопросы по скрипту:
копирование оригинального syslog.log нужно только при первом запуске;# copy content of original syslogd to new syslog.
cat /tmp/syslog.log >> /opt/var/log/syslog-ng.log
# remove old syslog.log
rm /tmp/syslog.log
ln -s /opt/var/log/syslog-ng.log /tmp/syslog.log
Last edited by Lupo_Alberto; 29-08-2008 at 15:52.
Asus WL-500W (firmware wl500w-1.9.2.7-d-r, rTorrent 0.8.4, ADOS, nShaper) + WD Elements 160Gb + БП AT 200W (+5V 18A )
Asus WL-500W (firmware wl500w-1.9.2.7-d-r, rTorrent 0.8.4, ADOS, nShaper) + WD Elements 160Gb + БП AT 200W (+5V 18A )
у меня уже года два генерит и ничего!!!! А года через два уже другой девайс мона покупать, но если буду бедствовать, то на крайняк можно rootfs перенести на флешку.....
Но ничего против вашего метода я не имею, просто мне лень было это делать хотя он более практичен!!!
Last edited by kir-g; 30-08-2008 at 06:34.
мой вариант стартового скрипта.
конфигурацияPHP Code:
#!/bin/sh
#
# Startup script for syslog-ng
#
# Stop itself if running
if [ -n "`pidof syslogd`" ]; then
/bin/kill `pidof syslogd` 2>/dev/null
sleep 2
fi
# Stop itself if running
if [ -n "`pidof syslog-ng`" ]; then
/bin/kill `pidof syslog-ng` 2>/dev/null
sleep 2
fi
/opt/sbin/syslog-ng
естественно подобный вариант требует настроек и на лог-сервере в том числе.Code:# syslog-ng configuration options { long_hostnames(off); sync(0); stats(3600); }; source src { pipe("/proc/kmsg");unix-stream("/dev/log"); internal(); }; destination rlogsrv { udp("192.168.19.218"); }; log { source(src); destination(rlogsrv); };
Last edited by ssh; 01-09-2008 at 03:21.
Некоторый оффтоп, но всё же...
Нельзя ли посмотреть на /opt/etc/init.d/rc.unslung-скрипт.
Как я подозреваю, есть несколько версий этого скрипта, и я нашёл не самую удачную
PHP Code:
#!/bin/sh
# Start all init scripts in /opt/etc/init.d
# executing them in numerical order.
#
for i in /opt/etc/init.d/S??* ;do
# Ignore dangling symlinks (if any).
[ ! -f "$i" ] && continue
case "$i" in
*.sh)
# Source shell script for speed.
(
trap - INT QUIT TSTP
set start
. $i
)
;;
*)
# No sh extension, so fork subprocess.
$i start
;;
esac
done
С уважением, lex.
Было: WL500gP (fw 1.9.2.7-10-USB-1.71) + Toshiba TravelStar 250Gb 2.5" inside router.
(ADOS + rTorrent WebUI+rtorrent + samba + rrdtool + XMail + QuiXplorer + ClamAV)
> Мои инструкции < Для новичков и ленивых > Wiki переехало сюда < "Ночные" сборки >
Кроме того, чтобы "тупо запускать", этот скрипт должен корректно останавливать запущенные сервисы. Хотя это проблема скриптов инициализации, ведь многие из них не обрабатывают опции start и stop. Есть ли готовые решения, или каждый из скриптов в /opt/etc/init.d нужно "допиливать"?
Появились ещё вопросы и соображения по данной теме:
1. Насколько нужен при использовании syslog-ng запущенный klogd? Вставил в S01syslog-ng
Никаких "вредных" изменений не заметилCode:if [ -n "`pidof klogd`" ]; then killall klogd 2>/dev/null fi
P.S. В дебиановском FAQ по настройке syslog-ng прямо указано на возможность удаления сервисов syslogd и klogd из системы.
2.Строкуну и последнее, наш cron очень сильно генерит логи , вобщем-то там никакой ценной инфы нет, поэтому раз в час просто чистим его.
можно и реже, тогда положите скрипт в нужную папку. За час генерится около 15кб логов.
заменил наCode:filter f_ni_cron { not ( level(info) and facility(cron) ); };
и добавил фильтрCode:filter f_ni_cron { not ( level(info) and program(cron) ); };
3. В моём роутере включён DHCP-сервер, который "засорял" syslog-ng.log сообщениями вида:Code:*** log { source(src); filter(f_ni_cron); filter(f_cron); destination(cronlog); };
Проблема решилась созданием фильтраCode:{2008-09-01 17:11:06}{PRI:debug}{FAC:local0}{PRG:udhcpc}{{{ udhcpc[93]: Sending discover... }}} {2008-09-01 17:11:09}{PRI:debug}{FAC:local0}{PRG:udhcpc}{{{ udhcpc[93]: Sending discover... }}} {2008-09-01 17:11:12}{PRI:debug}{FAC:local0}{PRG:udhcpc}{{{ udhcpc[93]: Sending discover... }}} {2008-09-01 17:11:15}{PRI:debug}{FAC:local0}{PRG:udhcpc}{{{ udhcpc[93]: Sending discover... }}}
и, соответственно, добавлением его в секциюCode:filter f_ni_udhcpc { not ( level(debug) and program(udhcpc) ); };
Code:log { source(src); filter(f_ni_vsftpd); filter(f_ni_thttpd); filter(f_ni_syslog-ng); filter(f_ni_cron); filter(f_ni_udhcpc); destination(mysyslog); };
На сайте Yellow Leaf нашёл интересное решение ведения, сохранения и ротации логов с WiFi-точки, предложенное MooSE, которое вполне может быть применено и для Asus'ов.
P.S. Однако, минус данного решения в необходимости держать компьютер постоянно включенным.