Eine Abbildung eines Terminalfensters auf einem Linux-Computer.

Fatmawati Achmad Zaenuri/Shutterstock

Wie man Switch-Spiele moddet

Haben Sie schon einmal eine Datei gelöscht und es sofort bereut? Sie brauchen es zurück, und zwar schnell! Aber was ist, wenn die Datei so neu ist, dass sie noch nicht gesichert wurde? Glücklicherweise können Sie etwas dagegen tun.



rm: Kurz für Reue?

Die Bedienung ist ganz einfach |_+_| Befehl und finden Sie sich mit einem tieferen Gefühl des Bedauerns auf ein Terminalfenster starren. Ein kleiner Fehler mit Wildcards, und Sie können viel mehr auslöschen, als Sie beabsichtigt haben.

Das standardmäßige Linux-Dateisystem |_+_| verwendet Inodes um Daten über jede Datei und eine Inode-Tabelle zu speichern, um die Inodes zu verfolgen. Der Inode enthält Metadaten über die Datei, z. B. den Namen, den Eigentümer, die Berechtigungen usw.

Es enthält auch Einstiegspunkte zu Hardlinks, die auf die Datei verweisen. Jede Datei hat mindestens einen Hardlink. Jedes Mal, wenn Sie einen neuen Hardlink erstellen, erhöht sich die Anzahl der Hardlinks um eins. Jedes Mal, wenn Sie einen Hardlink entfernen, wird die Anzahl der Hardlinks im Inode um eins reduziert.

Wenn Sie eine Datei löschen, die der Inode als unbenutzt (und zur Wiederverwendung bereit) markiert hat, wird der letzte Hardlink entfernt. In diesem Fall wird die Datei nicht in den Verzeichnislisten angezeigt und kann nicht verwendet oder darauf zugegriffen werden.

Anzeige

Die Daten, aus denen der Inhalt der Datei bestand, sind jedoch weiterhin auf der Festplatte vorhanden. Wenn Sie den Inode jedoch so patchen könnten, dass er die richtigen Informationen enthält, würde die Datei wiederhergestellt. Dies würde natürlich nur funktionieren, wenn die Daten, aus denen die Datei auf der Festplatte besteht, intakt bleiben und nicht überschrieben werden.

Alternativ können Sie einen neuen Inode erstellen, die verbleibenden Daten vom alten Inode kopieren und dann die fehlenden Bits ersetzen.

Das sind nicht triviale Aktivitäten. Wenn Sie eine Datei versehentlich löschen, ist dies normalerweise der ungünstigste Moment. Es ist immer dann, wenn Sie diese Datei benötigen, und Sie brauchen sie jetzt. Sie haben keine Zeit, sich mit Sektoreditoren und anderen Dienstprogrammen zu beschäftigen. Wenn es sich um eine Datei handelt, die Sie gerade erstellt haben, wurde sie wahrscheinlich noch nicht gesichert, sodass Ihnen diese auch nicht weiterhelfen.

Hier, wo |_+_| Es ist einfach zu bedienen und erfordert keine detaillierten Kenntnisse des Dateisystems auf niedriger Ebene. Schauen wir uns an, wie man es benutzt!

VERBUNDEN: Alles, was Sie schon immer über Inodes unter Linux wissen wollten

Testdisk installieren

So installieren Sie |_+_| Verwenden Sie unter Ubuntu diesen Befehl:

rm

Auf Fedora müssen Sie Folgendes eingeben:

ext4

Auf Manjaro müssen Sie |_+_| verwenden:

testdisk

Testdisk verwenden

Obwohl es in einem Terminalfenster ausgeführt wird, |_+_| hat eine rudimentäre Schnittstelle. Sie verwenden die Pfeiltasten zum Navigieren und die Eingabetaste, um eine Auswahl zu treffen. Um die Übersichtlichkeit zu wahren, erstellen Sie am besten ein Verzeichnis für wiederhergestellte Dateien.

Wir geben Folgendes ein, um ein Verzeichnis namens restore für unsere wiederhergestellten Dateien zu erstellen:

testdisk

Anzeige

Wir geben folgendes ein um in das neue Verzeichnis zu wechseln und starten |_+_| von dort:

pacman

Wir müssen |_+_| . verwenden mit |_+_|, also geben wir Folgendes ein:

testdisk

Die erste Frage |_+_| fragt geht es um die Protokollierung. Es kann eine neue Protokolldatei erstellen, eine vorhandene verwenden oder überhaupt nichts protokollieren. Es spielt keine Rolle, welche Option Sie wählen; es hat keinen Einfluss auf die Art und Weise |_+_| betreibt.

Sie können einfach die Eingabetaste drücken, um die hervorgehobene Option zu akzeptieren und eine neue Protokolldatei zu erstellen. Es wird in dem Verzeichnis erstellt, von dem aus Sie |_+_| gestartet haben. Wenn Sie Ihre Auswahl treffen, |_+_| fragt, auf welcher Festplatte sich das Dateisystem befindet, auf dem Sie arbeiten möchten.

Es listet die Festplatten auf, die es finden kann, sowie die |_+_| /dev/loop-Dateien. Es gibt eine davon für jede Anwendung, die Sie von einem |_+_| installiert haben. Sie sind schreibgeschützt, Sie sollten es also nicht geschafft haben, etwas aus diesen Dateisystemen zu löschen.

In diesem Testcomputer gibt es nur eine physische Festplatte, daher haben wir den Abwärtspfeil verwendet, um die Option /dev/sda hervorzuheben. Wir haben dann den Rechtspfeil verwendet, um Fortfahren auszuwählen, und dann die Eingabetaste gedrückt.

Anzeige

|_+_| muss auch den Partitionstyp kennen. Es präsentiert ein Menü mit Optionen sowie den Typ der Partition, der unten automatisch erkannt wird.

Sofern Sie keinen guten Grund haben, dies nicht zu tun, markieren Sie den Typ der automatisch erkannten Partition und drücken Sie dann die Eingabetaste.

Markieren Sie im angezeigten Funktionsmenü Erweitert und drücken Sie dann die Eingabetaste.

wie man den Cursor kleiner macht

Das Partitionsauswahlmenü wird angezeigt.

Die gesuchten Dateien befinden sich in der Linux-Dateisystempartition. Wir haben nur eine Linux-Partition auf unserer Festplatte, aber möglicherweise haben Sie mehr.

Wählen Sie die Partition aus, auf der sich Ihre Dateien befanden, verwenden Sie die linke und rechte Pfeiltaste, um Liste auszuwählen, und drücken Sie dann die Eingabetaste. Das Dateiauswahlmenü wird angezeigt.

Verwenden Sie die Aufwärts- und Abwärtspfeile oder die PgUp- und PgDn-Tasten, um durch die Liste der Dateien und Verzeichnisse zu navigieren. Drücken Sie den Rechtspfeil oder die Eingabetaste, um ein Verzeichnis einzugeben, und den Linkspfeil oder Esc, um ein Verzeichnis zu verlassen.

Anzeige

Wir suchen nach Dateien, die im Besitz von |_+_| waren. Die Dateien für alle Benutzerkonten befinden sich im Home-Verzeichnis. Wir markieren also das Home-Verzeichnis und können dann entweder den Rechtspfeil oder die Eingabetaste drücken, um dieses Verzeichnis aufzurufen.

Alle Benutzerkonten werden dann für uns aufgelistet. Wir markieren |_+_| und drücken dann den Rechtspfeil oder die Eingabetaste, um in dieses Verzeichnis zu gelangen.

Wir können jetzt die Dateien sehen, die zum |_+_| . gehören Konto. Die rot markierten Einträge wurden gelöscht. Wir navigieren durch die Dateien und Verzeichnisse, bis wir die Dateien finden, die wir wiederherstellen möchten.

Senden Sie Apps an ein anderes Telefon

Um eine Datei wiederherzustellen, markieren Sie sie einfach und drücken Sie dann c (Kleinbuchstaben).

Die Anzeige ändert sich und fordert Sie auf, ein Ziel für die wiederhergestellte Datei auszuwählen. Weil wir ein Verzeichnis namens Restored erstellt und |_+_| . gestartet haben davon ist der erste Eintrag in der Liste (.) dieses Verzeichnis. Um diese gelöschte Datei in diesem Verzeichnis wiederherzustellen, drücken wir C (Großbuchstaben).

Danach kehren Sie zur Dateiauswahlanzeige zurück. Wenn Sie weitere Dateien wiederherstellen möchten, wiederholen Sie einfach den Vorgang. Markieren Sie eine gelöschte Datei, drücken Sie c (Kleinbuchstaben), um sie zu kopieren, und drücken Sie dann C (Großbuchstaben), um sie wiederherzustellen.

Arbeiten mit wiederhergestellten Dateien

Nachdem Sie eine Datei wiederhergestellt haben, wird der Verzeichnisbaum an seinem ursprünglichen Speicherort rekonstruiert, was nützlich ist, da Sie daran erinnert werden, wo sich auf der Festplatte die ursprüngliche Datei befand. Das heißt, wenn Sie es zurückkopieren müssen, wissen Sie, wo es hingehört.

Anzeige

Wenn Sie mehrere Dateien von verschiedenen Dateisystemspeicherorten wiederherstellen, die zufällig denselben Dateinamen haben, müssen sie sowieso separat gespeichert werden.

Sie können Folgendes eingeben, um den Inhalt des wiederhergestellten Verzeichnisses anzuzeigen:

testdisk

Wenn du |_+_| . gefragt hast Um eine Protokolldatei zu erstellen, befindet sie sich im Verzeichnis 'Wiederhergestellt'. Da sich unsere wiederhergestellten Dateien unter /home/dave befanden, wurden sie in unser wiederhergestelltes Verzeichnis kopiert, das in Verzeichnissen mit demselben Namen verschachtelt ist.

Wir können mit |_+_| in das kopierte Dave-Verzeichnis wechseln. Stellen Sie sicher, dass Sie keinen führenden Schrägstrich (|_+_|) in den Pfad einfügen – Sie möchten in das lokale Home wechseln, nicht in das System /home.

Wir geben folgendes ein:

sudo

Die wiederhergestellten Dateien befinden sich in diesem Verzeichnis, also geben wir Folgendes ein:

testdisk

Anzeige

Schauen wir uns die wiederhergestellten Dateien noch einmal mit dem |_+_| . an (lange Auflistung) Option:

ls -l

Weil wir |_+_| . verwendet haben Um |_+_| zu starten, wurden die wiederhergestellten Dateien mit Root als Eigentümer wiederhergestellt. Wir können den Besitzer mit |_+_| wieder in dave ändern:

testdisk

Wir geben Folgendes ein, um sicherzustellen, dass die richtige Eigentümerschaft wiederhergestellt wurde:

testdisk

Testdisk: Code zur Erleichterung

Dieses Gefühl der Erleichterung, nachdem Sie eine wichtige Datei wiederhergestellt haben, die sich noch vor einem Moment als unwiederbringlich verloren anfühlte, werden Sie immer zu schätzen wissen.

Deshalb |_+_| ist so ein praktisches Dienstprogramm. Nachdem Sie es durch die Menüs geschafft haben und mit der Wiederherstellung von Dateien beginnen können, ist es leicht, in einen Rhythmus von Hervorhebung, C, C, Wiederholung zu verfallen.

Linux-Befehle
Dateien Teer · pv · Katze · tac · chmod · Griff · unterschied · sed · Mit · Mann · geschoben · popd · fsck · Testdisk · seq · fd · pandoc · CD · $PFAD · awk · beitreten · jq · falten · einzigartig · Journalctl · Schwanz · Zustand · ls · fstab · rauswerfen · weniger · chgrp · chown · rev · suchen · Saiten · Typ · umbenennen · Postleitzahl · entpacken · montieren · ummount · Installieren · fdisk · mkfs · rm · rmdir · rsync · df · gpg · wir · Nano · mkdir · von · ln · Patch · Konvertieren · rclon · Fetzen · SRM
Prozesse alias · Bildschirm · oben · nett · renice · Fortschritt · strace · System · tmux · chsh · Geschichte · beim · Charge · kostenlos · die · dmesg · Benutzermod · ps · chroot · xargs · tty · kleiner Finger · lsof · vmstat · Auszeit · Mauer · ja · töten · Schlaf · sudo · seine · Zeit · groupadd · Benutzermod · Gruppen · lshw · stilllegen · neu starten · halt · ausschalten · passwd · lscpu · crontab · Datum · bg · fg
Vernetzung netstat · Klingeln · Traceroute · ip · ss · Wer ist · fail2ban · bmon · Sie · Finger · nmap · ftp · Locken · wget · Wer · Wer bin ich · In · iptables · ssh-keygen · ufw

VERBUNDEN: Beste Linux-Laptops für Entwickler und Enthusiasten

WEITER LESEN