Tilpasse en RepairDisk: Veien til AKU

Mange er de gangene vi har hatt å reparere et system fra en LiveCD, og ​​på et tidspunkt i prosessen har vi savnet et verktøy, og når vi vil installere det, forteller LiveCD OS oss at det har gått tom for plass og hvitløk og vann (for å knulle av og holde på).

Dette problemet har virkelig kommet til meg på grunn av å gå inn i LFS (LinuxFromScratch), som er en guide (IKKE en distribusjon i seg selv) for å installere en tilpasset Linux. Poenget med denne "distribusjonen" er at fra hvilken som helst LiveCD, og ​​med de riktige verktøyene, laster du ned kjernekoden og andre verktøy for å bygge ditt eget system (kompilerer alt litt etter litt). Hvis du vil følge den trinnvise veiledningen, trenger du flere verktøy og kompilatorer, og det er ingen liveCD med alt, så du må tilpasse en.

La oss gjøre det. Vi vil bruke systemrescuecd, som tilbyr et ganske omfattende Gentoo-basert miljø.

I vårt eksempel (installere en Linux fra bunnen av etter Linux From Scratch-boken) mangler vi Bison- og Makeinfo-programmene, så vi skal lage et nytt ISO-bilde av denne disken, men med de nye verktøyene.

MERKNAD: Gentoo er en distribusjon som kompilerer in situ alle pakker som skal installeres, derfor går prosessen med å legge til og oppdatere programmer langsomt.

Selv om det brukes en pakkebehandling (som Debians apt-get), blir kildekoden lastet ned for å kompilere den på maskinen din, i stedet for å laste ned pakker.

For prosessen trenger du en Linux-partisjon (for eksempel ext4) med minst 1.5G gratis, selv om mer anbefales. Hvis du ikke vil fikle med partisjonene dine, kan du bruke en virtuell maskin. Det er selvfølgelig tilrådelig at partisjonen har flere spillejobber siden under kompilering, installasjon, synkronisering av arkiver ... det er behov for midlertidig plass; Jeg anbefaler at du bruker en 8G + 2G-byttepartisjon (med 4G + 1G bør det være nok, men så kan vi forsikre deg om at RAM / swap mangler, vil prosessen bli enda tregere).

Forutsatt at du har opprettet en virtuell maskin med en 10G-disk, starter du den med å fortelle den å starte fra det nylig nedlastede SystemRescueCd. En gang inne skiller vi oss med fdisk (hvis du har startet den grafiske økten, kan du gjøre det med gparted, men formålet med dette innlegget er å lære bruk av grunnleggende verktøy). fdisk er en interaktiv kommando:

  • med alternativet "n" oppretter vi en ny partisjon
  • med alternativet "t" endrer vi typen filsystem som skal gå i partisjonen
  • med alternativet «w» skriver vi til disken
  • med alternativet «q» forlater vi uten å skrive endringene

Når vi bruker "n" -alternativet, vil det gi oss flere alternativer, hele tiden vil vi bruke standard, bortsett fra når vi setter den siste sektoren i den første partisjonen, som vi må skrive "+ 8G", og dermed indikere til programmet at vi ønsker at partisjonen okkuperer 8 GB.

Når du oppretter den andre partisjonen, vil vi bruke standardalternativene siden resten av plassen vil være opptatt. For å fortelle fdisk at den andre partisjonen vil være av type bytte, bruk alternativet "t" (heksekoden for bytte er 82). Grensesnittet ser slik ut:

% fdisk / dev / sda Kommando (m for hjelp):

Når alt er gjort, bruker vi alternativet "w" for å skrive endringene til disken og avslutte.
Nå er det på tide å formatere partisjonene. Vi begynner med byttet for å kunne bruke det umiddelbart:

% mkswap / dev / sda2% swapon / dev / sda2

Vi har allerede byttepartisjonen formatert, og med kommandoen bytte vi har begynt å bruke den. Nå formaterer vi den første partisjonen i ext4:

% mkfs.ext4 /dev/sda1

Vi kan begynne å følge trinnene beskrevet i http://www.sysresccd.org/Sysresccd-manual-en_How_to_personalize_SystemRescueCd, her oversetter / beskriver jeg dem med den merkelige kommentaren.

Vi monterer partisjonen på sin plass (LiveCD kommer allerede forberedt med en mappe / mnt / tilpasset der partisjonen der vi vil gjøre de riktige endringene må monteres). Også etter montering må vi trekke ut filene fra disken, dette oppnås med et skript som allerede er klargjort. Skriptet vil ta en stund (siden det dumper hundrevis av megabyte minne), hvis du vil sjekke at det faktisk fungerer, går du til en annen terminal (med for eksempel Alt + F4) og gjør en df -h.

% mount / dev / sda2 / mnt / custom% / usr / sbin / sysresccd-custom extract

Hvis du nå navigerer innenfor / mnt / custom / customcd, vil du se flere mapper. I / mnt / custom / customcd / files rotfilsystemet er funnet. Nå er det på tide å fjerne det fremtidige nye systemet. Her skal jeg legge kommandoene, for mer informasjon om chroot kan du se denne veiledningen skrev jeg for en måned siden

% 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)

Vi er allerede i det rotte systemet, som vil være LiveCD-systemet når vi starter det. Vi installerer de manglende pakkene (bison og texinfo) ved hjelp av kommandoen dukke (som håndterer pakken med portage fra gentoo).

Først synkroniserer vi portagetreet (tilsvarende apt-get update)
# emerge-webrsync MERKNAD: vi bruker denne kommandoen i stedet for "emerge –sync" fordi den er raskere, siden den laster ned en tjærepakke fra nettet. Dette trinnet er nødvendig, fordi hvis du ikke dukker opp, vil det automatisk dukke opp –synkronisere og senke det.

Etter synkronisering av portagetreet kan vi fortsette å installere pakkene:

# emerge sys-devel / bison # emerge sys-devel / texinfo
bison vil ta litt tid å kompilere, være tålmodig

Vi lar chroot:# exit

Vi demonterer "/ proc" slik at de nye installerte pakkene lagres i squashfs. Vi demonterer også "/ dev" og "/ sys" slik at vi ikke glemmer det senere
% umount /mnt/custom/customcd/files/proc
% umount /mnt/custom/customcd/files/dev
% umount /mnt/custom/customcd/files/sys

Siden vi allerede har det nye squash-filsystemet klart, oppretter vi det med følgende kommando
% /usr/sbin/sysresccd-custom squashfs
Hvis vi vil legge til en fil i ISO-bildet, men vi vil at den skal være utenfor squashfs, må vi legge den i mappen «/ mnt / custom / customcd / isoroot»

% cp -a my-files /mnt/custom/customcd/isoroot

På dette punktet forteller den offisielle guiden deg at du kan stille tastaturet til å starte med et standardtastatur (for eksempel "es" for spanske tastaturer). Men når jeg gjorde flere tester, fungerte ikke skriptet de brukte for meg, og det resulterte i en feil under innlasting av kjernen, så jeg hopper over dette trinnet.

Det strålende øyeblikket har kommet, vi kan nå generere det nye ISO-bildet med vårt tilpassede system!
% /usr/sbin/sysresccd-custom isogen my_srcd
"My_srcd" er navnet vi gir til volumet, du kan kalle det hva du vil. Bildet lagres i «/ mnt / custom / customcd / isofile», i tillegg genereres også en .md5-fil 🙂

Hvis du jobber på en virtuell disk, er det avgjørende trinnet fortsatt: trekk ut ISO-bildet til det virtuelle systemet. Det er flere måter å gjøre det på, jeg vil forklare en enkel (i VirtualBox) for å unngå å måtte installere "gjestetillegg" eller noe sånt.
Vi vil bruke klienten til å skaffe filen gjennom en ssh-tunnel. For å gjøre dette må vi først konfigurere gjestesystemet med et root-passord. Ssh-serveren starter automatisk, vi starter den på nytt bare i tilfelle det er tilfelle.
% passwd
% /etc/init.d/sshd restart

Vi må konfigurere portoverføring av den virtuelle maskinen. I VirtualBox gjøres det som følger:

  1. Du får tilgang til den virtuelle maskinkonfigurasjonen
  2. I nettverksdelen har du allerede konfigurert en adapter i NAT
  3. Se etter alternativet for portvideresending
  4. Du legger til en ny regel, med de eneste parameterne "vertsport" og "gjesteport"
  5. vert = 3022 og gjest = 22

Med dette har vi oppnådd at port 3022 på PCen vår er 22 på den virtuelle maskinen. Vi starter Filezilla-klienten:

  1. I serverparameteren skriver vi: sftp: // localhost
  2. I brukernavnparameteren skriver vi: root
  3. I passordparameteren setter vi den vi bruker i «passwd»
  4. I portparameteren skriver vi: 3022
  5. Klikk på «Rask tilkobling»

Hvis alt har gått bra til venstre, kan vi navigere på PC-en vår og til høyre i den virtuelle maskinen. Bare få tilgang til (på den virtuelle maskinen) mappen "/ mnt / custom / customcd / isofile" og dra ISO-bildet til stedet vi vil ha på PCen vår.

!! Gratulerer!! Hvis alt gikk bra, har du ISO-bildet ditt klart med et tilpasset SystemRescueCD og klar til å starte fra en CD, USB ...


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   Leo sa

    For en god guide, noe komplisert, men veldig nyttig.
    Godt bidrag.

  2.   Leper_Ivan sa

    Så med litt mer tid, og uten så mye ubehag i øynene, vil jeg lese det grundig. Det virker veldig nyttig og interessant.

  3.   carlos sanchez sa

    Hei woqer, veldig bra innlegg!

    Jeg har vært med LFS i noen år, og jeg har laget min egen iso som kan tjene deg, den har alt du trenger å kompilere siden den er en LFS. Hope Jeg håper det er nyttig for deg

    http://vegnux.org.ve/files/isos/neonatox-06.2rc6.linux-i686-xfce4.iso