Сетевая загрузка Solaris 2.6 на SparcStation 5 с QEMU, эмулирующем SparcStation 5

В прошлых статьях мы рассмотрели процесс создания виртуальной машины в QEMU и установки в неё Solaris 2.6. В данной статье рассмотрим процесс конфигурации Install server'а в Solaris 2.6 и процесс сетевой загрузки Sparcstation 5 с него.

Конфигурация сети

В данном примере мы имеем две машины:

10.0.0.1/8 52:54:00:12:34:56 sparc -- Машина, с которой будет происходить загрузка
10.0.0.2/8 52:54:00:12:34:57 sun   -- Машина, которая будет загружаться по сети

Сетевой интерфейс машины, с которой происходит загруза, забриджованы с внешним сетевым адаптером, в который подключена реальная машина.

Изменение MAC адреса сетевого интерфейса, а также Host ID описано в предыдущей статье.

Стоит отметить, что произвести сетевую загрузку на эмулированной в QEMU машине не удалось:

ok boot net
Boot device: /iommu/sbus/ledma@5,8400010/le@5,8c00000  File and args:
Internal loopback test -- Wrong packet length; expected 36, observed 64

Can't open boot device

ok

Установка Install server

Необходимые скрипты для создания Install server находятся на установочном CD с Solaris 2.6 и доступны по пути /cdrom/cdrom1/s0/Solaris_2.6/Tools:

drwxr-xr-x  16 root     other       4096 Apr 25  1998 Boot
-rwxr-xr-x   1 root     bin        53573 Jul  2  1997 add_install_client
-rwxr-xr-x   1 root     sys         1325 Jul  2  1997 dial
-rwxr-xr-x   1 root     bin        15101 Jul  2  1997 rm_install_client
-rwxr-xr-x   1 root     bin        11689 Jul  2  1997 setup_install_server

По желанию, можно скопировать все необходимые файлы с CD на диск:

Создадим директорию, куда будут скопированы установочные файлы с CD и приступим к установке:

# mkdir /usr/instserv
# ./setup_install_server /usr/instserv
Verifying target directory...
Calculating the required disk space for the Solaris_2.6 product
Copying the CD image to disk...
Install Server setup complete
#

Добавление клиентов

Далее необходимо прописать MAC и IP адреса загружаемых машин в `/etc/ethers` и `/etc/hosts` соответственно:

# echo '52:54:00:12:34:57 sun' >> /etc/ethers
# echo '10.0.0.2 sun' >> /etc/hosts

Теперь можно приступить к непосредственно конфигурации Install server для нового клиента и запуск необходимых сервисов:

# cd /usr/instserv/Solaris_2.6/Tools    # Если файлы были скопированы на диск
# cd /cdrom/cdrom1/s0/Solaris_2.6/Tools # Если они остались на CD
# ./add_install_client sun sun4m
saving original /etc/dfs/dfstab in /etc/dfs/dfstab.orig
Adding "share -F nfs -o ro,anon=0 /usr/instserv" to /etc/dfs/dfstab
making /tftpboot
enabling tftp in /etc/inetd.conf
starting rarpd
starting bootparamd
starting nfsd's
starting nfs mountd
updating /etc/bootparams
copying inetboot to /tftpboot

Загрузка по сети

Теперь можно приступить к загрузке самой машины по сети:

ok boot net -s