Installer gentoo i VirtualBox

Installer gentoo i VirtualBox

Installere Gentoo som en VirtualBox VM

Gentoo er en av de mest esoteriske distribusjonene der ute. Det gir tilpassbarhet på bekostning av brukervennlighet. Det kaster imidlertid lys over den interne virkningen av en Linux -installasjon. Å eksperimentere med et gentoo -miljø i en VM er sannsynligvis en flott måte å begynne å lære om operativsystemer generelt.

La oss gå gjennom en trinn-for-trinn-prosess med å installere base-operativsystemet sammen med forklaringen bak hvert trinn.

Få riktige installasjonsmedier

Den enkleste måten å installere Gentoo er ved å bruke Hybrid ISO (levdvd). Noe som betyr at diskbildet kan brukes til å installere operativsystemet på en annen disk, eller at det bare kan brukes som et levende miljø å starte opp i for diagnostiske formål.

Du kan få bildefilen her. Velg den som tilhører maskinvareplattformen din. Moderne Intel- og AMD -prosessorer tilbyr vanligvis AMD64 -arkitektur.

Neste må du opprette en VM på VirtualBox. Åpne VirtualBox, og klikk på knappen som sier "Ny" Nå kan du oppgi navnet på VM og velge 'type' som Linux og 'versjon' som Gentoo 64-bit.

Angi minnestørrelsen til 2048MB og klikk deretter på "Opprett" for å fortsette med å lage virtuelle harddisk.

Standardverdiene vil fungere helt fint i dette tilfellet (selv om vi skal jobbe med 32 GB diskplass i stedet for 8 GB), og nå kan du klikke på 'Opprett' en siste gang for å fullføre detaljene.

Velg nå den nyopprettede VM fra VirtualBox Dashboard, og du blir bedt om med en oppstartsdisk. Klikk på filikonet ved siden av og i filutforskeren som åpnes etter det navigerer til Gentoo Livecd ISO -filen som du har lastet ned tidligere.

Når du har startet opp VM, vil du se oppstartsmenyen med følgende alternativer:

Å velge x86_64 er det mest passende alternativet i dette tilfellet.

Etter det vil du bli møtt med en påloggingsskjerm med standard gentoo -bruker, klikk på pålogging uten å legge inn noe passord (som angitt på skjermdumpen nedenfor).

Du er nå teknisk inne i et gentoo -operativsystem. Dette er imidlertid et live media, som betyr at du ikke kan bruke det som et system installert i din (virtuelle) harddisk. Men du kan bruke dette miljøet til å installere gentoo på din virtuelle harddisk.

Partisjonering av den virtuelle harddisken

De .VDI -disk som vi opprettet tidligere er bare en rå disk på dette tidspunktet, festet til den virtuelle maskinen og selve VM kjører Gentoo Live Media. Nå for å installere Gentoo -miljøet på denne disken slik at den kan starte seg selv, trenger vi å gjøre flere ting.

  1. Gjør disken oppstartbar.
  2. Formater disken med et filsystem
  3. Installer basen Gentoo -bildet på rotfilsystemet.

For å utføre den første oppgaven trenger vi bare å lage 4 partisjoner av følgende størrelse og helst i følgende rekkefølge.

  1. Bootloader -partisjon for grub: 50 MB i størrelse
  2. Oppstartspartisjon formatert ext4: 500MB i størrelse
  3. Bytt partisjon for byttefil: 2000MB i størrelse
  4. Rotpartisjon for hoved OS og beslektede binære filer å bo. Formatert med ext4 -filsystem og kommer til å ta det gjenværende flertallet av plassen til den virtuelle disken.

For å lage partisjonene trenger vi først for å få navnet på den virtuelle disken festet til systemet. Åpen terminal (Konsole) og løp sudo -i å bli rotbruker og deretter løpe LSBLK For å liste opp alle blokkeringsenheter.Enhetsnavnet i vårt tilfelle er SDA er SDA og det er av størrelse 32 GB. Neste må vi legge inn skilt verktøy for å dele opp denne disken. Å gjøre det løp, som rot:

$ delt -en optimal /dev /sda

Nå er vi i avgrenset verktøy CLI, la oss starte med å liste opp alle partisjonene ved å skrive utskrift:

Og vi får en feilmelding som sier at disken ikke er gjenkjent. Dette kan forventes siden installasjonsprosessen med Gentoo ikke er automatisert, du får manuelt konfigurere hver eneste små detalj, inkludert partisjonsdetaljer for basesystemet ditt. Første ting først, la oss gi disken vår en ordentlig etikett.

(skilt) mklabel gpt

GPT -etiketter er avgjørende for å identifisere en enhet på en måte selv etter, for eksempel, systemet starter på nytt, og enheten er koblet til en annen port denne etiketten vil være ansvarlig for å fortelle operativsystemet at disken nettopp har endret SATA -porter, men det er fremdeles de samme dataene og format som før.

Partisjon av disken ved å kjøre følgende kommandoer (linjer som starter med '#' -symbol er kommentarer for å forklare kommandoen over dem):

(skilt) enhet MB
#Setter enheten til megabyte
(skilt) mkpart primær 1 20
#Gjør en primær partisjon fra 1 megabyte til #20. for BIOS
(skilt) mkpart primær 21 500
#Partisjon /oppstartsfilsystem
(skilt) mkpart primær 501 2500
#Partisjon av størrelse 2000MB laget for bytte
(skilt) mkpart primær 2501 -1
#Partisjon for /(rot) filsystem. -1 indikerer det
#Denne partisjonen går helt opp til enden av disken.

Du kan se at hver partisjon har et tall og er av typen primær. De er imidlertid ikke formatert med noe bestemt filsystem eller har noen bruksnavn gitt eller flagg satt til dem. La oss gjøre det.

(skilt) navn 1 grub
(skilt) sett 1 bios_grub på
#Partisjonsnummer 1 har sitt BIOS_GRUB -flagg satt til en
#og får et passende navn.
(skilt) Navn 2 Boot
(skilt) Navn 3 Swap
(skilt) Navn 4 rot
(skilt) slutte

Etter å ha satt passende navn på alle de 4 partisjonene og 1 BIOS_GRUB -flagget til den første partisjonen, avslutter vi det avskjedige verktøyet. Nå går vi videre til å formatere partisjonene med et passende filsystem i vårt vanlige bash -skall (fremdeles som rotbruker) ved først å kjøre følgende kommando:

$ LSBLK
#For å liste opp all partisjonen og sjekke enhetsnodenavn

Du kan se at partisjonsordningen har merket den første partisjonen SDA1 som tilsvarer grub -partisjon og så videre og så videre til SDA4. Enhetene er til stede i /dev -katalogen som /dev /sda1, /dev /sda2 og så videre.

For å formatere dem deretter, kjør kommandoene:

$ MKFS.ext4 /dev /sda2
$ MKFS.ext4 /dev /sda4
$ mkswap /dev /sda3
$ Swapon /dev /sda3

Nå kan vi montere disse partisjonene i det nåværende levende miljøet slik at alle nødvendige operasjoner som å bygge kjernen kan utføres der inne og lagres vedvarende.

$ mount /dev /sda4 /mnt /gentoo
$ mkdir/mnt/gentoo/boot
$ montering/dev/sda2/mnt/gentoo/boot

Vårt vil være rotpartisjon er montert AT/MNT/Gentoo av det nåværende LiveCD -miljøet, og på samme måte vil vårt oppstartspartisjon montert på/mnt/gentoo/boot.

Få tarball og bruke chroot

Nå som vi har utarbeidet disken for oss, er det på tide at vi får tjæret til gentoo -kildekoden og plasserer den der inne. I live CD -miljøet åpner nettleseren denne lenken og klikker på Stage3 -arkivene under AMD64 -delen øverst på siden.

Når nedlastingen er fullført, kopierer du tarballen til /mnt/gentoo katalog og trekke ut det er innhold der inne.

$ cp/home/gentoo/nedlastinger/mnt/gentoo
$ tar XPF Stage3-*.tjære.xz --xattrs-include = '*.*'
--Numerisk eier

I den andre kommandoen brukes tjæreverktøyet til å komprimere tjærebalsen. xpf forteller TAR -kommandoen at vi vil x ekstrakt, p bevare tillatelser på filene og f For å antyde at vi henter ut filer og ikke standardinngang.

Filforlengelsen er kanskje ikke tjære.xz I ditt tilfelle. Observer navnet på tarballfilen din og skriv inn deretter.

De --xattrs-include En del av kommandoen bevarer attributtene (les, skriver og utfører) av individuelle filer

Og --Numerisk eier Sikrer en gruppe- og bruker -ID -nummer som godkjent av Gentoo -konvensjonen for et typisk oppsett.

Hvis du ser innholdet som vil bli trukket ut i din /mnt/gentoo katalog de ville ligne et typisk unix rotmiljø med katalog som /etc /sbin, etc. Ideen bak dette er at når alle filene som er nødvendige for et fungerende gentoo -miljø, hentes ut /mnt/gentooBruk verktøy og pakkeledere for å konfigurere det. Pakningssjefen ville gjøre endringer i / katalog, men det ville bli lurt til å gjøre endringer i /mnt/gentoo Katalog i stedet.

Siden vår vil være rotpartisjon er montert på denne katalogen, vil alle endringene bli gjort der borte, og da vil vi starte opp dette nye miljøet når vi er ferdige.

Men først, la oss gjøre noen få endringer i konfigurasjonsfilene:

$ nano/gentoo/mnt/etc/portage/make.konf

Etter CFLAGS linje Du bør legge til følgende linjer som vil la Portage behandle C ++ -filer på samme måte som C -filer. Portage er Gentoo's Package Manager, løst. Det brukes til å hente kildekode for programmer, slik at du kan samle dem alle (automatisk) på det opprinnelige systemet ditt.

$ Cxxflags = "$ cflags"

Kopier også resolv.Conf -fil fra LiveCD -miljøet ditt til den nye roten.

$ cp -l /etc /resolv.konf/mnt/gentoo/etc/

Nå sørger vi for at alle filsystemene som er nødvendige for at Linux -kjernen skal samle informasjon om systemet er tilgjengelige når det prøver å starte opp. Så vi tar informasjonen samlet inn av LiveCD -bildet om vår virtuelle maskin og dens maskinvare, og vi binder dem til vårt nye rotfilsystem.

$ mount -t proc /proc /mnt /gentoo /proc
$ Mount -RBIND /SYS /MNT /GENTOO /SYS
$ mount -robind /dev /mnt /gentoo /dev

Det er på tide for oss å chroot (endre rot) til /mnt/gentoo.

$ chroot /mnt /gentoo /bin /bash
$ kilde /etc /profil
$ eksport PS1 = ”(Chroot) $ PS1”

Å sammenstille Linux -kjernen

La oss synkronisere Portage Tree (Software Repository) med den offisielle versjonen. Dette ligner på APT -oppdatering i Ubuntu.

$ Emerge-Webrsync

Når den er ferdig, kan vi velge en profil for systemet vårt. Som i hovedsak stiller systemet for en spesifikk bruk-sak (server, arbeidsstasjon osv.). Vi skal gå med et KDE -plasmamiljø oppført på nummer seks.

$ eselect profilliste
$ eselect -profilsett 6

Tidssone og lokalkonfigurasjoner er neste:

$ ls/usr/share/soneinfo

Finn din plassering i denne katalogen. I dette tilfellet var det Asia/Dili

$ cp/usr/share/soneinfo/kontinent/by/etc/localime
$ ekko "Asia/dili">/etc/timezone

Neste ukomment stedets spesifikke tegnsett og språk du vil bruke fra filen /etc /locale.Gen. Vi ikke -unnlot linjen en oss.UTF-8 UTF-8.

$ nano /etc /locale.Gen

Bruk endringene:

$ Locale-Gen
$ env-update && kilde /etc /profil

Nå kan vi få Linux -kjernekilder og begynne å samle dem:

$ dukker opp gentoo-kilder
$ EMERGE GENKERNEL
$ Genkernel alle

Den siste kommandoen vil begynne å samle kjernen som vil ta lang tid, spesielt hvis du har begrensede maskinvareressurser.

Finpuss

Etter kjernesamlingen trenger vi bare å gjøre noen flere endringer som å installere grub, legge til en bruker og sørge for at operativsystemet monterer de essensielle filsystemene automatisk under oppstartsprosessen.

For å sikre at det siste av disse tingene skjer, rediger du filen i det chrootte miljøet /etc/fstab hvor fstab står for filsystemtabell:

$ nano /etc /fstab

Nederst i filen legg til følgende linjer:

/dev /sda2 /boot ext4 standardverdier, noatime 0 2
/dev /sda4 /ext4 noatime 0 1
/dev/sda3 ingen swap sw 0 0

Installer DHCP -klient slik at VM har nettverkstilkobling.

$ Emerge DHCPCD

Forsikre deg om at DHCP -klienten starter ved oppstartsprosessen:

$ rc-update legg til DHCPCD-standard

Å sette et passord for rotbrukeren er så enkelt som å legge inn kommandoen nedenfor og legge inn det nye passordet ditt når du blir bedt om det:

$ passwd

For å legge til en ny bruker som heter Bob Skriv inn kommandoen:

$ useradd -m -g brukere, hjul, portage -s /bin /bash bob
$ passwd bob ## Dette er for å angi et passord for bruker Bob

Vi trenger også sudo, så la oss installere det:

$ EMERGE SUDO

Og la medlemmene av Wheel Group utføre enhver vilkårlig kommando, vi må redigere /etc /sudoers -filen:

$ Visudo

Til slutt må vi installere og konfigurere Grub bootloader:

$ EMERGE GRUB
$ grub-install /dev /sda
$ GRUB -MKCONFIG -O/BOOT/GRUB/GRUB.CFG

Nå kan vi forlate Chroot -miljøet og demontere filsystemene:

$ exit
$ umount -l/mnt/gentoo/dev /shm,/pts,
$ umount -l/mnt/gentoo /boot,/proc,
$ Shutdown nå

Gå til VMs innstilling og i lagringsseksjonen, fjern det levdevd -bildet festet til VM.

Når du starter VM igjen, vil du bli møtt med et TTY -grensesnitt til det nylig installerte gentoo -operativsystemet. Logg inn som bruk av brukernavnet og passordet du valgte under installasjonen.

Konklusjon

Bare installasjonsprosessen for Gentoo avslører mye mer om den interne arbeid og strukturen under de fleste UNIX -miljøer. Hvis man ønsker å oppnå en dypere kunnskap om systemet, ville Gentoo -håndboken være et flott sted å starte!