Hur man återställa raderade filer på Linux med Testdisk

Nov 18, 2024
Linux
Fatmawati Achmad Zaenuri / Shutterstock

Har du någonsin raderat en fil och omedelbart beklagade det? Du behöver det tillbaka och snabbt! Men vad händer om filen är så ny, har den ännu inte säkerhetskopierats? Lyckligtvis finns det något du kan göra åt det.

RM: Kort för ånger?

Det är alltför lätt att använda rm kommando Och hitta dig att stirra i ett terminalfönster med en fördjupning av ånger. Ett litet misstag med jokertecken, och du kan utplåna mycket mer än du tänkte.

Standard Linux-filsystemet, ext4 använder inoder För att hålla data om varje fil och ett inodtabell för att hålla reda på inoderna. Inoden innehåller metadata om filen, till exempel namnet, som äger det, vad behörigheterna är och så vidare.

Det innehåller också inmatningspunkter till hårda länkar som pekar på filen. Varje fil har minst en hård länk. Varje gång du skapar en ny hård länk ökar det hårda länkräkningen av en. Varje gång du tar bort en hård länk reduceras det hårda länkräkningen i Inoden med en.

När du tar bort en fil har Inode markerat som oanvänd (och klar för återanvändning), den sista hårda länken tas bort. När det händer visas filen inte i katalogförteckningar, och det kan inte användas eller nås.

De data som utgjorde innehållet i filen är dock fortfarande närvarande på hårddisken. Om du kunde ladda inode så det innehöll rätt information, men filen skulle återställas. Naturligtvis skulle det bara fungera om de data som utgör filen på hårddisken förblir intakt och skrivs inte över.

Alternativt kan du skapa en ny inode, kopiera de överlevande data från den gamla inoden och ersätta sedan de saknade bitarna.

Det är nontrivial aktiviteter. Vanligtvis, när du tar bort en fil av misstag, är det på det värsta möjliga ögonblicket. Det är alltid när du behöver den filen, och du behöver det nu. Du har inte tid att komma ner och smutsiga med sektorsredaktörer och andra verktyg. Plus, om det är en fil du just skapat, har det troligtvis inte spelats upp, så de hjälper dig inte heller.

Det här testdisk kommer in. Det är lätt att använda och kräver inte detaljerad, låg nivå kunskap om filsystemet. Låt oss ta en titt på hur du använder det!

RELATERAD: Allt du någonsin velat veta om inoder på Linux

Installera TestDisk

Att installera testdisk På Ubuntu, använd det här kommandot:

 sudo apt-få installera testdisk 

På Fedora måste du skriva:

 sudo dnf installera testdisk 

På Manjaro måste du använda Pac Man :

 sudo pacman -sy testdisk 

Använder testdisk

Även om det går i ett terminalfönster, testdisk har ett rudimentärt gränssnitt. Du använder piltangenterna för att navigera och ange för att göra ett urval. För att hålla saker snyggt är det bäst att skapa en katalog för återställda filer.

Vi skriver följande för att skapa en katalog som heter "Restored" för våra återställda filer:

 MKDIR återställdes 

Vi skriver följande för att växla till den nya katalogen och starta testdisk därifrån:

 CD återställd / 

Vi måste använda sudo med testdisk , så vi skriver följande:

 sudo testdisk 

Den första frågan testdisk frågar handlar om loggning. Det kan skapa en ny loggfil, använd en befintlig, eller logga inte alls alls. Det spelar ingen roll vilket alternativ du väljer; Det kommer inte att påverka vägen testdisk opererar.

Du kan bara trycka på ENTER för att acceptera det markerade alternativet och skapa en ny loggfil. Den kommer att skapas i katalogen från vilken du startade testdisk . När du gör ditt val, testdisk Frågar vilken hårddisk som håller det filsystem du vill arbeta med.

Det listar de hårddiskar som den kan hitta, liksom squashfs "/ Dev / loop" -filer. Det kommer att bli en av dessa för varje applikation du har installerat från a knäppa . De är skrivskyddade, så du borde inte ha lyckats radera någonting från dessa filsystem.

Det finns bara en fysisk hårddisk i den här testdatorn, så vi använde pilen för att markera alternativet "/ dev / sda". Vi använde sedan den högra pilen för att välja "Fortsätt" och sedan trycker på Enter.

testdisk Behöver också veta partitionstypen. Det presenterar en meny med alternativ, tillsammans med den typ av partition det är autodetekterat längst ner.

Om du inte har en bra anledning att inte, markera den typ av partition som är autodetekterad och tryck sedan på ENTER.

I funktionsmenyn som visas, markera "Avancerat" och tryck sedan på ENTER.

Partitionsvalmenyn visas.

De filer vi letar efter är i Linux-filsystempartitionen. Vi har bara en Linux-partition på vår hårddisk, men du kan ha mer.

Välj den partition som dina filer var på, använd vänster och höger piltangenter för att välja "LIST," och tryck sedan på ENTER. Fil-valmenyn visas.

Använd upp och nerpilarna eller PGUP- och PGDN-tangenterna för att navigera på listan med filer och kataloger. Tryck på högerpil eller ENTER för att ange en katalog och den vänstra pilen eller ESC för att avsluta en katalog.

Vi letar efter filer som ägdes av dave . Filerna för alla användarkonton finns i "Hem" -katalogen. Så, vi markerar "hem" -katalogen, och sedan kan vi trycka antingen på högerpil eller ENTER för att ange den katalogen.

Alla användarkonton listas sedan för oss. Vi markerar dave , och tryck sedan på högerpilen eller ENTER för att ange den katalogen.

Vi kan nu se de filer som hör till dave konto. Inlägget i rött har raderats. Vi navigerar genom filerna och katalogerna tills vi hittar de filer vi vill återhämta sig.

För att återställa en fil, markera den bara och tryck sedan på c (små bokstäver).

Skärmen ändras och berättar att du väljer en destination för den återställda filen. Eftersom vi skapade en katalog som heter "återställd" och började testdisk Från det är den första posten i listan (.) den katalogen. För att återställa den här raderade filen till den katalogen, trycker vi på C (versaler).

När du har gjort det, returneras du till filvalskärmen. Om du vill återställa fler filer, upprepa bara processen. Markera en raderad fil, tryck på C (små bokstäver) för att kopiera den och tryck sedan på c (versaler) för att återställa den.

Arbeta med återställda filer

När du har återställt en fil, rekonstrueras katalogträdet till sin ursprungliga plats, vilket är användbart eftersom det påminner dig var på hårddisken den ursprungliga filen som används för att bo. Det betyder att om du behöver kopiera tillbaka det, vet du var du ska sätta det.

Om du återställer ett antal filer från olika filsystem som råkar ha samma filnamn, måste de lagras separat ändå.

Du kan skriva in följande för att se innehållet i katalogen "Återställd":

 LS 

Om du frågade testdisk För att skapa en loggfil kommer den att vara i katalogen "Återställda". Eftersom våra återställda filer var belägna på "/ home / dave", har de kopierats till vår "återställda" katalog, nestade i kataloger med samma namn.

Vi kan ändra till den kopierade "Dave" -katalogen med CD . Se till att du inte innehåller ett ledande framåtspel ( / ) På vägen-du vill byta till det lokala "hemmet", inte systemet "/ hem."

Vi skriver följande:

 CD Hem / Dave 

De återställda filerna är i den katalogen, så vi skriver:

 LS 

Låt oss ta en annan titt på de återställda filerna med hjälp av -l (lång notering) alternativ:

ls -l

Eftersom vi använde sudo att avfyra testdisk De återställda filerna har återställts med "root" som ägare. Vi kan ändra ägaren tillbaka till "Dave" med chown :

 sudo chown dave.dave * 

Vi skriver följande för att se till att rätt ägande har återställts:

 ls -l 

TestDisk: Kod för lättnad

Den känslan av lättnad efter att du återhämtat en viktig fil som, för ett ögonblick sedan, kände sig oåterkalleligt förlorad, är något du alltid kommer att uppskatta.

Det är därför testdisk är ett sådant praktiskt verktyg. När du har gjort det genom menyerna och kan börja återställa filer, är det lätt att falla i en rytm av höjdpunkt, C, C, upprepa.


Linux - Mest populära artiklar

Hur man använder DB-webbläsare för sqlite på Linux

Linux Dec 16, 2024

Fatmawati Achmad Zaenuri / Shutterstock DB Browser för sqlite Låter dig visa och redigera sqlite-databaser på Linux. Du kan designa, skapa och redi..


Hur hanterar Linux-servrar med cockpit-webbgränssnittet

Linux Dec 9, 2024

Fatmawati Achmad Zaenuri / Shutterstock Du kan enkelt övervaka och hantera flera Linux-datorer med cockpit, ett webbläsarbaserat administration och dashboard..


Hur att låsa din Mac med Terminal

Linux Feb 16, 2025

En av de första reglerna för cybersäkerhet är att alltid låsa din dator innan du går bort från den. Även om det kanske inte är det snabbaste sättet, kan du låsa din Apple Mac ..


Hur man använder FSCK-kommandot på Linux

Linux Aug 18, 2025

Pixza Studio / Shutterstock Alla våra viktiga data sitter i ett filsystem av en eller annan typ, och filsystem frågor är bundna att hända. På Linux, kan v..


Vad är nytt i Linux Kernel 5.14

Linux Sep 9, 2025

Sean Locke Photography / Shutterstock Eftersom Linux varv 30 år gammal har Kernel 5.14 släppts. Den innehåller det vanliga breda erbjudandet av inre under-t..


Vad är Pop! _OS?

Linux Oct 20, 2025

Om du har hört talas om Pop! _OS , Du kanske har sett människor som ofta hänvisar till det som det bästa Windows-alternativet eller den perfekta Linux-distributionen för ..


Hur uppdaterar Fedora Linux

Linux Nov 10, 2024

Så, du äntligen laddat ner och installerade Fedora Linux, men nu kan du undra, hur håller du ditt system uppdaterat? Tack och lov, Fedora ger dig ett par metoder för systemuppdateringa..


Hur man spolar DNS i Linux

Linux Nov 14, 2024

Är din internet -surfupplevelse långsam på din Linux -enhet, eller är de webbplatser du besöker föråldrade eller fel webbplats helt? Låt oss diskutera Flushing DNS -cachen på Linux och..


Kategorier