Бездисковый X-сервер: руководство по настройке
Пред. |  | ═

# 5. Настройка возможности системам загружаться по сети (на сервере)

Проверьте, что в файле `/etc/inetd.conf` имеются записи для tftp и bootps. Ниже показаны мои записи:

    tftp	dgram	udp	wait	nobody	/usr/libexec/tftpd	tftpd /tftpboot
    #
    # Additions by who ever you are
    bootps  dgram  udp  wait  root  /usr/libexec/bootpd bootpd /etc/bootptab

Если вы изменили файл `/etc/inetd.conf`, то пошлите программе inetd(8) сигнал `HUP`. Для этого найдите ID процесса `inetd` командой `ps -ax | grep inetd | grep -v grep`. После этого пошлите ему сигнал `HUP`. Это делается командой `kill -HUP <pid>`. Это заставит `inetd` повторно прочесть свой конфигурационный файл.

Не забыли ли вы строку с `addr` из вывода начального загрузчика на бездисковой системе? Как вы можете угадать, теперь он вам требуется.

Добавьте запись в файл `/etc/bootptab` (может быть, вам потребуется его создать). Она должна иметь следующий вид:

    altair:\
            :ht=ether:\
            :ha=004001432666:\
            :sm=255.255.255.0:\
            :hn:\
            :ds=199.246.76.1:\
            :ip=199.246.76.2:\
            :gw=199.246.76.1:\
            :vm=rfc1048:

Строки имеют такой смысл:

`altair` | название бездисковой системы без доменной части.
`ht=ether` | тип оборудования ''ethernet''.
`ha=004001432666` | аппаратный адрес (число, записанное ранее).
`sm=255.255.255.0` | маска подсети.
`hn` | указывает серверу посылать клиенту его имя хоста.
`ds=199.246.76.1` | указывает клиенту расположение сервера имен.
`ip=199.246.76.2` | указывает клиенту его IP-адрес.
`gw=199.246.76.1` | указывает клиенту маршрутизатор по умолчанию.
`vm=...` | просто оставьте это так.

> Замечание: Проверьте правильность настройки IP-адресов, адреса выше являются моими.

Создайте каталог `/tftpboot`, в котором будут располагаться конфигурационные файлы для бездисковых систем, которые будет обслуживать сервер. Эти файлы будут именоваться `cfg.`ip``, где `ip` является IP-адресом бездисковой системы. Конфигурационный файл для `altair` будет носить название `/tftpboot/cfg.199.246.76.2`. Его содержимое:

    rootfs 199.246.76.1:/DiskLess/rootfs/altair
    hostname altair.example.com

Строка `hostname altair.example.com` просто указывает бездисковой системе её полное доменное имя.

Строка `rootfs 199.246.76.1:/DiskLess/rootfs/altair` указывает бездисковой системе местоположение ее корневой файловой системы, монтируемой по протоколу NFS.

> Замечание: Корневая файловая система, монтируемая через NFS, будет монтироваться в режиме только для чтения.

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

Я использую свой никому не нужный 386DX-40 в качестве выделенного X-терминала.

Дерево для `altair` имеет такой вид:

/
/bin
/etc
/tmp
/sbin
/dev
/dev/fd
/usr
/var
/var/run

Вот реальный список файлов:

    -r-xr-xr-x  1 root  wheel  779984 Dec 11 23:44 ./kernel
    -r-xr-xr-x  1 root    bin  299008 Dec 12 00:22 ./bin/sh
    -rw-r--r--  1 root  wheel     499 Dec 15 15:54 ./etc/rc
    -rw-r--r--  1 root  wheel    1411 Dec 11 23:19 ./etc/ttys
    -rw-r--r--  1 root  wheel     157 Dec 15 15:42 ./etc/hosts
    -rw-r--r--  1 root    bin    1569 Dec 15 15:26 ./etc/XF86Config.altair
    -r-x------  1 bin     bin  151552 Jun 10  1995 ./sbin/init
    -r-xr-xr-x  1 bin     bin  176128 Jun 10  1995 ./sbin/ifconfig
    -r-xr-xr-x  1 bin     bin  110592 Jun 10  1995 ./sbin/mount_nfs
    -r-xr-xr-x  1 bin     bin  135168 Jun 10  1995 ./sbin/reboot
    -r-xr-xr-x  1 root    bin   73728 Dec 13 22:38 ./sbin/mount
    -r-xr-xr-x  1 root  wheel    1992 Jun 10  1995 ./dev/MAKEDEV.local
    -r-xr-xr-x  1 root  wheel   24419 Jun 10  1995 ./dev/MAKEDEV

Если вы не используете devfs(5) (которая во FreeBSD═5.X по умолчанию активирована), то должны убедиться, что запускали команду `MAKEDEV all` в каталоге `dev`.

Мой `/etc/rc` для `altair` выглядит вот так:

    #!/bin/sh
    #
    PATH=/bin:/
    export PATH
    #
    # configure the localhost
    /sbin/ifconfig lo0 127.0.0.1
    #
    # configure the ethernet card
    /sbin/ifconfig ed0 199.246.76.2 netmask 0xffffff00
    #
    # mount the root filesystem via NFS
    /sbin/mount antares:/DiskLess/rootfs/altair /
    #
    # mount the /usr filesystem via NFS
    /sbin/mount antares:/DiskLess/usr /usr
    #
    /usr/X11R6/bin/XF86_SVGA -query antares -xf86config /etc/XF86Config.altair > /dev/null 2>&1
    #
    # Reboot after X exits
    /sbin/reboot
    #
    # We blew up....
    exit 1

Приветствуются любые замечания и вопросы.

Пред. | Начало | ═
Загрузка по сети | ═ | ═

Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам, связанным с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам, связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам, связанным с русским переводом документации, пишите в рассылку <frdp@FreeBSD.org.ua>.
Информация по подписке на эту рассылку находится на сайте проекта перевода.