Prispôsobenie RepairDisk: Cesta k LFS

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ť).

Tento problém ku mne skutočne prišiel kvôli vstupu do LFS (LinuxFromScratch), čo je sprievodca (NIE samotná distribúcia) pri inštalácii vlastného systému Linux. Zmyslom tejto „distribúcie“ je, že z ľubovoľného LiveCD a pomocou vhodných nástrojov stiahnete kód jadra a ďalšie nástroje na vytvorenie vlastného systému (zostavujete všetko po kúsku). Ak chcete postupovať podľa podrobných pokynov, potrebujete niekoľko nástrojov a kompilátorov. Neexistuje živé CD so všetkým, takže si ho musíte prispôsobiť.

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.

UPOZORNENIE: Gentoo je distribúcia, ktorá sa kompiluje in situ všetky balíky, ktoré sa majú nainštalovať, preto je proces pridávania a aktualizácie programov pomalý.

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
bizón bude chvíľu trvať, kým sa zostaví, buďte trpezliví

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

V tomto okamihu vám oficiálny sprievodca hovorí, že môžete spustiť keymapu pomocou predvolenej klávesnice (napríklad „es“ pre španielske klávesnice). Ale keď som urobil niekoľko testov, skript, ktorý pre mňa používajú, nepracoval a vyústil do chyby pri načítaní jadra, takže tento krok preskočím.

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:

  1. Prístup ku konfigurácii virtuálneho stroja
  2. V časti Sieť ste už nakonfigurovali adaptér v NAT
  3. Vyhľadajte možnosť presmerovania portov
  4. Pridáte nové pravidlo s jedinými parametrami „hostiteľský port“ a „hosťovský port“
  5. 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:

  1. V parametri server napíšeme: sftp: // localhost
  2. V parametri username napíšeme: root
  3. Do parametra hesla vložíme to, ktoré používame do «passwd»
  4. Do parametra portu napíšeme: 3022
  5. 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 ...


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.

  1.   Lev dijo

    Aký dobrý sprievodca, trochu komplikovaný, ale veľmi užitočný.
    Dobrý príspevok.

  2.   Leper_Ivan dijo

    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é ..

  3.   Carlos Sanchez dijo

    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