Konsolen-Befehl rückgängig machen
AAAAAAH!!! Mann, bin ich ein GNU! ;-) Soeben habe ich mittels "mv datei verzeichnis/" eine relativ wichtige Datei überschrieben! Kann man das irgendwie ungeschehen machen? Ein Backup gibt's leider auch nicht. In der SDB hab ich jetzt auf die schnelle nix gefunden. HILFE!!! Danke. Martin Spöhrle -- GMX - Die Kommunikationsplattform im Internet. http://www.gmx.net
Hi, Martin Spöhrle wrote:
AAAAAAH!!!
WAAAAH!!!
Mann, bin ich ein GNU! ;-) Soeben habe ich mittels "mv datei verzeichnis/" eine relativ wichtige Datei überschrieben! Kann man das irgendwie ungeschehen machen? Ein Backup gibt's leider auch nicht. In der SDB hab ich jetzt auf die schnelle nix gefunden. HILFE!!! Danke.
verbuche es unter der Rubrik - ich soll nicht unüberlegt als root arbeiten oder - don´t drink an move ;-p Sorry, es existiert keine Chance für die verlorene Datei - mir ist jedenfalls nix bekannt. Thorsten
Thorsten Strusch wrote:
Martin Spöhrle wrote:
Mann, bin ich ein GNU! ;-) Soeben habe ich mittels "mv datei verzeichnis/" eine relativ wichtige Datei überschrieben! Kann man das irgendwie ungeschehen machen? Ein Backup gibt's leider auch nicht. In der SDB hab ich jetzt auf die schnelle nix gefunden. HILFE!!! Danke.
verbuche es unter der Rubrik
- ich soll nicht unüberlegt als root arbeiten
Wo stand was von root? Man kann auch als "normaler Mensch" wichtige Arbeitsdateien platt machen. Um noch eine kleine Anmerkung zum Subject zu machen: Dieses Risiko ist auch keine Spezialität der Konsole -- eine entsprechende Operation in einem graphischen Dateimanager hätte die gleichen Folgen. Man kann natürlich Sicherheitsabfragen einbauen, für die Shell-Kommandos z.B. durch Einfügen von alias rm="rm -i" alias mv="mv -i" alias cp="cp -i" in der ~/.bashrc. Die Erfahrung zeigt aber, daß man sich ziemlich schnell an das Beantworten solcher Abfragen gewöhnt und es dann oft doch erst einen kleinen Moment zu spät bemerkt, wenn man gerade das falsche Kommando bestätigt.
- don´t drink an move ;-p
Allerdings ein guter Rat ;-)
Sorry, es existiert keine Chance für die verlorene Datei - mir ist jedenfalls nix bekannt.
Unter günstigen Umständen könnten die Undelete-Tips helfen, da die Datei durch das mv nicht überschrieben sondern ersetzt wurde. Eilert -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Eilert Brinkmann -- Universitaet Bremen -- FB 3, Informatik eilert@informatik.uni-bremen.de - eilert@tzi.org http://www.informatik.uni-bremen.de/~eilert/
From: Martin Spöhrle [mailto:BrightLooser@gmx.net] Sent: Monday, October 29, 2001 3:23 PM To: suse-linux@suse.com Subject: Konsolen-Befehl rückgängig machen
AAAAAAH!!!
Mann, bin ich ein GNU! ;-) Soeben habe ich mittels "mv datei verzeichnis/" eine relativ wichtige Datei überschrieben! Kann man das irgendwie ungeschehen machen? Ein Backup gibt's leider auch nicht. In der SDB hab ich jetzt auf die schnelle nix gefunden. HILFE!!! Danke.
Martin Spöhrle
Shit happens! Bleibt nur zu hoffen dass die Datei nur relativ und nicht wirklich wichtig war. Der Vorteil an der Sache: Sowas passiert dir wahrscheinlich nie wieder. Ich will's mal vorsichig ausdruecken: Die Datei ist jetzt im Himmel. Mein Beileid. L@rs - heute besonders zynisch
On 29-Oct-2001 Martin Spöhrle wrote:
Mann, bin ich ein GNU! ;-) Soeben habe ich mittels "mv datei verzeichnis/" eine relativ wichtige Datei überschrieben! Kann man das irgendwie ungeschehen machen? Ein Backup gibt's leider auch nicht.
Dasnn hast du keine Chance. Mit undelete oder recover koenntest du mit
viel Glueck eventuell eine geloeschte Datei wiederherstellen, aber wenn
du sie ueberschrieben hast, bleibt dir nur noch der Weg zu einem
kommerziellen Datenrettungsunternehmen. Wenn dir die Datei so wichtig
waere, haettest du aber bestimmt ein Backup.
Gruss,
Heinz.
--
E-Mail: Heinz W. Pahlke
"Heinz W. Pahlke" wrote:
On 29-Oct-2001 Martin Spöhrle wrote:
Mann, bin ich ein GNU! ;-) Soeben habe ich mittels "mv datei verzeichnis/" eine relativ wichtige Datei überschrieben! Kann man das irgendwie ungeschehen machen? Ein Backup gibt's leider auch nicht.
Dasnn hast du keine Chance. Mit undelete oder recover koenntest du mit viel Glueck eventuell eine geloeschte Datei wiederherstellen, aber wenn du sie ueberschrieben hast, [...]
Hat er aber (zumindest mit dem mv noch) nicht. Ein mv datei verzeichnis/ hat, wenn verzeichnis/datei bereits existiert, etwa die Wirkung von einem rm verzeichnis/datei && mv datei verzeichnis/ (Allerdings als atomare Operation, so daß kein anderer Prozeß irgendeinen Zwischenzustand zu sehen bekäme.) Der Inhalt der verlorenen Datei wird dabei also nicht überschrieben. Insofern sind die Hinweise auf Undelete-Verfahren hier nicht grundsätzlich falsch -- ob sich der Aufwand lohnt, ist eine andere Sache.
bleibt dir nur noch der Weg zu einem kommerziellen Datenrettungsunternehmen. Wenn dir die Datei so wichtig waere, haettest du aber bestimmt ein Backup.
Wenn sie so wichtig wäre, daß es sich lohnt, im Labor die überschriebenen Datenblöcke wiederherstellen zu lassen -- ja, allerding, dann wäre ein Backup wohl billiger gewesen... Für Neugierige hier mal URLs zu einigen solcher Firmen: http://www.ontrack.de/ http://www.vogon.de/ http://www.datenrettung.de/ (Ibas) http://www.datenretter.de/ (Convar) In der c't 6/2000 gab's einen Artikel zu dem Thema, in dem auch diese Unternehmen erwähnt wurden. Eilert -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Eilert Brinkmann -- Universitaet Bremen -- FB 3, Informatik eilert@informatik.uni-bremen.de - eilert@tzi.org http://www.informatik.uni-bremen.de/~eilert/
Hallo Martin, Martin Spöhrle schrieb:
AAAAAAH!!!
Mann, bin ich ein GNU! ;-) Soeben habe ich mittels "mv datei verzeichnis/" eine relativ wichtige Datei überschrieben! Kann man das irgendwie ungeschehen machen? Ein Backup gibt's leider auch nicht. In der SDB hab ich jetzt auf die schnelle nix gefunden. HILFE!!! Danke.
Ich habe so etwas mal gemacht. Siehe hier: http://www.elchs-kramkiste.de/starttab.php4?seite=linuxtts/undelete&start=0 Hoffe es ist noch nicht zu spät. Einen Versuch ist es wert.
Martin Spöhrle
Gruß Thomas -- *---------------------------------------------* | Thomas Schürmann | | mailto:thomas.schuermann@stadt-gladbeck.de | *---------------------------------------------*
AAAAAAH!!!
Mann, bin ich ein GNU! ;-) Soeben habe ich mittels "mv datei verzeichnis/" eine relativ wichtige Datei überschrieben! Kann man das irgendwie ungeschehen machen? Ein Backup gibt's leider auch nicht.
Gilt nur im Prinzip und im Falle von ext2: Sofort nach dem Fehler nix mer machen. Betroffene Partition unmounten. Im Netz suchen unter unerase+linux. Es gibt einen englischen Text zu dem Thema der Wege zeigt, doch wieder an die Daten zu kommen. Die URL weiss ich leider nicht mehr. Ist aber nix für schnell mal eben sondern heisst schon 2-3 Tage Arbeit. Also nur machen wenn es wirklich um Dateien geht, welche die Betriebsgrundlage für nen Betrieb mit 1000 Mann darstellen.... War in der Art von scriptgestützt freie I-Nodes suchen und zusammenbasteln. Ansonsten, ärgern, Bierchen trinken gehen, ........ Solltest Du schon weitere Dinge gemacht haben (schreibzugriffe etc.) hilft das oben auch nix mehr. Vielleicht als Trost: Als ich mit Linux/Unix eigentlich schon ein wenig mehr vertraut war, habe ich auf der falschen Konsole rm -R * gemacht (wirklich, kein Gag). Es war die Konsole mit root in / ! Servus Rainer -- GMX - Die Kommunikationsplattform im Internet. http://www.gmx.net
Hallo Martin,
Martin Spöhrle schrieb:
AAAAAAH!!!
Kommando zurück, ich habe mal wieder nicht richtig gelesen. Geht natürlich nicht bei überschriebenen, sondern nur bei gelöschten Dateien, ich Depp.
Stop, ein Verzeichnis ist doch auch nur ne Datei! In ihr stehen halt Namen, Rechte Inodes und so. Servus Rainer -- GMX - Die Kommunikationsplattform im Internet. http://www.gmx.net
Rainer Kulhanek wrote:
Kommando zurück, ich habe mal wieder nicht richtig gelesen. Geht natürlich nicht bei überschriebenen, sondern nur bei gelöschten Dateien, ich Depp.
Doch Thomas, der Undelete-Tip war im Prinzip schon richtig. mv überschreibt nicht den Dateiinhalt, sondern ersetzt die Datei. Für die alte Datei ist die Wirkung also so wie bei einem rm.
Stop, ein Verzeichnis ist doch auch nur ne Datei!
Ja.
In ihr stehen halt Namen, Rechte Inodes und so.
Nicht ganz. In einem Verzeichnis stehen Namen und zugehörige Inode-Nummern. Rechte, Zugriffszeiten, Dateigröße, Verweise auf Datenblöcke etc. stehen dann in dem entsprechenden Inode (bzw. sind über diesen aufzufinden). Damit kann es auch mehrere Namen für die selbe Datei (repräsentiert durch ihren Inode) geben, wenn man mit dem Kommando ln (ohne -s) Hardlinks erstellt. Alles, was beim Verändern eines Verzeichnisses (durch rm, mv etc.) unmittelbar verloren gehen kann, ist also der Dateiname. Wenn dabei der letzte Verzeichniseintrag, der auf einen Inode verweist, gelöscht wird, dann ist die Datei nicht mehr mit regulären Mitteln aufzufinden. Falls/sobald kein Prozeß mehr diese Datei geöffnet hat, werden schließlich der Inode und die Datenblöcke der Datei freigegeben, und dann kann es natürlich passieren, daß andere Operationen den Dateiinhalt überschreiben und somit eine Wiederherstellung (ohne aufwendiges Laborgerät) unmöglich machen. Um noch einmal die Wirkung beim Ersetzen einer Datei mit mv zu verdeutlichen: $ echo bla >a $ echo blub >b $ ln b c $ ls -li total 3 98633 -rw------- 1 eilert stud 4 Oct 29 17:31 a 98638 -rw------- 2 eilert stud 5 Oct 29 17:31 b 98638 -rw------- 2 eilert stud 5 Oct 29 17:31 c Das sind also zwei Dateien mit unterschiedlichem Inhalt, wobei die zweite Datei zwei Namen (b und c) hat. (In der ersten Spalte stehen die Inode-Nummern -- gleiche Nummer = dieselbe Datei. Die dritte Spalte enthält den Link Count, also die Anzahl der Namen, die eine Datei gegenwärtig hat.) $ mv a b Damit wird b durch a ersetzt, d.h., der Verzeichniseintrag b wird gelöscht und der Eintrag a wird in b unbenannt. Das Ergebnis sieht so aus: $ cat b bla $ cat c blub $ ls -li total 2 98633 -rw------- 1 eilert stud 4 Oct 29 17:31 b 98638 -rw------- 1 eilert stud 5 Oct 29 17:31 c Der Inhalt der ehemaligen Datei b, die jetzt nur noch unter dem Namen c zu finden ist, wurde also nicht verändert. Damit bin ich jetzt ziemlich vom ursprünglichen Problem abgeschweift, aber vielleicht hilft's ja zum Verständnis. Eilert -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Eilert Brinkmann -- Universitaet Bremen -- FB 3, Informatik eilert@informatik.uni-bremen.de - eilert@tzi.org http://www.informatik.uni-bremen.de/~eilert/
Hallo Martin,
Martin Spöhrle schrieb:
AAAAAAH!!!
Kommando zurück, ich habe mal wieder nicht richtig gelesen. Geht natürlich nicht bei überschriebenen, sondern nur bei gelöschten Dateien, ich Depp.
Stop, ein Verzeichnis ist doch auch nur ne Datei! In ihr stehen halt Namen, Rechte Inodes und so. Servus Rainer -- GMX - Die Kommunikationsplattform im Internet. http://www.gmx.net
Am Montag, 29. Oktober 2001 16:35 schrieb Rainer Kulhanek:
Hallo Martin,
Martin Spöhrle schrieb:
AAAAAAH!!!
Kommando zurück, ich habe mal wieder nicht richtig gelesen. Geht natürlich nicht bei überschriebenen, sondern nur bei gelöschten Dateien, ich Depp.
Stop, ein Verzeichnis ist doch auch nur ne Datei! In ihr stehen halt Namen, Rechte Inodes und so.
Hallo Rainer es geht doch auch gar nicht darum, ob Datei oder Verzeichnis, sondern darum, dass nicht gelöscht wurde, sondern per mv überschrieben. Genau da liegt der "Has im Pfeffer". Da wird man mit undelete-Scripten eben nichts, sondern nur mit teuren Spezial-Programmen :-( CU Thorsten -- ARCHDUKE FERDINAND FOUND ALIVE -- FIRST WORLD WAR A MISTAKE
Thorsten Körner wrote:
Am Montag, 29. Oktober 2001 16:35 schrieb Rainer Kulhanek:
Hallo Martin,
Martin Spöhrle schrieb:
AAAAAAH!!!
Kommando zurück, ich habe mal wieder nicht richtig gelesen. Geht natürlich nicht bei überschriebenen, sondern nur bei gelöschten Dateien, ich Depp.
Stop, ein Verzeichnis ist doch auch nur ne Datei! In ihr stehen halt Namen, Rechte Inodes und so.
Hallo Rainer es geht doch auch gar nicht darum, ob Datei oder Verzeichnis, sondern darum, dass nicht gelöscht wurde, sondern per mv überschrieben. Genau da liegt der "Has im Pfeffer".
Eben das ist hier noch nicht passiert. Mit einem `cat quelle >ziel` oder `cp quelle ziel` wäre es soweit. Aber bei `mv quelle ziel` oder auch `cp -f quelle ziel` wird die Zieldatei zuerst gelöscht. Bei mv werden (solange das ganze nicht Dateisystemgrenzen überschreitet) die Datenblöcke überhaupt nicht angefaßt, sondern es werden nur Verzeichniseinträge (und ein paar "Details" in den Inodes der beteiligten Dateien) geändert.
Da wird man mit undelete-Scripten eben nichts, sondern nur mit teuren Spezial-Programmen :-(
Wenn tatsächlich die Datenblöcke überschrieben wurden, ist mit Software allein wahrscheinlich gar nicht mehr viel auszurichten. Eilert -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Eilert Brinkmann -- Universitaet Bremen -- FB 3, Informatik eilert@informatik.uni-bremen.de - eilert@tzi.org http://www.informatik.uni-bremen.de/~eilert/
* Eilert Brinkmann schrieb am 29.Okt.2001:
Thorsten Körner wrote:
Am Montag, 29. Oktober 2001 16:35 schrieb Rainer Kulhanek:
Hallo Martin,
Martin Spöhrle schrieb:
AAAAAAH!!!
Kommando zurück, ich habe mal wieder nicht richtig gelesen. Geht natürlich nicht bei überschriebenen, sondern nur bei gelöschten Dateien, ich Depp.
Stop, ein Verzeichnis ist doch auch nur ne Datei! In ihr stehen halt Namen, Rechte Inodes und so.
Hallo Rainer es geht doch auch gar nicht darum, ob Datei oder Verzeichnis, sondern darum, dass nicht gelöscht wurde, sondern per mv überschrieben. Genau da liegt der "Has im Pfeffer".
Eben das ist hier noch nicht passiert. Mit einem `cat quelle >ziel` oder `cp quelle ziel` wäre es soweit. Aber bei `mv quelle ziel` oder auch `cp -f quelle ziel` wird die Zieldatei zuerst gelöscht. Bei mv werden (solange das ganze nicht Dateisystemgrenzen überschreitet) die Datenblöcke überhaupt nicht angefaßt, sondern es werden nur Verzeichniseinträge (und ein paar "Details" in den Inodes der beteiligten Dateien) geändert.
Das gilt aber nur, wenn man im gleichen Dateisystem ist.
Da wird man mit undelete-Scripten eben nichts, sondern nur mit teuren Spezial-Programmen :-(
Wenn tatsächlich die Datenblöcke überschrieben wurden, ist mit Software allein wahrscheinlich gar nicht mehr viel auszurichten.
Dann hilft nur noch, wenn überhaupt, Festplatte öfnen und mit Spezialgerät lesen. Geht natürlich nur in einem Hochreinraum. Die Platte ist anschließend trotzdem hinüber. Bernd -- Probleme mit dem Drucker? Schon die Druckercheckliste beachtet? http://localhost/doc/sdb/de/html/drucker-howto.html | Auch lesenswert: Oder schon das Drucker-HOWTO gelesen? | man lpr file://usr/shar/doc/howto/de/DE-Drucker-HOWTO.txt.gz | Zufallssignatur 3
participants (9)
-
B.Brodesser@t-online.de
-
Eilert Brinkmann
-
Heinz W. Pahlke
-
Lars Mueller
-
Martin Spöhrle
-
Rainer Kulhanek
-
Thomas Schürmann
-
Thorsten Körner
-
Thorsten Strusch