вторник, 12 февраля 2008 г.

Сетевая установка OpenBSD на Sun Netra T1


Попалась мне старая списанная машинка Sun Netra T1 105. Штука оказалась очень замечательная 1U, глубина как раз под комуникационный шкаф. В общем мечта, а не роутер. Если бы не одна проблема. CDROM в этой модификации как класс отсутствовал, выхода на клаву и монитор тоже нету. Покрутив ее пару раз обнаружил 2x serial, 2x ethernet, SCSI и питание. В общем-то на первый взгляд ситуация очень нехорошая :)
Доступные порты:

Ситуация еще осложнилась тем, что отсутствовал serial кабель. Sun за такой кабель хотела что-то около 150$. Но посмотрев на рядом лежащий стандартный цисковский кабель пришла глупая идея воткнуть его, вдруг заработает :) Как ни странно - заработало.
Итак подключаемся к консоли, открываем minicom. Коннект есть, Netra начинает грузиться SunOS 5.8 (Solaris 8).

Netra t1 (UltraSPARC-IIi 360MHz), No Keyboard
OpenBoot 3.10.24 ME, 512 MB memory installed, Serial #XXXXXX.
Ethernet address XX:XX:XX:XX:XX:XX, Host ID: XXXXX.

Для начала пытаемся загрузиться по сети. Ребут, тыканье во все подряд и выдергивание дисков не помогает.По сети машинка отказывается грузиться совершенно. Но, как говориться, если ничего не помогает - прочтите, наконец, инструкцию:
Инструкция гласит, что управление загрузкой производиться через утилиту lom. Чтобы ее запустить нужно ввести "lom" Приглашение коммандной строки меняется на lom>
lom>version
LOM version: 2.1
LOM checksum: 7CA3
LOM firmware build Aug 6 1999 09:46:27
Далее жмем .# и попадаем в приглашение "ok>"
ok> boot net bsd.rd
Данная команда пытается загрузить по сети bsd.rd фаил через tftpd
Для установки нам понадобиться настройка rarpd,tftpd,nfs-server. Сервером в данном случае выступал другой комп с OpenBSD.
Итак,
1) Добавляем MAC адрес нашей нетры в /etc/ethers.
XX.XX.XX.XX.XX.XX netra
2) Добавляем запись в /etc/hosts
3) Копируем файлик owfboot.net из текущего релиза OpenBSD/sparc64 в /tftpboot
4) Запускаем tftpd
Убираем комментарии в /etc/inetd.conf
5) Cоздаем файлик bootparams

# cat /etc/bootparams
netra root=192.168.1.10:/tftpboot/root \
swap=192.168.1.10:/tftpboot/swap

6) Cоздаем swap фаил dd if=/dev/zero of=/tftpboot/swap bs=1k count=16000
7) Настраиваем NFS сервер

# cat /etc/exports
/tftpboot -alldirs -ro -network=192.168.1 -mask=255.255.255.0

8) В каталоге /tftpboot должны находиться следующие фаилы
lrwxr-xr-x   1 root    nobody        11 Jul 12  2007 C0A801C8 -> ofwboot.net
-rw-r--r-- 1 root nobody 5507788 May 11 2007 bsd
-rw-r--r-- 1 root nobody 1975791 May 11 2007 bsd.rd
-rw-r--r-- 1 root wheel 51000 May 11 2007 ofwboot.net
-rw-r--r-- 1 root nobody 16384000 May 11 2007 swap

9) Дальше - маленькая хитрость. Чтобы получить имя фаила который Netra пытается использовать как загрузчик, включаем нетру и запускаем tcpdump

tcpdump -i xl0 port tftp

Должно появиться что-то вроде

netra.XXXX > localhost.tftp: 17 RRQ "C0A801C8" <- Вот это и есть искомое имя фаила.
cd /tftboot
ln -s owfboot.net C0A801C8


Если все сделано правильно, то запуститься инсталяция OpenBSD.

Комментариев нет: