Mnohokrát sme museli opravovať systém z disku LiveCD a v určitom okamihu procesu sme zistili, že nám chýba nástroj, a keď ho chceme nainštalovať, LiveCD OS nám oznámi, že mu došlo miesto a cesnak a voda ( vysrať sa a vydržať).
Poďme na to. Použijeme systemrescuecd, ktorá ponúka pomerne komplexné prostredie založené na Gentoo.
V našom príklade (inštalácia systému Linux od nuly po knihe Linux From Scratch) nám chýbajú programy Bison a Makeinfo, takže vytvoríme nový obraz ISO tohto disku, ale s novými nástrojmi.
Aj keď sa používa správca balíkov (napríklad apt-get Debianu), namiesto sťahovania balíkov sa stiahne zdrojový kód, ktorý ho skompiluje na váš počítač.
Na tento proces budete potrebovať oddiel Linuxu (napríklad ext4) s najmenej 1.5 G voľného miesta, aj keď sa odporúča viac. Ak sa nechcete trápiť so svojimi oddielmi, využite virtuálny stroj. Samozrejme, je vhodné, aby oddiel mal niekoľko koncertov, pretože počas kompilácie, inštalácie, synchronizácie úložísk ... je potrebný dočasný priestor; Odporúčam použiť odkladaciu oblasť 8G + 2G (pri 4G + 1G by to malo stačiť, ale tak to zabezpečíme, ak RAM / swap chýba, proces bude ešte pomalší).
Za predpokladu, že ste vytvorili virtuálny stroj s 10G diskom, spustíte ho tak, že mu oznámite, aby sa zaviedol z novo stiahnutého SystemRescueCd. Akonáhle sme vnútri, rozdelíme sa na fdisk (ak ste začali grafickú reláciu, môžete to urobiť s gparted, ale účelom tohto príspevku je naučiť sa používať základné nástroje). fdisk je interaktívny príkaz:
- s možnosťou „n“ vytvoríme nový oddiel
- s voľbou „t“ zmeníme typ súborového systému, ktorý pôjde v oblasti
- s možnosťou «w» zapíšeme na disk
- s možnosťou «q» odchádzame bez zapísania zmien
Keď použijeme voľbu „n“, dá nám to niekoľko možností, po celú dobu použijeme predvolené, s výnimkou nastavenia posledného sektoru v prvom oddiele, ktorý budeme musieť napísať „+ 8G“, čo naznačuje programu, že chceme náš oddiel. zaberajú 8GB.
Pri vytváraní druhého oddielu použijeme predvolené možnosti, pretože zvyšok priestoru bude obsadený. Ak chcete povedať fdisku, že druhý oddiel bude typu swap, použite voľbu „t“ (hexadecimálny kód pre swap je 82). Rozhranie vyzerá takto:
Príkaz% fdisk / dev / sda (pomocník m):
Keď je všetko hotové, pomocou možnosti „w“ zapíšeme zmeny na disk a ukončíme prácu.
Teraz je čas naformátovať oddiely. Začneme swapom, aby sme ho mohli okamžite využiť:
% mkswap / dev / sda2%% swapon / dev / sda2
Swapový oddiel už máme naformátovaný a máme príkaz swapon začali sme to používať. Teraz naformátujeme prvý oddiel v ext4:
% mkfs.ext4 /dev/sda1
Môžeme začať postupovať podľa krokov popísaných v http://www.sysresccd.org/Sysresccd-manual-en_How_to_personalize_SystemRescueCd, tu ich preložím / popíšem s nepárnou anotáciou.
Pripojíme oddiel na jeho miesto (LiveCD je už pripravený so zložkou / mnt / custom, kde musí byť pripojený oddiel, v ktorom vykonáme príslušné zmeny). Tiež po pripojení budeme musieť extrahovať súbory z disku, čo sa dosiahne skriptom, ktorý je už pripravený. Skript bude chvíľu trvať (pretože má stovky megabajtov pamäte). Ak chcete skontrolovať, či skutočne funguje, choďte na iný terminál (napríklad Alt + F4) a urobte df -h.
% mount / dev / sda2 / mnt / custom% / usr / sbin / sysresccd-custom extract
Ak teraz prechádzate dovnútra / mnt / custom / customcd, uvidíte niekoľko priečinkov. V / mnt / custom / customcd / files koreňový súborový systém je nájdený. Teraz je čas pripraviť sa na budúci nový systém. Sem vložím príkazy, ďalšie informácie o chroot môžete vidieť tento tutoriál som napísal pred mesiacom
% mount -o bind / proc / mnt / custom / customcd / files / proc% mount -o bind / dev / mnt / custom / customcd / files / dev% mount -o bind / sys / mnt / custom / customcd / files / sys% chroot / mnt / custom / customcd / files / bin / bash # gcc-config $ (gcc-config -c)
Už sme v chrootovanom systéme, ktorý bude po zavedení bootovacieho systému LiveCD. Chýbajúce balíčky (bison a texinfo) nainštalujeme pomocou príkazu vynoriť sa (kto manipuluje s balíkom dopravné z gentoo).
Najskôr synchronizujeme strom portage (ekvivalent súboru apt-get update)
# emerge-webrsync
POZNÁMKA: tento príkaz používame namiesto „emerge –sync“, pretože je rýchlejší, pretože sťahuje balík tar z webu. Tento krok je nevyhnutný, pretože ak sa neobjaví, automaticky sa objaví –sync a spomalí sa.
Po synchronizácii stromu portage môžeme pokračovať v inštalácii balíkov:
# emerge sys-devel / bison # emerge sys-devel / texinfo
Necháme korene:# exit
Odpojíme „/ proc“, aby sa nové nainštalované balíčky uložili v squashfs. Odpojujeme aj značky „/ dev“ a „/ sys“, aby sme neskôr nezabudli
% umount /mnt/custom/customcd/files/proc
% umount /mnt/custom/customcd/files/dev
% umount /mnt/custom/customcd/files/sys
Pretože už máme nový systém súborov squash pripravený, vytvoríme ho pomocou nasledujúceho príkazu
% /usr/sbin/sysresccd-custom squashfs
Ak chceme pridať súbor do ISO obrazu, ale chceme, aby bol mimo squashfs, musíme ho vložiť do priečinka «/ mnt / custom / customcd / isoroot»
% cp -a my-files /mnt/custom/customcd/isoroot
Slávny okamih nastal, teraz môžeme vygenerovať nový ISO obraz pomocou nášho prispôsobeného systému!
% /usr/sbin/sysresccd-custom isogen my_srcd
„My_srcd“ je názov, ktorý dáme zväzku, môžete ho nazvať ako chcete. Obrázok je uložený v priečinku «/ mnt / custom / customcd / isofile», okrem toho sa vygeneruje aj súbor .md5 🙂
Ak pracujete na virtuálnom disku, zostáva zásadný krok: extrahujte ISO obraz virtuálneho systému. Existuje niekoľko spôsobov, ako to urobiť, vysvetlím jednoduchý (vo VirtualBoxe), aby ste nemuseli inštalovať „doplnky pre hostí“ alebo čokoľvek podobné.
Použijeme klienta na získanie súboru cez ssh tunel. Aby sme to dosiahli, musíme najskôr nakonfigurovať hosťovský systém pomocou hesla root. Server ssh sa spustí automaticky, pre každý prípad ho aj tak reštartujeme.
% passwd
% /etc/init.d/sshd restart
Musíme nakonfigurovať presmerovanie portov virtuálneho stroja. Vo VirtualBoxe sa to deje nasledovne:
- Prístup ku konfigurácii virtuálneho stroja
- V časti Sieť ste už nakonfigurovali adaptér v NAT
- Vyhľadajte možnosť presmerovania portov
- Pridáte nové pravidlo s jedinými parametrami „hostiteľský port“ a „hosťovský port“
- hostiteľ = 3022 a hosť = 22
Týmto sme dosiahli, že port 3022 nášho počítača je 22 virtuálneho stroja. Spustíme klienta Filezilla:
- V parametri server napíšeme: sftp: // localhost
- V parametri username napíšeme: root
- Do parametra hesla vložíme to, ktoré používame do «passwd»
- Do parametra portu napíšeme: 3022
- Kliknite na «Rýchle pripojenie»
Ak pôjde všetko dobre doľava, môžeme navigovať na našom PC a doprava na virtuálnom stroji. Postačí prístup (vo virtuálnom stroji) k priečinku «/ mnt / custom / customcd / isofile» a pretiahnutie ISO obrazu na požadované miesto v našom PC.
!! Gratulujem !! Ak všetko prebehlo dobre, máte ISO obraz pripravený s prispôsobeným SystemRescueCD a pripravený na zavedenie z CD, USB ...
Aký dobrý sprievodca, trochu komplikovaný, ale veľmi užitočný.
Dobrý príspevok.
Potom, s trochou viac času a bez toľkých nepríjemných pocitov v očiach, si ju dôkladne prečítam. Zdá sa to veľmi užitočné a zaujímavé ..
Dobrý deň, veľmi dobrý príspevok!
Používam LFS už niekoľko rokov a vytvoril som si svoje vlastné iso, ktoré vám môže slúžiť, obsahuje všetko, čo potrebujete na kompiláciu, pretože je to LFS. 😀 Dúfam, že je to pre vás užitočné
http://vegnux.org.ve/files/isos/neonatox-06.2rc6.linux-i686-xfce4.iso