Sådan migreres Ext2 eller Ext3 filsystemer til Ext4 på Linux

Ved du, at du bør opgradere dit Linux-filsystem, men kan du ikke klare forværringen? Sådan konverterer du ext2 og ext3 til ext4 uden omvæltningen af ​​en komplet geninstallation.

Linux filsystemer

Hvis du var høflig, ville du ringe til ext3 filsystem ærværdigt, lanceret som det gjorde helt tilbage i 2001. Hvad angår stakkels gamle ext2, det filsystem stammer fra 1993, og der er intet andet ord for det end gammelt. I computertermer er ext3 en antikvitet. Og ext2 er et arkæologisk fund.

Det moderne filsystem i Linux-verdenen er ext4, som var udgivet i 2008. Den er hurtigere, mindre tilbøjelig til fragmentering, i stand til at håndtere større filsystemer – og større filer – den har mere nøjagtige fildato-stempler, og har vi nævnt, at den er hurtigere? Meget hurtigere.

OK, jeg er solgt – lad os gøre dette

Lad os tænke dette igennem. Faktisk ønsker du sandsynligvis ikke at opgradere dit filsystem.

Det giver mere mening at opgradere hele dit Linux-system i stedet for. Med opgradering mener vi at tage et par sikkerhedskopier af data, slette dit system, geninstallere en moderne distribution og gendan dine data. Gå efter den komplette opdatering. Få fordelene ved en moderne Linux-distribution med opdateret software samt et rent, aktuelt og nyinstalleret filsystem.

Hvis du ikke kan køre en moderne Linux på din hardware, kan selv en af ​​de lette distributioner f.eks Lubuntu, LinuxLite eller CrunchBang++, og du skal absolut holde dig til den Linux, du har, er der stadig forbehold.

For at opgradere dit filsystem til ext4, skal du bruge kerneversion 2.6.28 eller nyere. Så hvis du ikke har den version af kernen eller en nyere version, skal du først opgradere din kerne.

Advarsel: Tænk ikke engang på at prøve dette uden at opfylde kravene til kerneversionen. Du ender med en computer, der ikke kan startes. Tjek hvilken kerneversion du bruger, før du fortsætter.

Sørg for, at du har en installationsdisk til den version af Linux, du bruger i øjeblikket, og hold den på standby. Opgradering af dit filsystem er ikke uden farer.

Sikkerhedskopier er dit sikkerhedsnet. Før du gør noget, skal du lave et par datasikkerhedskopier til forskellige sikkerhedskopieringsmedier og sørge for, at du har den gamle Linux-installationsdisk ved hånden. Hvis noget går galt, kan du derefter geninstallere din gamle Linux og gendanne dine data.

  Sådan installeres Upterm på Linux

Du skal også bruge en aktuel Live CD/DVD af en moderne Linux-distribution til at udføre filsystemopgraderingen med. Så sørg for, at du også har en af ​​dem ved hånden.

I øvrigt blev denne artikel undersøgt ved hjælp af en installation af Ubuntu Jaunty Jackalope, som blev udgivet i april 2009. Den brugte ext3 som filsystem.

Stadig med os?

John Wayne sagde, at mod var rædselsslagen, men stadig sadlede op alligevel. Jeg beundrer dit mod.

Den første ting vi skal gøre er at tjekke kerneversionen med uname. Kommandoen uname kan vise forskellige typer systemoplysninger.

Åbn et terminalvindue på din gamle Linux-computer og skriv følgende kommando. Skriv uname , et mellemrum, -r, og tryk derefter på Enter.

uname -r

Versionen af ​​Linux på denne computer bruger kerneversion 2.6.28-11, så vi har opfyldt kerneversionskravet.

Seriøst, hvis du ikke har opfyldt dette krav, så stop nu. Tæt nok på er bare ikke nok. Du skal opfylde eller overskride dette kerneversionsnummer.

Nu vil vi tjekke diskidentifikatorerne med blkid, som identificerer blokenhederne på systemet.

blkid

Dette system har en enkelt harddisk (sda), som har et filsystem på sig (sda1), som er monteret på /dev/sda1. Dette er et ext3 filsystem. Dette er det filsystem, vi skal konvertere.

Der er også et filsystem kaldet swap, men det interesserer os ikke.

Genstart med Live CD’en

Indsæt Live CD’en og genstart din computer. Du skal muligvis trykke på en tast under genstarten for at få computeren til at starte fra cd’en. Tasten, der skal trykkes, vises i de tidlige stadier af opstartsprocessen. Vær hurtig – mulighedsvinduet varer ikke længe. Hvis du savner det, genstart og prøv igen.

Når du har startet op i Live CD-miljøet, skal du sørge for, at du ikke ved et uheld starter en installation. Tag dig tid til at læse de muligheder, du får, og hvis der er en, der siger noget, der ligner “Prøv distributionsnavn”, skal du vælge den mulighed.

Bliv rod

Åbn et terminalvindue og skriv følgende kommando. Dette får dig effektivt til at roote og betyder, at du ikke behøver at skrive sudo foran hver kommando.

sudo bash

Bemærk, at kommandoprompten er ændret. Du er rod. Træd forsigtigt.

Identificer filsystemerne

Vi er nødt til at identificere filsystemerne endnu en gang for at se, hvordan de dukker op i denne forekomst af Linux.

fdisk -l

Du vil se noget output, der ligner det følgende.

  Sådan bruges og installeres FlatPak på Linux

Filsystemet, vi tidligere identificerede som sda1, er blevet fundet og genkendt af Live CD Linux. Det er den første mini-milepæl.

Den anden er at konvertere filsystemet.

Konvertering af filsystemet

Der er to kommandoer anført her, én til konvertering fra ext2 til ext4 og én til konvertering fra ext3 til ext4. Sørg for at bruge den rigtige for dig!

For at konvertere fra ext2 til ext4 skal du bruge dette:

tune2fs -O extents,uninit_bg,dir_index,has_journal /dev/sda1

For at konvertere fra ext3 til ext4 skal du bruge dette:

tune2fs -O extents,uninit_bg,dir_index /dev/sda1

Det er lidt overvældende, da der ikke ser ud til at ske meget. Du vender tilbage til kommandoprompten. Hvis du ser noget output, vil det sandsynligvis være fejlmeddelelser. Så ingen nyheder er gode nyheder her.

Tjek filsystemet

Selvom ingen fejl blev markeret, lad os være grundige og tjekke hele filsystemet for problemer. Vi vil bruge en kommando kaldet e2fsck. Dette er et værktøj, der bruges til at kontrollere filsystemers integritet. Den kan også forsøge at reparere eventuelle problemer, den finder. e2fsck-værktøjet fungerer med ext2, ext3 og også ext4 filsystemer.

Indstillingen -p (preen) får e2fsck til at forsøge at reparere fejl, og -f (force) muligheden får e2fsck til at tjekke filsystemet, selvom filsystemet virker rent.

e2fsck -pf /dev/sda1

Ingen fejl blev rapporteret. Vi kan nu prøve at montere filsystemet.

Montering af filsystemet

Vi er nødt til at justere filsystemtabellen (fstab) og grub bootloader til at arbejde med det konverterede filsystem. For at gøre dette skal vi montere filsystemet. Vi skal montere den på /mnt. Vi identificerede filsystemet som sda1 tidligere, så vores kommando er:

mount -t ext4 /dev/sda1 /mnt

Nu hvor det er monteret, skulle vi være i stand til at liste filsystemet. Lad os tjekke det. Roden af ​​filsystemet vil være ved monteringspunktet, /mnt.

ls /mnt

Det er opmuntrende. Det ser ud til, at vi ville forvente det.

Redigering af fstab

Vi er nødt til at redigere fstab-filen og ændre eventuelle referencer for ext3 (eller ext2, hvis det er det filsystem, du har konverteret fra) til ext4.

Live-cd’en, der bruges i dette eksempel, har nano-editoren. Det er en simpel lille editor, så den bruger vi. Hvis nano ikke er tilgængelig på din Live CD, vil der være en anden editor, som vil være blevet bundtet af Linux-distributionen på CD’en.

nano /mnt/etc/fstab

Nano-editorvinduet vises. Du skal kigge efter forekomster af strengen “ext3” eller “ext2” og ændre dem til “ext4”. I dette eksempel var der én forekomst af ext3, som er fremhævet.

  De 6 bedste Markdown-editorer til Linux

ext3 blev erstattet af ext4.

Du skal gemme filen og afslutte editoren. I nano gemmer Ctrl+O filen, og Ctrl+X lukker editoren.

Opgradering af grub

Fordi vi har monteret sda1-filsystemet på /mnt, er stierne til mapperne i filsystemet i praksis alle blevet flyttet et niveau dybere end normalt. Det er derfor den sti, vi gav til nano, var /mnt/etc/fstab i stedet for den sædvanlige /etc/fstab.

Fordi grub forventer at finde ting visse steder, er vi nødt til at få filsystemet til at se ud som om det var monteret normalt. Vi har brug for, at roden af ​​filsystemet er ved / og ikke ved /mnt. Chroot-kommandoen giver os mulighed for at køre en kommandoskal og til angiv rodpunktet vi ønsker at bruge.

Kommandoen vi bruger er:

chroot /mnt

Bemærk, at kommandoprompten er ændret.

Vi kan nu udstede update-grub-kommandoen for at få grub til at læse fstab-filen og omkonfigurere sig selv.

update-grub

.

Når grub har omkonfigureret sig selv, skal vi installere en ny forekomst af grub på harddisken. Bemærk, at dette er harddisken sda, ikke filsystemet sda1. Inkluder ikke “1”, bare skriv “sda”.

grub-install /dev/sda

Genstart din Linux

Genstart dit system og fjern Live CD’en. Når dit system er genstartet, skal du åbne et terminalvindue og indtaste følgende kommando:

blkid

Som vi kan se, er filsystemet nu et ext4 filsystem.

Maskinen, som denne artikel blev undersøgt på, tog så lang tid at genstarte (over ti minutter), at det blev antaget, at noget var gået galt, og at den aldrig ville komme op igen.

Måske var det fordi det var en virtuel maskine, eller måske finder noget af filsystemkonverteringen sted under den første opstart. Uanset hvad, så vandt tålmodigheden ud, og den dukkede til sidst op igen. Hvis din maskine gør noget lignende, så vent det ud. Alt er måske ikke tabt.

Efterfølgende genstarter var lige så hurtige som normalt.

Opgrader din Linux i stedet

Nå, vi nåede dertil. Men du står stadig tilbage med en ikke-standard hybrid, der bruger en gammel Linux-udgivelse på et moderne filsystem.

Hvis det er vigtigt for dig at flytte til et nyt filsystem, og din hardware kan klare det, er flytning til en nuværende Linux-distribution den bedste vej at tage. Du vil nyde alle de andre sikkerheds- og softwarefordele, der kommer af at gøre det.

Alligevel, hvis der ikke er andet for det – og nogle gange har vi ikke de muligheder, vi ville ønske, vi havde – vil disse trin tillade dig at opgradere dit filsystem.