30.08.1999, © Igor Sysoev, igor@nitek.ru

 

Лог-файлы

 

Лог-файл pppd.   Во время работы pppd немножко записывает в файл /var/log/messages с помощью syslogd, однако записи эти весьма скудны. Вот типичный пример:

pppd 2.3.5 started by root, uid 0
Connect: ppp0 <--> /dev/cuaa0
Modem hangup, connected for 1 minutes
Connection terminated, connected for 1 minutes

Естественно, при такой диагностике невозможно сказать определённо, что явилось причиной неудавшегося соединения, кроме того, что соединение и не удалось. Для получения более информативного лога pppd нужно указать параметр debug и указать ещё один лог-файл в файле /etc/syslog.conf, поскольку в /var/log/messages попадет только достачно серьезные сообщения. В новый лог-файл будут поступать все сообщения от pppd. Задать этот файл можно, добавив буковку "d" в файле /etc/syslog.conf в следующую строку

 
!pppd
*.*                                     /var/log/ppp.log

либо, если Вы всё же планируете использовать ppp, добавить ещё один файл /var/log/pppd.log

 
!ppp
*.*                                     /var/log/ppp.log
!pppd
*.*                                     /var/log/pppd.log

После этого нужно рестартовать syslogd

kill -1 `cat /var/run/syslog.pid`

Во втором случае нужно ещё создать файл /var/log/pppd.log

touch /var/log/pppd.log

и, кроме того, добавить строчку в файл /etc/newsyslog.conf

 
/var/log/pppd.log                       640  7     *    24

если Вы, конечно, не хотите, чтобы файл /var/log/pppd.log со временем разросся до гигантских размеров.

Лог-файл скрипта соединения.   Кроме своего лог-файла, при запуске в фоновом режиме pppd также ведёт лог скрипта соединения в файле /etc/ppp/connect-errors. В этот файл попадает всё, что скрипт соединения выводит в стандартный поток вывода ошибок. Надо заметить, что каталог /etc/ppp/ не самое удобное место для лог-файлов, поэтому если Вы планируете постоянно вести лог скрипта соединения, то можно использовать патч, после которого этот лог будет записываться в файл /var/log/connect.log.

Если же скрипт соединения использует syslogd, например, как chat с ключём -v, то в файл /etc/syslog.conf нужно добавить строку

 
!chat
*.*                                     /var/log/connect.log

а затем проделать всё, что было сказано выше по поводу файла /var/log/pppd.log. Кроме того, ничто не мешает вести общий лог в одном файле:

 
!pppd
*.*                                     /var/log/pppd.log
!chat
*.*                                     /var/log/pppd.log