Руководство FreeBSD


Запуск named в песочнице - часть 2


# cd /usr/src/lib/libbind

# make cleandir && make cleandir && make depend && make all

# cd /usr/src/libexec/named-xfer

# make cleandir && make cleandir && make depend && make NOSHARED=yes all

# cp named-xfer /etc/namedb/bin && chmod 555 /etc/namedb/bin/named-xfer

После установки статически скомпонованного named-xfer, во избежание появления старых копий библиотек и программ в дереве исходного кода, требуется некоторая зачистка:

# cd /usr/src/lib/libisc

# make cleandir

# cd /usr/src/lib/libbind

# make cleandir

# cd /usr/src/libexec/named-xfer

# make cleandir

Иногда при выполнении этого шага возникают ошибки. Если это случилось, выполните такую команду:

# cd /usr/src && make cleandir && make cleandir

и удалите ваше дерево /usr/obj:

# rm -fr /usr/obj && mkdir /usr/obj

При этом из вашего дерева исходных текстов будет удалён весь ``мусор'', и повторение вышеописанных шагов должно выполниться успешно.

Если вы используете FreeBSD 4.9-RELEASE или более позднюю версию, то копия named-xfer в каталоге /usr/libexec по умолчанию является статически скомпонованной, и вы можете просто скопировать её в песочницу при помощи команды cp(1).

  • Создайте файл устройства dev/null, который named может видеть и писать в него:

    # cd /etc/namedb/dev && mknod null c 2 2

    # chmod 666 null

  • Создайте символическую ссылку /var/run/ndc на /etc/namedb/var/run/ndc:

    # ln -sf /etc/namedb/var/run/ndc /var/run/ndc

    Замечание: Это просто для того, чтобы не задавать опцию -c при каждом запуске ndc(8). Так как содержимое каталога /var/run удаляется при загрузке, и если это показалось вам полезным, то вы можете добавить эту команду в crontab для root с использованием параметра @reboot. Обратитесь к справочной странице по crontab(5) для получения более полной информации относительно этого.

  • Настройте на создание дополнительного протоколирующего сокета log, в который может писать named. Для этого добавьте -l /etc/namedb/dev/log к переменной syslogd_flags из файла /etc/rc.conf.




    Начало  Назад  Вперед



    Книжный магазин