/ Sådan startes Linux ISO-billeder direkte fra din harddisk

Sådan starter du Linux ISO-billeder direkte fra din harddisk

boot-iso-filer-direkte-fra-hard-drive-in-grub2

Linuxs GRUB2 boot loader kan starte Linux ISOfiler direkte fra din harddisk. Start Linux live-cd'er eller installer endda Linux på en anden harddiskpartition uden at brænde den til disk eller opstart fra et USB-drev.

Vi udførte denne proces på Ubuntu 14.04 - Ubuntu og Ubuntu-baserede Linux-distributioner har god støtte til dette. Andre Linux-distributioner skal fungere på lignende måde.

Hent en Linux ISO-fil

RELATEREDE: Sådan konfigureres GRUB2 Boot Loader's indstillinger

Dette trick kræver, at du har et Linux-systeminstalleret på din harddisk. Din computer skal bruge GRUB2 boot loader, som er en standard boot loader på de fleste Linux-systemer. Beklager, du kan ikke starte en Linux ISO-fil direkte fra et Windows-system ved hjælp af Windows boot loader.

Download de ISO-filer, du vil bruge og gemmedem på din Linux-partition. GRUB2 skal understøtte de fleste Linux-systemer. Hvis du vil bruge dem i et levende miljø uden at installere dem på din harddisk, skal du sørge for at downloade “live CD” -versioner af hver Linux ISO. Mange Linux-baserede opstartbare utility-diske skal også fungere.

Kontroller indholdet af ISO-filen

Det kan være nødvendigt at kigge inde i ISO-filen tilbestemme nøjagtigt, hvor specifikke filer er. For eksempel kan du gøre dette ved at åbne ISO-filen med den grafiske applikation Archive Manager / File Roller, der leveres med Ubuntu og andre GNOME-baserede desktopmiljøer. I Nautilus filhåndtering skal du højreklikke på ISO-filen og vælge Åbn med arkivhåndtering.

Find kernefilen og det indgående billede. Hvis du bruger en Ubuntu ISO-fil, finder du disse filer i casper-mappen - vmlinuz-filen er Linux-kernen, og den initrd-fil er det initrd-billede. Du bliver nødt til at kende deres placering i ISO-filen senere.

vmlinuz-og-initrd-fil-placeringer

Bestem harddiskpartitionens sti

GRUB bruger et andet "enhedsnavn" -skema end Linux gør. På et Linux-system er / dev / sda1 den første partition på den første harddisk - -en betyder den første harddisk og 1 betyder dens første partition. I GRUB svarer (hd0,1) til / dev / sda0. Det 0 betyder den første harddisk, mens 1 betyder den første partition på det. Med andre ord, i et GRUB-enhedsnavn begynder disknumrene at tælle ved 0, og partitionsnumrene begynder at tælle til 1 - ja, det er unødvendigt forvirrende. F.eks. Henviser (hd3,6) til den sjette partition på den fjerde harddisk.

Du kan bruge fdisk -l kommando til at se disse oplysninger. Åbn en terminal på Ubuntu og kør følgende kommando:

sudo fdisk -l

Du vil se en liste over Linux-enhedsstier, som du kan konvertere til GRUB-enhedsnavne på egen hånd. For eksempel kan vi nedenfor se systempartitionen er / dev / sda1 - så det er (hd0,1) for GRUB.

fdisk-l-kommando

Opret GRUB2 Boot Entry

Den nemmeste måde at tilføje en brugerdefineret startindgang er atrediger /etc/grub.d/40_custom scriptet. Denne fil er designet til brugerføjet brugerdefinerede bootindgange. Efter redigering af filen kombineres indholdet af din / etc / default / grub-fil og /etc/grub.d/-scripts for at oprette en /boot/grub/grub.cfg-fil - du skal ikke redigere denne fil ved hånd. Det er designet til automatisk at genereres fra indstillinger, du angiver i andre filer.

Du skal åbne /etc/grub.d/40_custom filen til redigering med rodrettigheder. På Ubuntu kan du gøre dette ved at åbne et terminalvindue og køre følgende kommando:

sudo gedit /etc/grub.d/40_custom

Åbn filen i din foretrukne teksteditor. For eksempel kan du erstatte “gedit” med “nano” i kommandoen for at åbne filen i Nano-teksteditoren.

Medmindre du har tilføjet andre brugerdefinerede bootindgange, skal du se en for det meste tom fil. Du skal tilføje en eller flere ISO-opstart-sektioner til filen under de kommenterede linjer.

add-custom-boot-menu-indgange-til-grub

Sådan kan du starte en Ubuntu eller Ubuntu-baseret distribution fra en ISO-fil. Vi testede dette med Ubuntu 14.04:

menuentry “Ubuntu 14.04 ISO”{
sæt isofile = ”/ Home / navn / Downloads /ubuntu-14.04.1-desktop-amd64.iso
loopback loop (Hd0,1)$ isofile
linux (loop) /casper/vmlinuz.efi boot = casper iso-scan / filnavn = $ {isofile} stille splash
initrd (loop) /casper/initrd.lz
}

Tilpas startposten til at indeholde dindet ønskede indtastningsnavn, den rigtige sti til ISO-filen på din computer og enhedsnavnet på harddisken og partitionen, der indeholder ISO-filen. Hvis vmlinuz- og initrd-filerne har forskellige navne eller stier, skal du også sørge for at specificere den rigtige sti til disse filer.

(Hvis du har en separat / home / partition, skal du udelade / home bit, som sådan: sæt isofile = ”/ navn / Downloads / $ {isoname}”).

Vigtig note: Forskellige Linux-distributioner kræver forskelligestartposter med forskellige startindstillinger. GRUB Live ISO Multiboot-projektet tilbyder en række menuposter til forskellige Linux-distributioner. Du skal være i stand til at tilpasse disse eksempelmenuindgange til den ISO-fil, du vil starte. Du kan også bare udføre en websøgning efter navnet og udgivelsesnummeret på den Linux-distribution, du vil starte sammen med "boot fra ISO i GRUB" for at finde mere information.

add-en-linux-iso-fil-til-grub boot-loader

Hvis du vil tilføje flere ISO-startindstillinger, skal du tilføje yderligere sektioner til filen.

Gem filen, når du er færdig. Vend tilbage til et terminalvindue og kør følgende kommando:

sudo update-grub

generere-grub.cfg mod ubuntu


Næste gang du starter din computer, ser du ISO-startindgangen, og du kan vælge den for at starte ISO-filen. Du skal muligvis holde Skift nede mens du starter for at se GRUB-menuen.

Hvis du ser en fejlmeddelelse eller en sort skærmNår du forsøger at starte ISO-filen, har du på en eller anden måde forkert konfigureret startposten. Selv hvis du har ISO-filstien og enhedsnavnet korrekt, kan stierne til vmlinuz- og intird-filerne på ISO-filen muligvis ikke være korrekte, eller det Linux-system, du starter, kræver muligvis forskellige indstillinger.