Portál AbcLinuxu, 1. května 2025 07:15
Sun SPARC server SF V240, Solaris 10, stáří 5 let, nemá DVD mechaniku. Byla tam nějaká stará instalace Solaris 10, ale je zanedbaná a chci udělat novou. Stáhnul jsem si aktuální obraz instalačního DVD, namontoval na nějakém linuxu a NFS exportoval. Ten starý zanedbaný Solaris jsem nabootoval do jednouživatelského režimu a provedl NFS mount. Jenže ze Solarisu nabootovaného z disku se instalovat nedá, jak mě poučila podpora Oracle. Nezbývá než zařídit síťovou instalaci, které se v Solarisu říká jumpstart.
Vyguglit se dá ledacos a není to vždycky aktuální. Co dál napíšu, platí v září roku 11 pro SunFire V240. Pro instalaci z linuxového serveru potřebujeme arpd - přiděluje IP adresu podle známé MAC adresy. Dále tftpd - poskytne základní bootovací program protokolem TFTP. který SPARC jedině umí. Dále bootparamd - poskytne informaci, odkud vzít instalační médium pomocí NFS . No a nakonec NFS server. Všechno musí být ve stejné síti jako instalovaný stroj. Použil jsem Debian a tam jsou to balíčky rarpd , tftpd , bootparamd . nfs-kernel-server
rarpd se řídí souborem /etc/ethers . Mám tam
00:14:4F:5E:4F:F6 10.126.102.12S ním není problém. tftpd bydlívá v adresáři /tftpboot , Debian si to změnil na /srv/tftp . Nakopírujeme tam soubor /solaris/Solaris_10/Tools/Boot/platform/sun4u/inetboot, kde /solaris je mount point, na němž sedí instalační médium, a sun4u je označení architektury procesoru serveru V240. Načež ten nakopírovaný soubor inetboot musí mít ve stejném adresáři symlink 0A7E660Ca ještě jeden 0A7E660C.SUN4U. To divné slovo jako název souboru je prosím IP adresa instalovaného serveru napsaná hexadecimálně, tedy v našem případě hexadecimální přepis adresy 10.126.102.12 . To druhé divné slovo za názvem označuje architekturu a ve skutečnosti není potřeba. Je to jen takový tradiční styl, jak to konfigurovat. Před dávnými lety byly na světě SPARC servery, které tam ten přídomek označující architekturu vyžadovaly. V oněch dávných dobách ještě nebyl běžný server bootp a DHCP ještě vůbec neexistovalo, proto se SPARCy při přidělování adresy spoléhají na RARP.
root@pixla1:~# ls -l /srv/tftp total 220 lrwxrwxrwx 1 root root 20 Sep 8 15:25 0A7E660C -> inetboot.sol10.sun4u lrwxrwxrwx 1 root root 20 Sep 8 15:25 0A7E660C.SUN4U -> inetboot.sol10.sun4u -rw-r--r-- 1 root root 221528 Sep 8 15:23 inetboot.sol10.sun4uS tftp taky není problém.
Následně se pustíme do souboru /etc/bootparams . Po chvíli experimentování tam mám tohle:
oot@pixla1:~# cat /etc/bootparams # /etc/bootparams: provide diskless clients with information necessary # for booting. See bootparamd(8) for further information. # # Format : client id=server:path # # Example: client_1 base=server_1:/path/to/basedir # solar root=10.126.102.29:/solaris/Solaris_10/Tools/Boot \ install=10.126.102.29:/solaris/Solaris_10 \ boottype=10.126.102.29:in \ rootopts=10.126.102.29:rsize=8192,wsize=8192,vers=3Problematický na tom byl ten parametr vers=3 v rootopts. Ten určuje, že pro NFS mount filesystému / instalačního systému se má použít NFS verze 3. Linux nabízí i verzi 4 a nepovedlo se mi mu to rozmluvit. Když se NFS mount nepovedl, bootování na sériové konzole Suna mi vtipně oznámilo, že se boot nepovedl a že mám asi špatně jméno souboru obsahujícího jádro. Vlastně si myslím, že mount ve skutečnsoti skončil jako by bez chyby, jenom že žádné soubory nebyly vidět.
Jestliže máme spuštěný i NFS server, můžeme začít instalovat, t.j. za promptem ok sériové konzoly napíšeme boot net. tcpdump na linuxovím serveru ukazuje napřed samé broadcasty, potom přijdou už pakety ze správné adresy instalovaného stroje a to znamená, že už má IP adresu. Když mi to v téhle fázi vytuhlo a tcpdump ukazoval pořád opakovaný call na portmap, byl to problém firewallu na linuxovém stroji. Když to oproti tomu ohlásilo, že nenašel soubor s jádrem, byl to NFS problém, který se vyřešil volbičkou vers=3 v bootparams.
Po úspěšném bootu začíná druhé kolo problémů. Běží instalační program a najednou ohlásí síťové problémy, dá mi shell prompt ale při tom současně tam pořád poskakuje točící se lomítko. Tak tohle jsem vyguglil jako problém síťové masky. Skutečně Solaris je takovej mudrc, že když vidí adresu začínající 10..., je to pro něj síť třídy A a podle toho udělá masku 255.0.0.0 . V tom shell promptu jsem napsal ten správný ifconfig a ještě pro jistotu jsem připsal definici podsítě do souboru /etc/netmasks. To šlo, Solaris už byl živý. Za shell prompt jsem napsal exit a instalace laskavě pokračovala.
V tomhle okamžiku je nutné taky editovat soubor /etc/default/nfs a jako nejvyšší verzi používanou pro mount tam napsat 3 místo defaultní hodnoty 4. Protože sice vers=3 zafungovalo pro mount FS / díky konfigurační položce bootparams rootopts, ale podobná volbička není k dispozici pro mount instalačního média pro vlastní instalaci. Tady skutečně není možné předem zajistit, aby se použilo NFS 3, nebo se mi to nepovedlo. Instalační program tím pádem zhavaroval. Musel jsem aspoň dodatečně oeditovat soubor /etc/default/nfs a potom restartovat instalační program povelem suninstall. Po tomto restartu ovšem suninstall oznámí, že nemá CD mechaniku a opět zhavaruje. Je nutné provést NFS mount instalačního média, t.j. exportovaný adresář /solaris , na libovolný mount point, např. /mnt . Existence NFS mountu zapůsopbí jako vnuknutí pro suninstall, aby se laskavě zeptal, jestli náhodou nechci instalovat z NFS. Když se mě takto zeptal, nechal si zadat odkud, t.j. něco jako 10.126.102.29:/solaris a pak už se dalo instalovat.
Howgh.
Tiskni
Sdílej:
Mame tam stare administrativni agendy v Informixu. Licence Informixu je permanentni a binarka porad i po mnoha letech funguje. Jinak myslim ze Solaris stoji za to hlavne k vuli ZFS. Tam si muzes udelat mirror a mit tam data naveky.
Licence Solarisu je urcite dozivotni, ale nevim jak to bude s pristupem k pecum, jestli si neplatite podporu.
Ano, staci USB2serial prevodnik a linux s minicomem. Ma to taky Serial Over LAN. Staci to v ILOM zapnout a v Solarisu pomoci scadm nadefinovat IP adresu a tyhle veci. Neschoval jsem si URL toho navodu, ale da se to vyguglit.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.