SystemRescueCD

From DCEwiki
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

SystemRescueCD http://www.sysresccd.org/ je linuxová distribuce se základní sadou nástrojů pro práci s počítačem.

K dispozici je ve formě obrazu liveCD, který lze vypálit na CD, ze kterého lze nabootovat. Dá se také nainstalovat na flashdisk, ne všechny desky však podporují bootování přes USB, proto je výhodné mít možnost nabootovat SystemRescueCD po síti.

Základním předpokladem je mít k dispozici nainstalovaný DHCP server a funkční TFTP server na který se umístí image určená pro spouštění přes pxelinux .

Zavádění SystemRescueCD

Probíhá v několika fázích:

  1. Nejprve se stáhne přes TFTP linuxové jádro a ramdisk ( initrd.img, initram.igz, ... ).
  2. Spuštěné jádro rozbalí ramdisk a z něj spustí základní systém.
  3. Základní systém se pak pokusí dostat k souborům sysrc.md5 a sysrc.dat které jsou součástí live CD. Nepodaří-li se mu k některému z těchto souborů stáhnout, tak se zavádění systému přeruší.
  4. Jsou-li tyto soubory dostupné, a kontrolní součet sedí, tak se provede namountování sysrc.dat přes stávající systém.

Zavádění starších verzí SystemRescueCD < 2.0 po síti

Starší verze SystemRescueCD uměly ve výchozí konfiguraci soubory sysrc.md5 a sysrc.dat získat pouze stažením přes http nebo tftp (pomalé), protože v jejich ramdisku chyběla utilita mount.nfs která by umožnila připojit adresář publikovaný přes NFS. U těchto verzí bylo nutné pro použití s NFS provést následující úpravy:

  1. upravit spouštěcí init skript
  2. nakopírovat soubor mount.nfs do ramdisku
  3. nastavit v konfiguračním skriptu pro pxelinux ve spouštěcích parametrech jádra cestu k souboru sysrc.dat, uloženém v adresáři sdíleném přes NFS

Uvádět podrobný postup úpravy starších verzí již postrádá smysl, neboť SystemRescueCD od verze 2.0 výše má vyřešeno zavádění jinak a umožňuje zavedení systému i přes NFS či NBD. Jen pro připomenutí zde uvádím linky, podle kterých byla tato úprava realizována:

Zavádění verze SystemRescueCD > 2.0 po síti

Jak už bylo zmíněno, novější verze SystemRescueCD > 2.0 podporuje jak NFS, tak NBD, takže není nutná žádná speciální úprava souborů přítomných na image live CD

Získání souborů pro zavedení po síti z live CD

Namountujeme stažený iso soubor přes loop, abychom z něj mohli vykopírovat všechny potřebné soubory.

SystemRescueCD při spouštění používá syslinux (pxelinux je jeho síťovou variantou) takže můžeme bez obav použít jádro a ramdisk které najdeme v adresáři isolinux.

Upozornění SystemRescueCD má v "záloze" jader několik, jak pro 32-bitové, tak pro 64-bitové stroje. Ramdisk je však pouze jeden - initram.igz

Zvolené jádro ( dejme tomu rescue64) a ramdisk initram.igz se nakopírují tam, odkud je bude nabízet pxelinuxu tftp server.

Do konfiguračního souboru pro pxelinux umístěném v adresáři pxelinux.cfg se pak zapíše nová položka:

Poznámka
label linux3
    menu label ^System Rescue CD 2.0 amd64 over nfs
    KERNEL sysresccd2/rescue64
    APPEND initrd=sysresccd2/initram.igz netboot=nfs://192.168.33.3:/srv/diskless/SystemRescueCd/2.0 console=tty0 cons

V parametru KERNEL je uvedena cesta ke zvolenému jádru, zatímco APPEND obsahuje parametry, které budou po spuštění jádru předány, spolu s ramdiskem:

  • cestu k ramdisku ( parametr initrd)
  • adresu připojení adresáře publikovaného přes NFS (parametr netboot)
  • případně mohou být přidány i další parametry jako např. číslo konzole, přednastavené heslo na roota atd.

Případné problémy a jejich řešení

Cesta pro NFS musí být vždy správně uvedená
Nevím jestli to byla specialita starší verze utility mount.nfs každopádně starší verze SystemRescueCd vyžadovala jinak napsanou cestu k souboru sysrc.dat. Jen pro srovnání ji uvádím v níže uvedeném příkladu:
Poznámka Ukázka záznamu pro zavedení patchovaného SystemRescueCD verze < 2.0
label linux3
    menu label ^Old System Rescue CD amd64 over nfs
    KERNEL sysresccd/rescue64
    APPEND initrd=sysresccd/initram.igz netboot=nfs://192.168.33.3/srv/diskless/SystemRescueCd/sysrc.dat console=tty0 cons

Rozdíl je především v tom, že se původně jádru nepředávala cesta ke sdílenému adresáři, ale přímo k souboru! A druhý háček je v chybějící dvojtečce za adresou stroje s publikovaným adresářem.

Pojmenování souborů sysrc.dat a sysrc.md5 musí být zachováno
Zatím co u starší verze bylo teoreticky možné pojmenovat tyto soubory libovolně (a pochopitelně podle toho upravit soubor s kontrolním součtem), novější verze SystemRescueCd > 2.0 vždy hledá soubory s těmito názvy, přejmenovat je tedy nelze!. Proto pokud chceme mít možnost paralelně spouštět několik verzí SystemRescueCd, je nutno umístit tyto soubory do samostatných adresářů
Upozornění Případné pomocné skripty musí být umístěny do stejného adresáře jako soubory sysrc.dat a sysrc.md5, resp. do některého z adresářů nižší úrovně, jinak by byly nedostupné