Вот еще вариант перекидывания лога на флешку (пригодится по крайней мере мне, когда флешка гикнется))
Идея: просто перекинуть лог на флешку для сохранения после перезагрузок.
Использую syslogd, т.к. изучать syslog-ng нету ни времени, ни желания.
И еще увеличил кол-во сохраненных логов до 99
WL500gp@1.9.2.7-rtn-r5066
Флеха уже смонтирована на /opt
Делаю /opt/bin/syslogmove.sh
(правильно ли класть скрипты в bin - не уверен, у кого-то скопил)
Code:
cat /opt/bin/syslogmove.sh
#!/bin/sh
if [ -d /opt/var/log ]; then
if [ -f /tmp/syslog.log ]; then
if [ -n "`pidof syslogd`" ]; then
logger -t syslogmove.sh "killing syslogd..."
killall syslogd 2>/dev/null
cat /tmp/syslog.log >> /opt/var/log/syslog.log
rm /tmp/syslog.log
ln -s /opt/var/log/syslog.log /tmp/syslog.log
syslogd -m 0 -O /opt/var/log/syslog.log -S -D -l 7 -b 99
logger -t syslogmove.sh "syslogd started log to /opt/var/log/syslog.log"
fi
else
logger -t syslogmove.sh "/tmp/syslog.log is not a file, not running script"
fi
else
logger -t syslogmove.sh "no /opt/var/log, resume log to /tmp/syslog.log"
fi
Code:
cat /usr/local/sbin/post-mount
#!/bin/sh
/opt/bin/syslogmove.sh
Code:
flashfs save && flashfs commit && flashfs enable
UPD 20140824
Прошил новую версию 1.9.2.7-rtn-r5450, теперь не работает данный скрипт.
Пробовал ручками вбивать:
Code:
[___@wl500gp root]$ killall syslogd
Segmentation fault
Connection to my.router closed.
syslogd не убивается.
Пока не понял как чинить.(
UPD 20141004
Ступил, при прошивке не обновил модуль ext2.ko (флешка у меня в ext2, чтобы дольше жила) - думал если версии ядра одинаковые, значит не надо, оказалось надо.)
Теперь все работает.