Minimální instalace

Obrázek uživatele mira

Tenhle článek by se klidně mohl jmenovat síťová instalace, OpenSolaris from scratch nebo mít jiný úderný titulek a přesto by byl cíl pořád stejný. Nainstalovat co nejmenší OpenSolaris, třeba na server.

Již delší dobu je projektu OpenSolaris vytýkána chybějící možnost instalace na server, více či méně podrobnější možnost instalace nebo plně automatická instalace, tak jak tomu bylo dobrým zvykem u stávajícího Solaris 10. I když poslední věc už není úplně až tak pravda. Automatická instalace (AI - Automatic Installer) je nějaký ten pátek dostupná i pro OpenSolaris.

Poslední server, který jsem instaloval z LiveCD, se mi povedlo "osekat" na relativně přijatelných 2GB ale i přesto je to obluda, kterou se nedá chlubit. Po instalaci postupně odebírat jeden GNOME balíček za druhým, to je pěkná otrava. Navíc jak už to v životě bývá, jedna věc jde ruku v ruce s věcí druhou a jeden obyčejný chtěný balíček nelogicky závisí na celé řadě jinych nepotřebných. A při každé nové instalaci znovu odebírat balíčky není prostě ono.

OSinstaller

Přece na tom nemůže být tolik složitého. Vytvořit ZFS pool, rozbalit pár balíčků, plácnout na to Grub, upravit několik konfiguráků a reboot. Úkol pro cvičenou opičku? Kdepak, úkol pro skript. OSinstaller. je původně napsaný pro distribuci MilaX ale bezvadně funguje i pro OpenSolaris.

Na blogu Alexandra Eremina naleznete ke stažení skript OSinstaller, který po síti nainstaluje minimální verzi OpenSolarisu. A minimální v tomto případě znamená zhruba 315MB na disku.

Použití

Celá instalace tak spočívá v nabootování LiveCD, stažení skriptu a jeho spuštění. Přibližně za 13-15 minut v závislosti na rychlosti hlavního (toho jediného) IPS serveru je instalace dokončena.

$ cd /tmp
$ wget http://src.opensolaris.org/source/raw/milax/i86pc/zfsinstall/osinstaller
$ pfexec sh ./osinstaller
$ pfexec reboot

Balíčky

Skript ve své výchozí volbě neinstaluje pkg, ovladače síťových karet, manuálové stránky a spoustu dalšího. Proto je dobré tyto balíčky ručně přidat do proměnné PKGS.

  • entire - pkg
  • SUNWman - manuálové stránky
  • SUNWrtls - ovladače pro Realtek ethernet
  • SUNWintgige - ovladače pro Intel ethernet

nebo cokoliv dalšího, co vás napadne.

Heslo

root/opensolaris :-)

Háčkování

Protože v aktuálně vydané verzi OSOL 2009.06 je jakási chybka v Grubu 0.95, skript automaticky instaluje nejnovější /dev verzi. Nicméně mě se stabilní verze povedla nainstalovat bez jakýchkoliv potíží, takže jediné co je potřeba udělat; stačí změnit adresu IPS serveru.

sed -i 's/pkg.opensolaris.org\/dev/pkg.opensolaris.org/' osinstaller

Průběh instalace také není dvakrát upovídaný, obzvláště ve fázi instalace balíčků. Jak jsem již psal dříve, nejvíc to závisí na IPS serveru. Výstup z pkg je směrován do /dev/null takže si jej necháme posílat na standardní výstup, ať vidíme, jestli stihneme snídani, svačinu a oběd nebo i to odpolední kafe. :-)
sed -i 's/pkg install --no-index --no-refresh $pkg 2>\/dev\/null >\/dev\/null/pkg install --no-index --no-refresh $pkg/' osinstaller

Demo

Starting OSinstall script which installs minimal OpenSolaris over network
 
Found the following disks:
1   35024 MB /dev/rdsk/c4d0p0
On which disk do you want to install system: 1
System will be installed on c4d0p0. Continue? [Yes|No]
Yes
Installing SUNWcsd
Installing SUNWcs
Installing SUNWcar
Installing SUNWcakr
Installing SUNWkvm
Installing SUNWos86r
Installing SUNWrmodr
Installing SUNWpsdcr
Installing SUNWpsdir
Installing SUNWcnetr
Installing SUNWesu
Installing SUNWkey
Installing SUNWnfsckr
Installing SUNWnfsc
Installing SUNWgss
Installing SUNWgssc
Installing SUNWbip
Installing SUNWbash
Installing SUNWloc
Installing SUNWsshcu
Installing SUNWsshd
Installing SUNWssh
Installing SUNWtoo
Installing SUNWzfskr
Installing SUNWipf
Installing SUNWipkg
Installing SUNWadmr
Installing SUNWadmap
Installing SUNWPython
Installing SUNWperl584core
Installing SUNWgrub
Creating boot_archivefor this image.
updating /zfsroot//platform/i86pc/boot_archive
updating /zfsroot//platform/i86pc/amd64/boot_archive
Installing grub on /dev/rdsk/c4d0s0
stage1 written to partition 0 sector 0 (abs 16065)
stage2 written to partition 0, 273 sectors starting at 50 (abs 16115)
Minimal OpenSolaris installation is complete.

Zdroje