04.01 Instalacja kontenera st1
Tworzenie kontenera o nazwie st1, bez kontroli zasobów, z dziedziczonymi katalogami standardowymi i dodatkowo z dziedziczonym /usr/local
(w trybie tylko do odczytu). Skonfigurowane dwie karty sieciowe: qfe4 i qfe5 w trybie współdzielonym oraz dodana pula ZFS (zpool) o nazwie studmail.
root@feniks:/home/soft/SKEL/cfg# cat st1.cfg create -b set zonepath=/zones/st1 set brand=native set autoboot=true set ip-type=shared add inherit-pkg-dir set dir=/lib end add inherit-pkg-dir set dir=/platform end add inherit-pkg-dir set dir=/sbin end add inherit-pkg-dir set dir=/usr end add inherit-pkg-dir set dir=/usr/local end add net set address=155.158.XX.XX set physical=qfe4 end add net set address=192.168.XX.XX set physical=qfe5 end add dataset set name=studmail end
Utworzenie konfiguracji kontenera w systemie na podstawie pliku
root@feniks:/home/soft/SKEL/cfg# zonecfg -z st1 -f st1.cfg
Instalacja kontenera st1
root@feniks:/home/soft/SKEL/cfg# zoneadm -z st1 install Preparing to install zone. Creating list of files to copy from the global zone. Copying <3507> files to the zone. Initializing zone product registry. Determining zone package initialization order. Preparing to initialize <374> packages on the zone. Initialized <374> packages on zone. Zone is initialized. Installation of <3> packages was skipped. The file contains a log of the zone installation.
Pierwsze uruchomienie kontenera i zalogowanie się na konsolę
root@feniks:/home/soft/SKEL/cfg# cd root@feniks:~# zoneadm -z st1 boot root@feniks:~# zlogin -C -e+ st1 [Connected to zone 'st1' console]
Celowo przedefiniowałem tzw. escape character
(-e+), gdyż domyślnie jest to ~.
a to powodowało by również rozłączenie terminala na którym jestem zalogowany z Linuxa do serwera. Konstrukcja +.
rozłączy mi konsolę bez rozłączania terminala. Można też pominąć krok ustawiania środowiska jak stworzymy sobie plik /etc/sysidcfg
i wpiszemy do niego wszystko co trzeba. O pliku sysidcfg pisałem już tutaj. Aby skorzystać z pliku sysidcfg należy ustawić kontener w tryb gotowości zamiast od razu go uruchamiać, wgrać plik sysidcfg i dopiero zabootować.
root@feniks:~# zoneadm -z st1 ready root@feniks:~# cp sysidcfg /zones/st1/root/etc root@feniks:~# zoneadm -z st1 boot root@feniks:~# zlogin -C -e+ st1
Po zakończeniu identyfikacji systemu czy to ręcznie czy na podstawie pliku sysidcfg zobaczymy komunikat:
System identification is completed. rebooting system due to change(s) in /etc/default/init [NOTICE: Zone rebooting] SunOS Release 5.10 Version Generic_141444-09 64-bit Copyright 1983-2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Hostname: st1 Reading ZFS config: done. Mounting ZFS filesystems: (4/4)
Można więc zakończyć już sesję konsoli
st1 console login: +. [Connection to zone 'st1' console closed]
A następnie zalogować się poprzez zlogin
, gdyż wygodniej się pracuje
root@feniks:~# zlogin st1 [Connected to zone 'st1' pts/4] Sun Microsystems Inc. SunOS 5.10 Generic January 2005 #