Часто Задаваемые Вопросы по FreeBSD 2.X, 3.X, 4.X и 5.X

         

Ppp получает ошибку защиты, но я не вижу файла pppcore


Ppp (или любая другая программа такого рода) никогда не создаёт файлов дампа памяти. Так так запускается с эффективным uid, равным 0, то операционная система не будет записывать дамп памяти ppp(8) на диск перед его завершением. Если, однако ppp(8) всё же прекратит работу из-за нарушения защиты, или по другому сигналу, который вызывает создание дампа памяти, и вы уверены, что используете самую последнюю версию (смотрите самое начало раздела), то вы должны сделать следующее:

% tar xfz ppp-*.src.tar.gz

% cd ppp*/ppp

% echo STRIP= >>Makefile

% echo CFLAGS+=-g >>Makefile

% make clean all

% su

# make install

# chmod 555 /usr/sbin/ppp

Теперь у вас есть отладочная версия ppp(8). Вам нужно стать суперпользователем для запуска ppp(8), так как соответствующие биты прав были убраны. Когда запустите ppp(8), обратите особое внимание на то, какой каталог у вас был текущим на этот момент.

Итак, если получит ошибку нарушения защиты, он сбросит дамп памяти с именем ppp.core. Затем вам нужно сделать следующее:

% su

# gdb /usr/sbin/ppp ppp.core

(gdb) bt

..... (gdb) f 0

.... (gdb) i args

.... (gdb) l

.....

Вся эта информация должна быть предоставлена вместе с вашим вопросом, чтобы проблему можно было продиагностировать.

Если вы умеете обращаться с gdb, вы можете попробовать найти причины образования дампа, а также адреса и значения относящихся к этому переменных.



Содержание раздела