Ebben a szakaszban az összetettebb rendszerindítási helyzetek konfigurációs feladatait tekintjük át. Azonnal használható beállítási példákat mutatunk DHCP, PXE rendszerindítás, TFTP és Wake on LAN használatával.
A DHCP-kiszolgálót kétféleképpen lehet beállítani. SUSE Linux Enterprise Server 9 és frissebb verziókon a YaST-nak része egy grafikus felület a folyamat elvégzéséhez. Az egyéb SUSE Linux alapú termékek, illetve a nem SUSE Linux rendszerek felhasználóinak kézzel kell szerkeszteniük a konfigurációs fájlokat, vagy használhatják az operációsrendszer-gyártó által biztosított felületeket.
![]() | |
Az alábbi szakaszokban csak azokat a beállításokat nézzük át, amelyek segítségével a DHCP-kiszolgáló képes lesz elküldeni a PXE rendszerindítási adatokat. További információ a DHCP konfigurációjáról az operációsrendszer-gyártó által biztosított kézikönyvekben található. | |
Ahhoz, hogy elküldje a TFTP-kiszolgáló helyét is a hálózati klienseknek és megadja a telepítési célok által használandó rendszerképfájlt, két deklarációra lesz szükség a DHCP-kiszolgáló konfigurációjában.
Jelentkezzen be root felhasználóként a DHCP-kiszolgálót futtató gépre.
Indítsa el a ++ modulját.
Végezze el a beállítási varázslót a DHCP-kiszolgáló alapszintű beállításainak megadásához.
Válassza ki a pontot, majd nyomja meg az gombot, amikor a program figyelmezteti arra, hogy kilép az indító párbeszédablakból.
A ablakban válassza ki az alhálózatot, amelyben az új rendszer lesz, majd kattintson a gombra.
Az ablakban a gombbal vegyen fel egy új paramétert az alhálózat beállításai közé.
Válassza ki a filename paramétert és értéknek adja meg, hogy pxelinux.0.
Vegyen fel még egy (next-server) paramétert, amelynek értéke legyen a TFTP-kiszolgáló címe.
Nyomja meg az és a gombot a DHCP-kiszolgáló beállításainak befejezéséhez.
Ahhoz, hogy a DHCP statikus IP-címet adjon egy adott gépnek, lépjen be a DHCP-kiszolgálókonfigurációs modul részébe (Lépés 4) és vegyen fel egy új deklarációt a géptípushoz. Vegye fel a hardware és fixed-address paramétereket ebbe a gépdeklarációba és adja meg a megfelelő értékeket.
A DHCP-kiszolgálónak összesen annyit kell csinálnia (azon túl, hogy automatikusan címet oszt a hálózati klienseknek), hogy meghirdeti a TFTP-kiszolgáló IP-címét és a fájl nevét, amelyet a célgép telepítési rutinjainak le kell tölteniük.
Jelentkezzen be root felhasználóként a DHCP-kiszolgálót futtató gépre.
Adja hozzá a következő sorokat a DHCP-kiszolgáló konfigurációs fájljához (/etc/dhcpd.conf):
group {
# PXE related stuff
#
# "next server" defines the tftp server that will be used
next server ip_tftp_server:
#
# "filename" specifies the pxelinux image on the tftp server
# the server runs in chroot under /srv/tftpboot
filename "pxelinux.0";
}Az ip_of_the_tftp_server helyére a TFTP-kiszolgáló tényleges IP-címe kerüljön. További információ a dhcpd.conf paramétereiről a dhcpd.conf kézikönyvoldalaiban található.
Indítsa újra a DHCP-kiszolgálót (rcdhcpd restart).
Ha SSH-t akar majd használni a PXE és Wake on LAN telepítés távoli vezérléséhez, akkor kifejezetten adja meg azt az IP-címet, amelyet a DHCP a telepítési célnak adjon. Ehhez a fenti DHCP konfigurációt az alábbiakhoz hasonlóan kell módosítani:
group {
# PXE related stuff
#
# "next server" defines the tftp server that will be used
next server ip_tftp_server:
#
# "filename" specifies the pxelinux image on the tftp server
# the server runs in chroot under /srv/tftpboot
filename "pxelinux.0";
host test { hardware ethernet mac_address;
fixed-address some_ip_address; }
}
A host utasítás adja meg a telepítési cél gépnevét. A gépnév és az IP-cím egy adott géphez kötéséhez ismernie kell (és meg kell adnia) a rendszer hardver- (MAC-) címét. A példában használt változókat cserélje le a környezetnek megfelelő tényleges értékekre.
A DHCP-kiszolgáló újraindítása után statikus IP-t ad a meghatározott gépnek, így lehet SSH-n keresztül csatlakozni hozzá.
A TFTP-kiszolgáló beállítható a YaST-tal SUSE Linux Enterprise Server és SUSE Linux Enterprise rendszereken, illetve beállítható kézzel bármely Linux operációs rendszeren, amelyik támogatja az xinetd-t és a tftp-t. A TFTP-kiszolgáló fogja elküldeni a rendszerindításhoz szükséges rendszerképet a célrendszerre annak indulása után, miután kapott egy kérést.
Jelentkezzen be root felhasználóként.
Indítsa el a ++ modult és telepítse a szükséges csomagot.
Kattintson az pontra, hogy a kiszolgáló biztosan el legyen indítva és bekerüljön a rendszerindítási rutinok közé. További tevékenységre nincs szükség ehhez. A xinetd rendszerindításkor elindítja a tftpd-t is.
Kattintson a gombra a gépen futó tűzfal megfelelő portjának kinyitásához. Ha nem fut tűzfal a kiszolgálón, akkor ez a lehetőség nem áll rendelkezésre.
Kattintson a gombra a rendszerkép könyvtárának kikereséséhez. Az alapértelmezett könyvtár /tftpboot létrejön és ezt választja ki a program automatikusan.
Kattintson a gombra a beállítások elmentéséhez és a kiszolgáló elindításához.
Jelentkezzen be root felhasználóként és telepítse a tftp és xinetd csomagokat.
Ha nem léteznének még, akkor hozza létre az /srv/tftpboot és /srv/tftpboot/pxelinux.cfg könyvtárakat.
Vegye fel a rendszerképhez szükséges fájlokat a leírás szerint (4.3.3. szakasz - PXE rendszerindítás használata).
Módosítsa a xinetd konfigurációját (/etc/xinetd.d/) ahhoz, hogy a TFTP-kiszolgáló el legyen indítva rendszerindításkor:
Ha még nem létezne, hozzzon létre egy tftp nevű fájlt a könyvtár alatt a touch tftp paranccsal. Ezután futtassa le a chmod 755 tftp parancsot.
Nyissa meg a tftp fájlt és írja be a következő sorokat:
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /srv/tftpboot
disable = no
}
Mentse el a fájlt és indítsa újra a xinetd-t a rcxinetd restart paranccsal
Műszaki háttérinformáció és a PXE teljes specifikációja megtalálható a Preboot Execution Environment (Rendszerindítás előtti végrehajtási környezet, PXE) specifikációjában (http://www.pix.net/software/pxeboot/archive/pxespec.pdf).
Váltson át a telepítési adattár könyvtárába és másolja át a linux, initrd, message és memtest fájlokat az /srv/tftpboot könyvtárba:
cp -a boot/loader/linux boot/loader/initrd
boot/loader/message boot/loader/memtest /srv/tftpbootTelepítse a syslinux csomagot közvetlenül a telepítő CD-kről vagy DVD-kről a YaST segítségével.
Másolja át az /usr/share/syslinux/pxelinux.0 fájlt az/srv/tftpboot könyvtárba:
cp -a /usr/share/syslinux/pxelinux.0 /srv/tftpboot
Váltson át a telepítési adattár könyvtárába és másolja át az isolinux.cfg fájlt az /srv/tftpboot/pxelinux.cfg/default fájlba:
cp -a boot/loader/isolinux.cfg /srv/tftpboot/pxelinux.cfg/default
Módosítsa az /srv/tftpboot/pxelinux.cfg/default fájlt és törölje a gfxboot, readinfo és framebuffer kezdetű sorokat.
Szúrja be a következő bejegyzéseket az alapértelmezett failsafe és apic címkék hozzáfűzési soraiba:
insmod=kernelmodul
Ezzel a bejegyzéssel lehet beírni a PXE-kliens hálózati telepítésének támogatásához szükséges hálózati kernelmodult. A kernelmodul helyére a hálózati eszközhöz tartozó modul nevét kell írni.
netdevice=interface
Ez a bejegyzés adja meg a kliensen a hálózati telepítéshez használni kívánt hálózati csatolót. Csak akkor kell megadni, ha a kliensben egynél több hálózati kártya van. Egyetlen hálózati kártya esetén ez a bejegyzés kihagyható.
install=nfs://ip_instserver/path_instsource/CD1
Ez a bejegyzés adja meg az NFS-kiszolgálót és a telepítési forrást a kliens telepítéséhez. Az ip_instserver helyére a telepítési kiszolgáló tényleges IP-címét kell írni. A path_instsource helyére pedig a telepítési források tényleges elérési útját. A HTTP, FTP vagy SMB forrásokat hasonló módon kell megcímezni, csak a protokollelőtag változik (http, ftp vagy smb).
![]() | |
Ha át kell adni más rendszerindítási paramétereket is a telepítési rutinoknak, például az SSH vagy VNC rendszerindítási paramétereket, akkor fűzze őket az | |
Egy példa az /srv/tftpboot/pxelinux.cfg/default fájlra. Adja meg a protokollelőtagot a hálózati beállításoknak megfelelő telepítési forrás szerint és adja meg a telepítőhöz csatlakozás módszerét (az install bejegyzés vnc és vncpassword, illetve usessh és sshpassword paraméterei). A \ jellel elválasztott sorokat egy hosszú sorként kell beírni, a \ jel nélkül.
default linux
# default
label linux
kernel linux
append initrd=initrd ramdisk_size=65536 insmod=e100 \
install=nfs://ip_instserver/path_instsource/product/CD1
# failsafe
label failsafe
kernel linux
append initrd=initrd ramdisk_size=65536 ide=nodma apm=off acpi=off \
insmod=e100 install=nfs://ip_instserver/path_instsource/product/CD1
# apic
label apic
kernel linux
append initrd=initrd ramdisk_size=65536 apic insmod=e100 \
install=nfs://ip_instserver/path_instsource/product/CD1
# manual
label manual
kernel linux
append initrd=initrd ramdisk_size=65536 manual=1
# rescue
label rescue
kernel linux
append initrd=initrd ramdisk_size=65536 rescue=1
# memory test
label memtest
kernel memtest
# hard disk
label harddisk
localboot 0
implicit 0
display message
prompt 1
timeout 100
Az ip_instserver és path_instsource helyére az adott rendszerben használt értékeket kell írni.
Az alábbi szakasz röviden összefoglalja a beállításban használt PXELINUX paramétereket. A rendelkezésre álló paraméterekről további információ a syslinux csomag dokumentációjában, az /usr/share/doc/packages/syslinux/ fájlban olvasható.
Az itt felsorolt paraméterek a PXELINUX konfigurációs fájlban használhatóknak csupán egy részét képezik.
DEFAULT kernel paraméterek...
Az alapértelmezett kernel parancssort adja meg. Ha a PXELINUX automatikusan indul, akkor úgy viselkedik, mintha az alapértelmezés utáni bejegyzéseket a rendszerindítási parancssorban írták volna be, azzal a különbséggel, hogy az automatikus rendszerindítást jelző auto paramétert mindig hozzáadja.
Ha nem található konfigurációs fájl, vagy a konfigurációs fájlban nincs default bejegyzés, akkor az alapértelmezés a kernel neve „linux” paraméterek nélkül
APPEND paraméterek...
Egy vagy több paraméter hozzáadása a kernel parancssorához. Ezek mind az automatikus, mind a kézi rendszerindításoknál hozzáadódnak. A paraméterek a kernel parancssorának a legelejére íródnak be, általában lehetővé téve, hogy a közvetlenül beírt kernelparaméterek felülbírálhassák őket.
LABEL címke KERNEL rendszerkép APPEND paraméterek...
Azt jelenti, hogy ha indítandó kernelként a címke lett beírva, akkor ehelyett a PXELINUX a rendszerkép-et indítsa el a megadott APPEND paraméterekkel, nem pedig a fájl globális szakaszában (az első LABEL parancs előtt) megadottakkal. A rendszerkép alapértelmezése ugyanaz, mint a címkéé, és ha nincs megadva APPEND bejegyzés, akkor az alapértelmezés a globális bejegyzés használata (ha van ilyen). Maximum 128 LABEL bejegyzés adható meg.
Ne feledje, hogy a GRUB a következő szintaxist használja:
title mytitle kernelmy_kernelmy_kernel_optionsinitrdmyinitrd
A PXELINUX viszont a következőt:
labelmylabelkernelmykernelappendmyoptions
A címkék úgy csonkolódnak, mintha fájlnevek lennének és csonkolás után is egyedieknek kell maradniuk. Például a „v2.1.30” és „v2.1.31” címkéket a PXELINUX nem tudja megkülönböztetni, mert ugyanarra a DOS-fájlnévre csonkolódnak.
A kernelnek nem kell Linux-kernelnek lennie; lehet boot szektor vagy egy COMBOOT fájl is.
APPEND -Semmit nem fűz hozzá. Az egyetlen kötőjel argumentummal kiadott APPEND bejegyzés egy LABEL szakaszban a globális APPEND bejegyzés felülírására használható.
LOCALBOOT típus
PXELINUX alatt a LOCALBOOT 0 megadása egy KERNEL bejegyzés helyett az adott címke meghívását jelenti. A kernel helyett a helyi lemez lesz elindítva.
Az egyéb értékek nincsenek megadva. Ha nem tudja, hogy mit jelent az UNDI vagy PXE csomag, adjon meg 0-t.
TIMEOUT időkorlát
Azt adja meg, hogy a rendszerindítási parancssor meddig várjon az automatikus indítás előtt, tizedmásodpercben. Az időkorlát abban a pillanatban felülíródik, ha a felhasználó bármit megnyom a billentyűzeten, hiszen a rendszer azt feltételezi, hogy a felhasználó egy parancsot kezdett beírni. A 0 időkorlát megadása teljesen törli az időkorlátot (ez az alapértelmezés is). A maximális lehetséges időkorlátérték 35996 (egy kicsivel kevesebb, mint egy óra).
PROMPT flag_val
Ha a flag_val 0, akkor a rendszerindítási parancssor csak akkor jelenik meg, ha lenyomják a Maj vagy Alt billentyűt, vagy ha a Caps Lock vagy Scroll Lock be van állítva (ez az alapértelmezés). Ha a flag_val értéke 1, akkor mindig megjeleníti a rendszerindítási parancssort.
F2filenameF1filename..etc... F9filenameF10filename
A megadott fájlt megjeleníti a képernyőn, ha egy funkcióbillentyűt megnyomnak a rendszerindítási parancssorban. Ez használható például rendszerindítás előtti online súgó készítéséhez (feltehetőleg a kernel parancssori paramétereihez). A korábbi kiadásokkal való visszamenőleges kompatibilitás érdekében az F10 F0-ként is megadható. Ne feledje, hogy jelenleg nincs mód a fájlnevek az F11 és F12 billentyűkhöz rendelésére.
A rendszer BIOS-át fel kell készíteni PXE rendszerindításra: szerepeltesse a PXE menüpontot a BIOS rendszerindítási sorrendjében.
![]() | BIOS rendszerindítási sorrend |
|---|---|
Ne tegye a BIOS-ban a PXE menüpontot a merevlemezes rendszerindítási menüpont elé. Ebben az esetben a rendszer minden egyes indításnál megpróbálná magát újratelepíteni. | |
A Wake on LAN (WOL) használatához a BIOS megfelelő beállítását engedélyezni kell még a telepítés előtt. Ezenfelül írja le a célrendszer MAC-címét is. Erre az adatra szükség lesz a Wake on LAN funkció indításához.
A WOL (wake on LAN) annak a lehetősége, hogy egy készenléti állapotban levő számítógépet elindítsunk a hálózaton keresztül egy speciális, a gép MAC-címét tartalmazó csomag segítségével. Mivel a világon elvileg minden gépnek egyedi MAC-azonosítója van, nem kell aggódni amiatt, hogy véletlenül a rossz gépet indítja el.
![]() | Wake on LAN más hálózati szegmensen |
|---|---|
Ha a vezérlő gép nem ugyanazon a hálózati szegmensen található, mint a felébresztendő telepítési cél, akkor vagy multicastként kell beállítani a WOL-kéréseket, vagy távolról kell vezérelni egy gépet ugyanazon a hálózati szegmensen, hogy küldje el a kéréseket. | |
Az SUSE Linux Enterprise Server 9 és frissebb rendszerek felhasználói egy WOL nevű YaST-modullal egyszerűen be tudják állítani a Wake on LAN funkciót. Az egyéb SUSE Linux alapú operációs rendszerek felhasználói egy parancssori eszközt kell, hogy használjanak.