Archive for Październik 2011
DRBL i kolejne pożyteczne narzędzia via PXE
Jak zapewne wiadomo tym, którzy przebrnęli przez poprzednie wpisy o DRBL, system ten dostarcza ciekawy mechanizm umożliwiający dostarczanie kilku pożytecznych narzędzi za pomoca PXE bezpośrednio do komputera na którym je potrzebujemy. Iż jest to czasem błogosławieństwo chyba nie muszę opowiadać: brak dyskietki, dysku USB, CDROMU, uszkodzenie tychże i tak dalej i tak dalej.
Przykład? Konieczność wykonania akcji ratunkowej/maintenance na badanym systemie – ot klasyczny uszkodzony Windows/Linux do spacyfikowania. Zazwyczaj wykonujemy opcję startu z CD/DVD, czasem klucza USB (bez angażowania dysku twardego), a tu pokażę jak możemy to zrobić łatwiej i przyjemniej: via network. Dzisiaj zajmiemy się dostarczeniem jednego z ciekawszych systemów ratunkowych: System Rescue CD, dostępnego tu: http://www.sysresccd.org
Kilka aksjomatów:
– pokaz przeprowadzam na openSUSE 11.3 z zainstalowanym systemem i prekonfigurowanym DRBL’em w wersji 1.10.31_1
– interfejs dla podsieci DRBL to 172.16.0.1, podsieć 172.16.0.0/24
– obrazy systemów dostarczamy za pomocą http – można to zrealizować poprzez tftp, nfs, nbd – http pozostaje jednak najbardziej uniwersalny dla dodatkowych systemów podpinanych do DRBL’a, jak również stosunkowo najłatwiejszy w konfiguracji.
– zawartość serwera HTTP domyślnie znajduje się w /srv/www/htdocs
– zawartość DRBL/Tftpd domyślnie znajduje się w /tftpboot/nbi_img
– plik konfiguracyjny drbla znajduje się w /tftpboot/nbi_img/pxelinux.cfg/default
– wszystkie operacje wykonujemy jako root/sudo su
Zaczynamy od pobrania ostatniej wersji System Rescue CD – na potrzeby manuala jest to 2.3.1, ale oczywiście powinno działać z wersjami wcześniejszymi i późniejszymi, bez dokonywania zmian innych niż nazewnictwo plików i ich wersje:
# pobieramy i montujemy ISO jako filesystem wget http://downloads.sourceforge.net/project/systemrescuecd/sysresccd-x86/2.3.1/systemrescuecd-x86-2.3.1.iso mkdir -p /media/system mount systemrescuecd-x86-2.3.1.iso /media/system -o loop # zawartość pliku ISO jest dostępna w /media/system # kopiujemy z System Rescue CD jego kernel i initrd cp /media/system/isolinux/rescuecd /tftpboot/nbi_img/rescuecd cp /media/system/isolinux/rescue64 /tftpboot/nbi_img/rescue64 cp /media/system/isolinux/initram.igz /tftpboot/nbi_img/initram.igz.systemrescue #Kopiujemy plik obrazu systemu do naszego domyślnego serwera http. cp /media/system/sysrcd.dat /srv/www/htdocs/sysrcd.dat cp /media/system/sysrcd.md5 /srv/www/htdocs/sysrcd.md5 # sprawdzamy czy mamy uruchomiony serwer http: chkconfig -l apache2 apache2 0:off 1:off 2:off 3:on 4:off 5:on 6:off # Uwaga, - krok opcjonalny jeżeli poprzedni krok zwrócił nam same 'off' yast2 -i apache2 chkconfig --add apache2 # testujemy nasz serwer http wget http://172.16.0.1/index.html --2011-10-14 18:04:49-- http://172.16.0.1/index.html Connecting to 172.16.0.1:80... connected. HTTP request sent, awaiting response... 200 OK Length: 44 [text/html] Saving to: `index.html' 100%[=====================================================================================================================================>] 44 --.-K/s in 0s 2011-10-14 18:04:50 (2.19 MB/s) - `index.html' saved [44/44] # Wygląda na to iż wszystko działa ;) # Robimy kopię ustawień DRBL'a cp -p /tftpboot/nbi_img/pxelinux.cfg/default /tftpboot/nbi_img/pxelinux.cfg/default.old # Swoim ulubionym edytorem (gedit/mcedit/vi/ed) dokonujemy edycji pliku: /tftpboot/nbi_img/pxelinux.cfg/default mcedit /tftpboot/nbi_img/pxelinux.cfg/default # Na końcu pliku dodajemy linie: label System Rescue CD 2.3.1 # MENU DEFAULT # MENU HIDE MENU LABEL System Rescue CD 2.3.1 # MENU PASSWD kernel rescuecd append initrd=initram.igz.systemrescue netboot=http://172.16.0.1/sysrcd.dat setkmap=pl nomodeset dostartx # TEXT HELP # Boot System Rescue CD via network # ENDTEXT label System Rescue CD 2.3.1 64bit (required 400 MB or more) # MENU DEFAULT # MENU HIDE MENU LABEL System Rescue CD 2.3.1 64bit (required 400 MB or more) # MENU PASSWD kernel rescue64 append initrd=initram.igz.systemrescue netboot=http://172.16.0.1/sysrcd.dat docache setkmap=pl nomodeset dostartx # TEXT HELP # Boot System Rescue CD 64bit via network # ENDTEXT I efekt:![]()
W następnym odcinku: GParted, PartedMagic, i Hiren's Boot CD ;)