Sådan kører du ISO-filer direkte fra harddisken med GRUB2
De fleste Linux distros tilbyder et levende miljø, som du kan starte op fra et USB-drev, så du kan teste systemet uden at installere. Du kan enten bruge det til at evaluere distro eller som en engangs OS. Selvom det er nemt at kopiere disse på en USB-disk, kan man i visse tilfælde ofte køre det samme ISO-billede ofte eller køre forskellige dem regelmæssigt. GRUB 2 kan konfigureres, så du ikke behøver at brænde ISO'erne til disk eller bruge et USB-drev, men skal køre et levende miljø direkte fra opstartsmenuen.
Indhentning og kontrol af bootable ISO-billeder
For at få et ISO-billede, skal du normalt besøge hjemmesiden for den ønskede distribution og downloade ethvert billede, der er kompatibelt med din opsætning. Hvis billedet kan startes fra en USB, skal det også kunne starte fra GRUB-menuen.
Når billedet er færdigt med at downloade, skal du kontrollere dets integritet ved at køre en simpel md5 check på den. Dette vil udgive en lang kombination af tal og alfanumeriske tegn
som du kan sammenligne med MD5 checksummen på download siden. De to skal være ens.
Opsætning af GRUB 2
ISO-billeder indeholder komplette systemer. Alt du skal gøre er at henvise GRUB2 til den relevante fil, og fortæl det, hvor det kan finde kernen og initramdisk- eller initram-filsystemet (afhængigt af hvilken din distribution bruger).
I dette eksempel oprettes et Kubuntu 15.04 levende miljø til at køre på en Ubuntu 14.04 boks som en Grub menupunkt. Det skal fungere for de fleste nyere Ubuntu-baserede systemer og derivater.
I dette eksempel er filen kubuntu-15.04-desktop-amd64.iso
bor i /home/maketecheasier/TempISOs/
on /dev/sda1
.
For at få GRUB2 til at kigge efter det på det rigtige sted, skal du redigere
/etc/grub.d/40_custom
fil, som giver dig mulighed for at tilføje dine egne menuposter. Filen skal allerede eksistere og indeholde nogle få linjer.
For at starte Kubuntu fra ovenstående placering skal du tilføje følgende kode (efter justering til dine behov) under det kommenterede afsnit uden at ændre det oprindelige indhold.
menupunkt "Kubuntu 15.04 ISO" {set isofile = "/ home / maketecheasier / TempISOs / kubuntu-15.04-desktop-amd64.iso" loopback loop (hd0, 1) $ isofile echo "Start $ isofile ..." linux /casper/vmlinuz.efi boot = casper iso-scan / filnavn = $ {isofile} quiet splash initrd (loop) /casper/initrd.lz}
Bryder ned ovenstående kode
Opret først en variabel med navnet $menuentry
. Det er her, hvor ISO-filen er placeret. Hvis du vil skifte til en anden ISO, skal du ændre den bit, hvor den angives, er isofile="/path/to/file/name-of-iso-file-.iso"
.
Den næste linje er, hvor du angiver loopback-enheden; du skal også give det det rigtige partitionsnummer. Dette er den smule, hvor det står
loopback loop (hd0, 1) $ isofile
Bemærk hd0, 1
bit; det er vigtigt. Dette betyder første HDD, første partition ( /dev/sda1
).
GRUBs navngivning her er lidt forvirrende. For HDD'er begynder det at tælle fra "0", hvilket gør den første HDD # 0, den anden ene # 1, den tredje ene # 2 osv. Men for partitioner begynder det at tælle fra 1. Første partition er # 1, andet er # 2 osv. Der kan være en god grund til dette, men ikke nødvendigvis en sane en (UX-wise det er en katastrofe, for at være sikker) ..
Dette gør knytnæve disk, første partition, som i Linux normalt ville se noget som /dev/sda1
bliver hd0, 1
i GRUB2. Den anden disk, tredje partition ville være hd1, 3
og så videre.
Den næste vigtige linje er
linux (loop) /casper/vmlinuz.efi boot = casper iso-scan / filnavn = $ {isofile} stille stænk
Det vil indlæse kernelbilledet. På nyere Ubuntu Live CD'er ville dette være i /casper
biblioteket og kaldes vmlinuz.efi
. Hvis du bruger et andet system, kan din kernel mangle .efi
udvidelsen eller være placeret et andet sted helt. (Du kan nemt kontrollere dette ved at åbne ISO-filen med en arkivleder og se inde /casper.
). De sidste muligheder, quiet splash,
ville være dine faste GRUB muligheder, hvis du plejer at ændre dem.
Endelig
initrd (loop) /casper/initrd.lz
vil indlæse initrd
, som er ansvarlig for at indlæse en RAMDisk til hukommelse til opstart.
Opstart i dit live system
For at få det til at fungere, skal du kun opdatere GRUB2
sudo update-grub
Når du genstarter dit system, skal du præsenteres med en ny GRUB-indgang, som giver dig mulighed for at indlæse det ISO-billede, du lige har oprettet.
Hvis du vælger den nye post, skal du starte dig i livemiljøet, ligesom opstart fra en dvd eller USB ville.