Hilfe! Ich hab zuviel gelöscht ...

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
fliewatueuet
Beiträge: 7
Registriert: 02.12.2008 23:12:14

Hilfe! Ich hab zuviel gelöscht ...

Beitrag von fliewatueuet » 02.12.2008 23:25:12

Ich könnte mich ohrfeigen! Beim Testen eines find commands mit einem exec auf rm (Ich wollte alte Dateien löschen) ist es passiert: Der Löschvorgang nahm gnadenlos seinen lauf, ich weiß ehrlich gesagt gar nicht wie lange, jedenfalls habe ich jetzt folgendes Problem:

Ich kann keine commands mehr aufrufen, egal ob ls, mount usw. jedesmal kommt von der bash die Meldung dass der Befehl nicht vorhanden ist.

Ich kann mich nicht mehr anmelden, dabei fehlt denke ich mal /bin/wgetty und es kommt zu einem respawn.

Ich habe noch eine Session am Terminal offen, allerdings keine Commands wie bereits oben angegeben.

Ich habe noch eine RSH Session offen in der die CLI des Asterisk Servers läuft und angezeigt wird. (Das ganze ist ein Telefonieserver mit sher vielen Gesprächen, sehr zeitkritisch auch, sollte möglichst wenig ausfallen :-)

Die gute Nachricht: derzeit läuft noch alles!

Natürlich habe ich den paralell vorhandenen Backup Rechner mal in Stellung gebracht und konfiguriert - wenn alle Stricke reißen :-( Allerdings habe ich da nicht den letzten Datenstand, usw. Das System ist ja permanent in Bewegung.

Mit NFS komme ich nicht auf den Rechner (Zugriff verweigert).

Ich bin schon fast am Verzweifeln!

Meine letzte Idee: Das System Booten und von der Debian Boot CD das Grundsystem neu installieren (in die bestehenden Partitionen)

Bleibt meine Anwendung davon uinberührt? Oder könnte ich eine Shell von der CD starten und die fehlenden Dateien wieder reinkopieren? (Wenn ich wenigstens wüsste welche Dateien fehlen. Ich hab ja nicht mal ein LS :-(#

Für jeden Tipp, jeden Hinweis und jede Idee echt dankbar

ein verzweifelter

-fliewa-

P.S.: BIs jetzt hats ja noch keiner bemerkt :-)

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von rendegast » 03.12.2008 04:54:11

Die Frage ist, welchen Schaden Du angerichtet hast, das 'find ... -exec ...'-Kommando wäre hilfreich.
(also bzgl der Konfig-Dateien in /etc/ und /var/lib/)
('... -exec echo rm-BEFEHL' ;) )


wenn es noch funktioniert:

Code: Alles auswählen

#!/bin/sh

PAKETE="$(dpkg -l | awk '{print $2}')"
REINSTALL () {
   # apt-get --reinstall install $i
   aptitude reinstall $i
}
for i in "$LIST"; do 
   REINSTALL
done
-----------------------------------------
Andernfalls mithilfe einer Live-CD die Paketsystem-Pakete herunterladen, entpacken und einkopieren.
(zBsp. apt, dpkg, aptitude, ...)

/var/lib/dpkg/status sollten noch existieren,
da Dein find alte Pakete suchte, solche status-Dateien aber immer neu geschrieben werden:

Code: Alles auswählen

# cat /var/lib/dpkg/status | egrep ^Status | sort | uniq -c
      4 Status: deinstall ok config-files
    781 Status: install ok installed
  18103 Status: purge ok not-installed

Code: Alles auswählen

PAKETE="$(cat /var/lib/dpkg/status | egrep -B 1 "^Status.*ok installed$" | awk '$1=="Package:" {print $2}' | sort)"
(ist nur eine andere Form des obigen dpkg-Befehls)


Variante bei apt-get, /var/lib/apt/extended_states:

Code: Alles auswählen

PAKETE="$(cat /var/lib/apt/extended_states | awk '$1=="Package:" {print $2}' | sort)"
Variante bei aptitude, /var/lib/aptitude/pkgstates:

Code: Alles auswählen

# cat /var/lib/aptitude/pkgstates | egrep -v ^Package | sort | uniq -c
  23224 
   7638 Dselect-State: 0
    781 Dselect-State: 1
      4 Dselect-State: 3
  14801 Dselect-State: 4
  22801 Remove-Reason: 0
      5 Remove-Reason: 2
      2 Remove-Reason: 3
    416 Remove-Reason: 4
    781 State: 1
  21892 State: 3
    551 State: 4
  23220 Unseen: no
      4 Unseen: yes
      4 Upgrade: yes

Code: Alles auswählen

PAKETE="$(cat /var/lib/aptitude/pkgstates | egrep -B 2 "^State: 1" |  awk '$1=="Package:" {print $2}' | sort)"
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

fliewatueuet
Beiträge: 7
Registriert: 02.12.2008 23:12:14

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von fliewatueuet » 03.12.2008 10:48:25

Nun, es war ein find command auf Dateien älter als 195 Tage und einem rm für diese Dateien, allerdings ohne Dateiangabe (schäm).

Es wurden dann etliche Dateien gelöscht, aber auch nicht allzuviel, ging im Bruchteil einer Sekunde.

Dann kam nur mehr "file not found" oder so, meine Vermutung:

Das System hat so lange gelöscht bis es sich selbst quasi den rm command weggelöscht hat.

Keine Ahnung in welcher Reihenfolge das geschen ist.

Ich möchte halt möglichst viel Infos sammeln denn wenn ich das System runterfahre, soll es halt schnell gehen.

Was hältst du vom Einspielen eines neuen Grundsystems? Von Seiten Debian ist da ja nicht viel mehr drauf.

Ach ja, ein ftp Dienst läuft auch noch, die Dateien in diesem Verzeichnis sind vorhanden.

Denkst du es gäbe eine Möglichkeit da was zu basteln. (Wenn ich ls usw. in das ftp Verzeichnis hochlade z.B., ich hoffe dort gibts Schreibrechte)

Wie gesagt, für jeden Tipp unendlich dankbar!

-fliewa-

Benutzeravatar
TRex
Moderator
Beiträge: 8383
Registriert: 23.11.2006 12:23:54
Wohnort: KA

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von TRex » 03.12.2008 12:10:37

Festplatte abhängen, extern am Backupserver dranhängen und Daten rüberspielen/abgleichen.
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!Wie man widerspricht

fliewatueuet
Beiträge: 7
Registriert: 02.12.2008 23:12:14

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von fliewatueuet » 03.12.2008 13:13:12

Das ist eine gute Idee!

Womit könnte man das schnell abgleichen? Hast du da einen Tipp?

lg

Helmut

Benutzeravatar
TRex
Moderator
Beiträge: 8383
Registriert: 23.11.2006 12:23:54
Wohnort: KA

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von TRex » 03.12.2008 13:31:36

Abgleichen? Hmm, also ich würde die Daten mit cp manuell kopieren. Und falls du was (älteres) überschreiben willst, leg dir ein Backup an.
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!Wie man widerspricht

fliewatueuet
Beiträge: 7
Registriert: 02.12.2008 23:12:14

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von fliewatueuet » 03.12.2008 15:09:41

Ja, ich denke so werd ichs machen.

Ich fahr den Rechner runter, clone die Platte und häng sie an meinen Backupserver dran.

Anschliessend werde ich die Dateien vergleichen.

Ich denke dass ich gute Chancen habe das vollständig wiederzukriegen, weil ich ja nur Dateien gelöscht hab die älter als 195 Tage sind.

Demnach müsste ich alles neuere eigentlich verfügbar haben.

Wenns ganz schlimm ist, kopier ich halt die aktuellen configs und Daten auf den Backupserver und bring den zum Laufen.

Vielen Dank für eure Tipps!

Ist eigentlich ziemlich doof dass man direkt am System gar nichts mehr machen kann.
Wenn ich einen USB Stick mit den wichtigsten commands anstecke wird mich das ja wohl auch nicht weiterbringen (ohne mount) oder?

Hat vielleicht jemand eine Idee wie ich einen USB Stick in der aktuellen Session ansprechen könnte ohne ein mount zu haben?

-fliewa-

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von Spasswolf » 03.12.2008 15:18:02

Wenn ein (noch funktionsfähiger) Compiler installiert ist, kannst du dir ein kleines mount selberbauen. Läuft denn udev noch, so dass ein device in /dev/für den Stick erstellt wird? Steht dir noch dmesg zur Verfügung?

fliewatueuet
Beiträge: 7
Registriert: 02.12.2008 23:12:14

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von fliewatueuet » 03.12.2008 16:57:13

Das mit dem Compiler müsste ich testen, bin gerade nicht im Office.

Ob ein device in /dev erstellt wird kann ich magels ls nicht sagen :-(

Benutzeravatar
goeb
Beiträge: 348
Registriert: 26.08.2006 18:12:08
Lizenz eigener Beiträge: MIT Lizenz

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von goeb » 03.12.2008 17:23:55

Ein fehlendes ls ist doch nun wirklich nicht so schlimm, wenn du ne Shell hast: echo * zeigt auch alle Dateien im aktuellen Verzeichnis an. Bißchen Kreativität schadet nie :)

MfG, gœb

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von rendegast » 03.12.2008 23:53:58

Fehlendes ls?
Dann kommen die coreutils auch auf die Liste :)
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
TRex
Moderator
Beiträge: 8383
Registriert: 23.11.2006 12:23:54
Wohnort: KA

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von TRex » 04.12.2008 00:05:53

Ich denk da hats den ganzen bin-Ordner erwischt. Das Grundsystem dürfte hinüber sein, Rettungsversuche dauern da nur unnötig lange. Wenn er nicht unbedingt ein funktionierendes System für den Datenexport braucht, würd ich da nicht länger dran rumfuchteln.
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!Wie man widerspricht

fliewatueuet
Beiträge: 7
Registriert: 02.12.2008 23:12:14

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von fliewatueuet » 04.12.2008 19:48:20

Ja, das mit dem Grundsystem hatte ich ja befürchtet. Daher war die ursprüngliche Frage ja, ob ich das Grundsystem von der Installations CD einspielen kann und der Installer mir die restlichen Dateien so beläßt wie sie sind. (Natürlich vorausgesetzt dass ich nicht neu partitioniere.).

Also so dass praktisch nur die fehlenden Dateien installiert werden, alle bereits bestehenden unverändert bleiben.

@goeb
Danke das mit dem echo wer ich gleich mal probieren, dann kann ich zumindest mal das Außmaß der Katastrophe abschätzen.

-fliewa-

fliewatueuet
Beiträge: 7
Registriert: 02.12.2008 23:12:14

Re: Hilfe! Ich hab zuviel gelöscht ...

Beitrag von fliewatueuet » 05.12.2008 10:16:02

Ich habe jetzt mittels ECHO mal die Verzeichnisse geprüft.

Komischerweise wird da alles angezeigt? Wenn ich also z.B.: im /bin Verzeichnis echo * angebe, bekomme ich eine Liste mit - soweit ich das sehe - allen commands. Auch z.B.: ls

Die Eingabe von /bin/ls bring aber

bash: /bin/ls: command nor found

Beim Versuch mich an einer anderen Konsole anzumelden bekomme ich wie schon gesagt die Meldung dass INIT /sbin/wgetty nicht starten kann.

Ein ECHO * im /sbin Verzeichnis zeigt aber wgetty ..

Bin jetzt ehrlich gesagt etwas verwirrt?

Was könnte den da los sein?

Antworten