Undelete für versehentlich gelöschte Dateien durch 'rm'

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von pangu » 08.12.2011 11:55:29

Hallo community,

ich würde gerne erfahren, ob es bei Debian (entsprechend allgemein in Linux) eine Möglichkeit gibt, versehentlich und kürzlich gelöschte Daten wiederherzustellen wie man es aus der Windows-Welt mit "undelete" her kennt. Funktioniert das auch bei Linux, oder ist es definitiv nicht mehr möglich mit dem Befehl 'rm' gelöschte Daten wiederherzustellen? Werden die Daten durch 'RM' endgültig gelöscht, irreparabel mit Null-Bytes überschrieben, oder landen die irgendwie und irgendwo in eine Art "recycle bin".

Würde mich freuen, wenn ihr mich aufklären könntest. Vorab möchte ich sagen, es ist nicht passiert :) ich frage nur aus Neugier und damit ich es einfach weiß, falls mir sowas mal passieren sollte.

Danke und Grüße,
Michael.
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

Benutzeravatar
mindX
Beiträge: 1541
Registriert: 27.03.2009 19:17:28
Lizenz eigener Beiträge: GNU General Public License

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von mindX » 08.12.2011 12:08:20

Mir fällt dazu Debianextundelete ein.
Den theoretischen Background wird sicher jemand nachliefern könne, der sich besser mit Dateisystemen auskennt als ich :)
Zuletzt geändert von mindX am 08.12.2011 12:10:47, insgesamt 1-mal geändert.

Benutzeravatar
hikaru
Moderator
Beiträge: 13975
Registriert: 09.04.2008 12:48:59

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von hikaru » 08.12.2011 12:10:09

Die Ubuntianer haben dazu einen schönen Wikiartikel:
http://wiki.ubuntuusers.de/datenrettung

Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von pangu » 08.12.2011 12:46:10

Vielen herzlichen Dank. Werd ich mal in meine Favoriten integrieren :)

PS: Funktioniert ALT+DRUCK+U auch auf Debian ohne KDE ?
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

DeletedUserReAsG

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von DeletedUserReAsG » 08.12.2011 13:20:27

http://de.wikipedia.org/wiki/Magic_SysRq

Das funktioniert oft auch dann noch, wenn gar nichts sonst mehr funktioniert.

cu,
niemand

Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von pangu » 12.12.2011 14:14:38

Danke für die wiki-Seite. Ich wollte gerade ALT+DRUCK+M ausprobieren, und zwar innerhalb meiner SSH-Session, die ich mit putty gestartet habe. Das scheint aber nicht zu funktionieren. Liegt es daran, dass ich putty verwende, oder allgemein, dass ich über SSH eingeloggt bin? was mache ich falsch? Wenn ich diese Tastenkombi eingebe, kriege ich nur ein Fehlerpiep vom Putty zu hören, so als hätte ich was falsches eingegeben.
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

DeletedUserReAsG

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von DeletedUserReAsG » 12.12.2011 14:23:58

Die werden von der Maschine ausgewertet, an der die Tastatur physikalisch angeschlossen ist.
http://wiki.openvz.org/Magic_SysRq_Key hat geschrieben:Other way, if you don't have physical access to the node, only ssh, you can do

Code: Alles auswählen

echo "command key" > /proc/sysrq-trigger
cu,
niemand

deberik
Beiträge: 1177
Registriert: 30.09.2009 13:27:23

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von deberik » 12.12.2011 18:48:04

Wäre es nicht einfacher und sinnvoller statt rm einen neuen Befehl rm2 zu verwenden, der die Dateien einfach nach /tmp/trash verschiebt? Dann kann man bis zum Neustart noch die Dateien retten.
Debians Paketbeschreibungen übersetzen? Hilf mit!

robi1
Beiträge: 13
Registriert: 27.12.2010 19:15:10

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von robi1 » 12.12.2011 19:38:03

Um noch mal auf den "den theoretischen Background" zurückzukommen.
für ext3 und ext4 schau mal hier vorbei wenn du dich mit den theoretischen Hintergrund befassen willst. Neben den Grundlagen den Schwierigkeiten und aus vielfältigen Untersuchungen und Recoverversuchen gewonnene Erkenntnissen, sind dort unter Anderem auch ein paar kleine genau beschriebene Beispiele auf der Seite der "Zeit-Optionen" wie man an nach kleinen Konsolunfällen zielgenau vorgehen könnte, um zu sehen ob die eine oder andere Datei noch zu retten ist, und wie sie zu retten ist.

Es geht auf ext3/4 immer etwas, soweit man sich die Möglichkeiten nicht durch falsche Behandlung unmittelbar nach dem Konsolunfall selbst kastriert. Es wird (außer in sehr einfach Tests) niemals alles 100% wieder herstellbar sein, und das Ganze hat seine Grenzen da die Quellen aus denen man die Erkenntnisse zum recovern gewinnt nicht dafür gemacht sind, sondern eigentlich einem anderem Zweck dienen und auf diesen anderen Zweck optimiert sind. Da man sich in der Regel den Zeitpunkt des Unfalls auch nicht geplant optimal auf einen Zeitpunkt gelegt hat an dem alle oder sehr viele Informationen vorhanden sind, ist es immer ein wenig dem Zufall überlassen welche Dateien recoverbar sind und welche nicht. Nach dem Durcharbeiten der oben genannten Webseite könnte man auch wissen warum oder kann eventuell selbst einschätzen oder mit dem genannten Programm nachschauen, ob viel oder weniger gehen könnte.

Bestimmt keine leichte Lektüre und kein Programm das man in 5 Minuten bis in alle Einzelheiten bedienen kann.

robi1

Benutzeravatar
Lohengrin
Beiträge: 3227
Registriert: 29.08.2004 00:01:05
Wohnort: Montsalvat

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von Lohengrin » 13.12.2011 07:42:48

deberik hat geschrieben:Wäre es nicht einfacher und sinnvoller statt rm einen neuen Befehl rm2 zu verwenden, der die Dateien einfach nach /tmp/trash verschiebt? Dann kann man bis zum Neustart noch die Dateien retten.
Dazu würde ich mir dann auch noch einen Befehl rm-gruendlich schreiben, der die Daten erst gründlich überschreibt und dann löscht. Ich würde mir dann wohl noch den Alias rm="rm-gruendlich" setzen.
Wenn man sich daran gewöhnt, dass Löschen rückgängig gemacht werden kann, und dass Programme beim expliziten Überschreiben oder Beenden immer nachfragen, wird man meschugge.
Harry, hol schon mal das Rasiermesser!

Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von pangu » 14.12.2011 12:29:24

das mit dem rm2 klingt interessant. Momentan habe ich in meiner .bashrc drinstehen

alias rm='rm -i'

Das geht aber auf Dauer auf die Nerven, vor allem wenn ich mehrere Dateien löschen möchte. Danach erscheint ja immer eine Abfrage: rm: reguläre leere Datei "test" entfernen?

ich muss jede einzelne Datei mit einem 'j' bestätigen. Kann ich hier als Antwort nicht ALLE eingeben? ich habs mit 'a' und 'A' probiert (für Alle oder all) aber es frägt jede einzelne Datei ab. Wenn ich das wenigstens hinkriegen würde, wäre ich schon zufrieden. Dann krieg ich jedesmal eine Warnmeldung wenn ich 'rm' nutze.
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von Cae » 14.12.2011 16:20:35

pangu hat geschrieben:Das geht aber auf Dauer auf die Nerven, vor allem wenn ich mehrere Dateien löschen möchte. Danach erscheint ja immer eine Abfrage: rm: reguläre leere Datei "test" entfernen?

Code: Alles auswählen

$ echo "$(seq 0 4)" | xargs touch
$ ls
0  1  2  3  4
$ alias rm-i='rm -i'
$ rm-i *
rm: reguläre leere Datei „0“ entfernen? y
rm: reguläre leere Datei „1“ entfernen? y
rm: reguläre leere Datei „2“ entfernen? y
rm: reguläre leere Datei „3“ entfernen? y
rm: reguläre leere Datei „4“ entfernen? y
$ ls          
$ echo "$(seq 0 4)" | xargs touch
$ ls
0  1  2  3  4
$ rm-i -f *
$ ls
$ 
Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von pangu » 16.12.2011 09:14:50

Hallo cae,

bitte hab Nachsicht mit mir, ich bin kein Linux-Pro. Könntest du mir vielleicht kurz erklären was du damit genau sagen wolltest? Du zeigst hier zwei Beispiele, wie du die 5 Dateien löschen tust. Einmal normal und einmal eben mit dem -f Schalter. Den -f schalter kenne ich, aber ich würde gerne dass es so abläuft:

#rm -i *

Die Datei "blabla" wirklich löschen?

Jetzt möchte ich nicht nur j/n eingeben können, sondern auch ein 'a' damit er alle Fragen mit 'j' beantworten tut und somit alles löscht. Geht das irgendwie?
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von Cae » 16.12.2011 10:26:30

pangu hat geschrieben:Die Datei "blabla" wirklich löschen?

Jetzt möchte ich nicht nur j/n eingeben können, sondern auch ein 'a' damit er alle Fragen mit 'j' beantworten tut und somit alles löscht. Geht das irgendwie?
Naja, genau das tust du im Vorfeld mit -f. Wo ist das Problem?

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von pangu » 16.12.2011 11:14:26

Nunja, ich möchte den Schalter -f tunlichst vermeiden und aus meinem Repertoire entfernen, damit er sich nicht ins Unterbewußtsein einnistet. So neigt man öfters dazu mal schnell ein "rm -rf" zum Verzeichniss löschen zu benutzen, weil "rmdir testordner" meckert, dass das Verzeichnis nicht leer ist. Ich finde das ist was psychologisches, und mit dem Schalter -f ist man natürlich sehr mächtig. Jetzt gibt's Zeiten, an denen mal nicht so konzentriert ist, oder übermüdet, oder gestresst, oder was weiß ich was. Ich kann davon Geschichten erzählen. Ich hätte vorgestern z.B. (fast!) ein "rm -rf" für ein Verzeichnis abgesetzt. Es hatte nur der ENTER-Druck gefehlt. Es war ein Zeichendreher, und hätte ich die Enter-Taste betätigt, wäre ein wichtiger Ordner ins Jenseits befördert worden. Zum Glück habe ich abgebrochen und mir den Ordner sicherheitshalber nochmal angeschaut. Gott sei Dank! *puh* Es kann passieren, Fehler sind vorprogrammiert und der Mensch neigt des öfteren dazu. Deswegen habe ich mir auch den Alias "rm -i" in meine .bashrc eingefügt. Ich möchte nämlich kurz einen Hinweis erhalten, dass:

1.) etwas gelöscht wird
2.) WAS GENAU zum Löschen markiert ist

Das ist mir vor allem bei extremen Arbeitsbedingungen (Stress, Zeitdruck, Müdigkeit, usw...) sehr wichtig. Wer von euch hat noch nie in seiner Laufbahn schonmal unvorsichtig einen Ordner oder Dateiinhalte durch Kopieren oder Schreiben überschrieben, oder gar Daten gelöscht weil er irgendwas mitten in seinem Delirium verwechselte?? ich glaube kaum jemand, denn die Erfahrung macht zwangsweise jeder irgendwann mal, seid ehrlich.

rm -i ist ok, gefällt mir, bis auf die mangelnde Funktion, die ich bereits angesprochen habe. "rm -i -f" ist quatsch meiner Ansicht nacht, denn es ist das gleiche wie "rm -f" und somit findet keine Interaktion mehr mit dem User statt (wie es ja der -i vorsieht).

Ich hoffe du versteht was ich meine :)

EDIT: mit dem Schalter "großes i" könnte ich ja arbeiten. Ja genau! Bloss wie krieg ich das in meine .bashrc richtigerweise unter? Wenn ich irgendwo "rm *" betätige, soll eben "rm -I" ausgeführt werden. Wenn ich "rm datei1 datei2 datei3" ausführe, soll "rm -i" ausgeführt werden. Das wärs doch, oder? momentan habe ich das probiert in meiner .bashrc aber das "rm *" greift nicht, sondern es wird weiterhin "rm -i" ausgeführt.

Code: Alles auswählen

alias rm='rm -i'
alias "rm *"='rm -I'
GELÖST Ich hab's jetzt einfachhalber wie folgt gelöst:

Code: Alles auswählen

alias del='rm -I'
alias rm='rm -i'
wenn ich einzelne Dateien entferne nutze ich einfach rm, und wenn ich mehrere Dateien durch den Einatz des Platzhalters * verwenden möchte, nutze ich einfach del. Wenn ich ein Verzeichnis löschen möchte, nutze ich natürlich erstmal "rmdir" nachdem ich den Verzeichnisinhalt gecheckt und vorher gelöscht habe. Ansonsten "del -r" um ein Verzeichnis mit Abfrage komplett zu löschen.
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

Benutzeravatar
Lohengrin
Beiträge: 3227
Registriert: 29.08.2004 00:01:05
Wohnort: Montsalvat

Re: Undelete für versehentlich gelöschte Dateien durch 'rm'

Beitrag von Lohengrin » 16.12.2011 21:24:23

pangu hat geschrieben:Ich kann davon Geschichten erzählen. Ich hätte vorgestern z.B. (fast!) ein "rm -rf" für ein Verzeichnis abgesetzt. Es hatte nur der ENTER-Druck gefehlt. Es war ein Zeichendreher, und hätte ich die Enter-Taste betätigt, wäre ein wichtiger Ordner ins Jenseits befördert worden. Zum Glück habe ich abgebrochen und mir den Ordner sicherheitshalber nochmal angeschaut. Gott sei Dank! *puh*
Bei mir ist es umgekehrt. Ich verwende "rm -rf" gerne und oft. Zweimal ist es schiefgegangen. Und dann musste ich eins meiner Backups rausholen.
Es ist jetz zehn Jahre her, dass ich wichtige Daten aus Versehen gelöscht habe. Vermutlich liegen sie auch noch auf irgend einem Band in den Kellern einer Universität, aber so wichtig sind diese Daten mir dann doch nicht. Seitdem habe ich Backups
Harry, hol schon mal das Rasiermesser!

Antworten