/bin auf Server gelöscht (und noch zwei ssh-Verbindungen)
/bin auf Server gelöscht (und noch zwei ssh-Verbindungen)
Hallo,
yep, ... dümmer kann man nicht sein.
Ich habe mit "rm -r bin" den bin-Ordner gelöscht.
Dabei handelt es sich um einen Server (kein CD-Laufwerk, keine Tastatur, kein Monitor).
Die einzige Möglichkeit auf den Server zuzugreifen ist mit ssh. Während ich dies schreibe, bestehen noch zwei ssh-Verbindungen zu diesem Server. Neue lassen sich nicht öffen.
Was noch läuft und helfen könnte: apt-get als auch wget. Mit scp habe ich es auch geschafft von einem anderen Debian System (allerdings mit einer Distro die mind. schon 4 Jahre ist) bin-Dateien wieder auf den Server zu ziehen. Doch bei jedem Befehl erhalte ich (hier am Beispiel von ls)
-bash: /bin/ls: Kann die Datei nicht ausführen.
Keine Ahnung, ob es nun wirklich nur an Dateirechten liegt (seh ja nix mit ls). Auch kann ich kein cd oder chmod ausführen. Vom alten System habe ich den /bin-Ordner wie folgt kopiert: scp -rp root@<ip-alter-Debian>:/bin /bin/
Ich hoffe mal, dass die beiden bestehenden ssh-Verbindungen nicht abbrechen und jmd. eine glorreiche Idee hat.
(Wie man so dumm sein kann: Nach Mitternacht noch an zwei Kisten rumschrauben, und eine davon platt machen wollen, und sich dann mit der IP verhauen).
yep, ... dümmer kann man nicht sein.
Ich habe mit "rm -r bin" den bin-Ordner gelöscht.
Dabei handelt es sich um einen Server (kein CD-Laufwerk, keine Tastatur, kein Monitor).
Die einzige Möglichkeit auf den Server zuzugreifen ist mit ssh. Während ich dies schreibe, bestehen noch zwei ssh-Verbindungen zu diesem Server. Neue lassen sich nicht öffen.
Was noch läuft und helfen könnte: apt-get als auch wget. Mit scp habe ich es auch geschafft von einem anderen Debian System (allerdings mit einer Distro die mind. schon 4 Jahre ist) bin-Dateien wieder auf den Server zu ziehen. Doch bei jedem Befehl erhalte ich (hier am Beispiel von ls)
-bash: /bin/ls: Kann die Datei nicht ausführen.
Keine Ahnung, ob es nun wirklich nur an Dateirechten liegt (seh ja nix mit ls). Auch kann ich kein cd oder chmod ausführen. Vom alten System habe ich den /bin-Ordner wie folgt kopiert: scp -rp root@<ip-alter-Debian>:/bin /bin/
Ich hoffe mal, dass die beiden bestehenden ssh-Verbindungen nicht abbrechen und jmd. eine glorreiche Idee hat.
(Wie man so dumm sein kann: Nach Mitternacht noch an zwei Kisten rumschrauben, und eine davon platt machen wollen, und sich dann mit der IP verhauen).
----------------
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Du könntest dir mit
debootstrap schnell ein passendes debian in ein verzeichnis (auf einem funktionierenden system) zu installieren und von da das /bin rüber kopieren.
Wenn apt-get oder aptitude wirklich noch funktionieren kannst du mal das wichtigste reinstallen:
Mit aptitude geht das so: aptitude reinstall "?priority(required)" mit apt -get apt-get --reintall install und dann die pakete dahinter:
edit: hier von einem squeeze system die liste http://debianforum.de/forum/pastebin.ph ... ew&s=35607
Danach musst du noch herausfinden welche pakete sonst noch dateien aus /bin beinhalten.
![Debian](/pics/debianpackage.png)
Wenn apt-get oder aptitude wirklich noch funktionieren kannst du mal das wichtigste reinstallen:
Mit aptitude geht das so: aptitude reinstall "?priority(required)" mit apt -get apt-get --reintall install und dann die pakete dahinter:
edit: hier von einem squeeze system die liste http://debianforum.de/forum/pastebin.ph ... ew&s=35607
Danach musst du noch herausfinden welche pakete sonst noch dateien aus /bin beinhalten.
Unix is user-friendly; it's just picky about who its friends are.
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
cool. Um die Uhrzeit noch eine Antwort.
bzgl. Dateien von einem anderen System rüberkopieren: irgendwie gehen mir da ja die Rechte verloren. Zumindest hat es den Anschein. Ich habe ja bereits von einem anderen Debian-Uralt-System mir den bin-Ordner kopiert, bekomme dann aber wenn ich einen Datei aus bin ausführen will "Kann die Datei nicht ausführen". Wie die Rechte tatsächlich aussehen, kann ich ja leider nicht sehen, da auch ls nicht funktioniert.
Leider liefert apt-get --reinstall install folgendes:
root@Basisstation:/# apt-get --reinstall install
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut
Statusinformationen werden eingelesen... Fertig
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
root@Basisstation:/#
aptitude kenne ich mich leider nicht aus. Ich habe das genauso eingegeben, wie du es geschrieben hast: also aptitude reinstall "?priority(required)"
Da passiert dann auch schon einiges. Aber dann bricht es wie folgt ab:
.....
Hole:58 http://ftp.de.debian.org/debian/ squeeze/main zlib1g amd64 1:1.2.3.4.dfsg-3 [79,2 kB]
26,5 MB wurden in 11 s heruntergeladen (2.334 kB/s)
E: »bash« konnte nicht unmittelbar konfiguriert werden. Lesen Sie »man 5 apt.conf« unter APT::Immediate-Configure bezüglich weiterer Details. (2)
und es läßt sich immer noch nix aus dem /bin ausführen. Z.B. ls:
root@Basisstation:/# ls
-bash: /bin/ls: Kann die Datei nicht ausführen.
bzgl. Dateien von einem anderen System rüberkopieren: irgendwie gehen mir da ja die Rechte verloren. Zumindest hat es den Anschein. Ich habe ja bereits von einem anderen Debian-Uralt-System mir den bin-Ordner kopiert, bekomme dann aber wenn ich einen Datei aus bin ausführen will "Kann die Datei nicht ausführen". Wie die Rechte tatsächlich aussehen, kann ich ja leider nicht sehen, da auch ls nicht funktioniert.
Leider liefert apt-get --reinstall install folgendes:
root@Basisstation:/# apt-get --reinstall install
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut
Statusinformationen werden eingelesen... Fertig
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
root@Basisstation:/#
aptitude kenne ich mich leider nicht aus. Ich habe das genauso eingegeben, wie du es geschrieben hast: also aptitude reinstall "?priority(required)"
Da passiert dann auch schon einiges. Aber dann bricht es wie folgt ab:
.....
Hole:58 http://ftp.de.debian.org/debian/ squeeze/main zlib1g amd64 1:1.2.3.4.dfsg-3 [79,2 kB]
26,5 MB wurden in 11 s heruntergeladen (2.334 kB/s)
E: »bash« konnte nicht unmittelbar konfiguriert werden. Lesen Sie »man 5 apt.conf« unter APT::Immediate-Configure bezüglich weiterer Details. (2)
und es läßt sich immer noch nix aus dem /bin ausführen. Z.B. ls:
root@Basisstation:/# ls
-bash: /bin/ls: Kann die Datei nicht ausführen.
----------------
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Ich würde mit debootstrap einen Chroot anlegen und dein System clonen.
dpkg --get-selections > paketliste
cp paketliste /path/Chroot/root
Im Chroot
dpkg --set selections < /root/paketliste
apt-get dselect-upgrade
Chroot verlassen und /bin aus Chroot nach / kopieren. cp -ax oder mit rsync
Dann am besten noch restorerecond für SELINUX rattern lassen sofern du SELINUX benutzt.
Evtl. vorher noch /proc und /sys im Chroot mounten.
Sofern du /bin packst. Als root
tar -cjvfp bin.tar.bz2 bin
Der Schalter p erhält die Rechte. Bitte auch dann beim Auspacken benutzen
dpkg --get-selections > paketliste
cp paketliste /path/Chroot/root
Im Chroot
dpkg --set selections < /root/paketliste
apt-get dselect-upgrade
Chroot verlassen und /bin aus Chroot nach / kopieren. cp -ax oder mit rsync
Dann am besten noch restorerecond für SELINUX rattern lassen sofern du SELINUX benutzt.
Evtl. vorher noch /proc und /sys im Chroot mounten.
Sofern du /bin packst. Als root
tar -cjvfp bin.tar.bz2 bin
Der Schalter p erhält die Rechte. Bitte auch dann beim Auspacken benutzen
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
okay. Also ihr seit hier die Profis und ich der schwitzende Schüler. Ich will das jetzt nicht total versauen. Okay mit debootstrap ein Chroot anlegen ... was immer das auch ist.
Jedoch bekomme ich das mt dem debootstrap nicht hin.
Was ich jetzt auf dem Server gemacht habe, wo ich /bin gelöscht habe:
root@Basisstation:/etc/apt# apt-get install debootstrap
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut
Statusinformationen werden eingelesen... Fertig
Die folgenden NEUEN Pakete werden installiert:
debootstrap
0 aktualisiert, 1 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
Es müssen 57,5 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 274 kB Plattenplatz zusätzlich benutzt.
Hole:1 http://ftp.de.debian.org/debian/ squeeze/main debootstrap all 1.0.26+squeeze1 [57,5 kB]
Es wurden 57,5 kB in 0 s geholt (260 kB/s)
E: Unterprozess /usr/sbin/dpkg-preconfigure --apt || true hat Fehlercode zurückgegeben (100)
E: Failure running script /usr/sbin/dpkg-preconfigure --apt || true
Danke nochmals für die Hilfe. Echt Sorry, dass hier ist nicht mehr im Rahmen meiner Kenntnisse.
Jedoch bekomme ich das mt dem debootstrap nicht hin.
Was ich jetzt auf dem Server gemacht habe, wo ich /bin gelöscht habe:
root@Basisstation:/etc/apt# apt-get install debootstrap
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut
Statusinformationen werden eingelesen... Fertig
Die folgenden NEUEN Pakete werden installiert:
debootstrap
0 aktualisiert, 1 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
Es müssen 57,5 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 274 kB Plattenplatz zusätzlich benutzt.
Hole:1 http://ftp.de.debian.org/debian/ squeeze/main debootstrap all 1.0.26+squeeze1 [57,5 kB]
Es wurden 57,5 kB in 0 s geholt (260 kB/s)
E: Unterprozess /usr/sbin/dpkg-preconfigure --apt || true hat Fehlercode zurückgegeben (100)
E: Failure running script /usr/sbin/dpkg-preconfigure --apt || true
Danke nochmals für die Hilfe. Echt Sorry, dass hier ist nicht mehr im Rahmen meiner Kenntnisse.
----------------
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Also für den AnfangCBM hat geschrieben:okay. Also ihr seit hier die Profis und ich der schwitzende Schüler. Ich will das jetzt nicht total versauen. Okay mit debootstrap ein Chroot anlegen ... was immer das auch ist.
Frage 1: wo lege ich diesen Chroot an: auf dem Server wo ich /bin gelöscht habe, oder auf einem anderen System?
Frage 2: was genau muss ich auf der Kommandozeile eingeben, um den Chroot anzulegen. (ich habe Squeeze, auf allen Systemen);
Frage 3: "dpkg --get selections > paketliste --> soll ich das genauso eingeben, oder ist die Paketliste durch Paketename zu ersetzen, die nach bin sollen (durch Kommas getrennt)?
Danke nochmals für die Hilfe. Echt Sorry, dass hier ist nicht mehr im Rahmen meiner Kenntnisse.
man debootstrap
man chroot
man mount
Das sind Basics die du immer drauf haben musst.
Erstellt ein Debiansystem in ein Verzeichniss
debootstrap stable /path/to/stable http://debianmirror
Erzeugen einer Liste aller installierten Programme
dpkg --get-selections > paketliste.txt
Wechsel aus der derzeitigen Umgebung in einer neuen Umgebung. Einen chroot verlässt du mit exit als letzten Befehl
chroot /path/to/stable
Im chroot die Liste einspielen
dpkg --set selections < /root/paketliste.txt
Alle Programme im Server werden dank der eingespielten Liste dann auch im Chroot installiert
apt-get dselect-upgrade
Das kannst du beliebig wo machen sofern du per SFTP die Daten hochladen kannst. Ansonsten nur auf dem Server. Bedenke auch bitte das die Architektur gleich sein muss wenn dein Target nicht zugleich der Server ist.
Das Clonen ist bei /bin eigentlich optional. Allerdings beseitigt es jeden Zweifel.
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Variante 1: Chroot auf dem Server anlegen:
Geht nicht, da ich das debootstrap Paket nicht über apt-get install debootstrap installiert bekomme (siehe oben). Verd****
Variante 2: Chroot auf einem Laptop und dann kopieren
Zuerst mal testen, ob kopieren geht. Mit sftp kenne ich mich nicht aus, darum zunächst mal per scp:
Wie gesagt, bekomme ich jedoch vom Client zum Server keine weiteren ssh- oder scp Verbindungen hin (Fehlermeldung: /bin/bash: Exec format error). Umgekehrt, vom Server zu diesem Client, bekomme ich die Fehlermeldung: ssh: connect to host 10.0.0.10 port 22: Connection refused (keine Ahnung, warum ich diese Meldung bekomme ... vielleicht, da ich hin- und zurück, Client->Server->Client, verbinde).
sftp kenne ich mich nicht aus. Darum man sftp ... aber ich kann nicht mehr. mir fallen die Augen zu. Ich muss zuerst mal schlafen. Hoffentlich bleiben die ssh-Verbindungen offen.
Danke nochmals!
Geht nicht, da ich das debootstrap Paket nicht über apt-get install debootstrap installiert bekomme (siehe oben). Verd****
Variante 2: Chroot auf einem Laptop und dann kopieren
Zuerst mal testen, ob kopieren geht. Mit sftp kenne ich mich nicht aus, darum zunächst mal per scp:
Wie gesagt, bekomme ich jedoch vom Client zum Server keine weiteren ssh- oder scp Verbindungen hin (Fehlermeldung: /bin/bash: Exec format error). Umgekehrt, vom Server zu diesem Client, bekomme ich die Fehlermeldung: ssh: connect to host 10.0.0.10 port 22: Connection refused (keine Ahnung, warum ich diese Meldung bekomme ... vielleicht, da ich hin- und zurück, Client->Server->Client, verbinde).
sftp kenne ich mich nicht aus. Darum man sftp ... aber ich kann nicht mehr. mir fallen die Augen zu. Ich muss zuerst mal schlafen. Hoffentlich bleiben die ssh-Verbindungen offen.
Danke nochmals!
----------------
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
In dem Fall wäre ein Dateitransfer mit einem Usbstick vorzuziehen wenn möglich. Bei deiner Adresse scheinst du auch nicht wie ich 800 km laufen zu müssen um den Server zu erreichen
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Guten Morgen. Habe jetzt etwas geschlafen. Vielleicht packe ich es jetzt mit klarem Kopf.
Der Server steht direkt neben mir. Also das ist kein Profi-Server. Das ist ne Kiste selbst von mir zusammengeschraubt und mehr für privates. Ist aber echt alles drauf. Von Bildern bis zur Steuererklärung (ganz zu Schweigen von der Musiksammlung meiner Freundin).
USB-Stick? Zuerst dachte ich, dass dies auch nicht helfen kann, da ich zum runterkopieren vom Stick ja auch den cp-Befehl aus der gelöschten bin brauche. Aber folgender Umweg klappt:
Kopieren von Dateien von einem Laptop auf den USB-Stick. Den kann ich dann in einen ReadyNas stecken, von derm der "geschrottete" Server noch per scp Dateien runterkopiert.
Auf dem Laptop läuft übrigens auch Debian Squeeze. Jedoch als i386-Variante, der Server dagegen ist eine 64Byte-Kiste (wenn das mal wirklich so heißt). Jedenfalls habe ich es mal mit dem bin-Verzeichnis vom Laptop versucht: auf den Stick, Stick in ReadNas und von dort wie folgt auf die geschrottete Kiste:
scp -rp root@<IP_Quelle>:/USB/USB_FLASH_1/bin /bin/
Will ich aber bswp. ls ausführen, bekomme ich:
-bash: /bin/ls: Kann die Datei nicht ausführen.
O.k., dann bleibt nur noch der debootstrap auf dem Laptop. Auf geht's.
Der Server steht direkt neben mir. Also das ist kein Profi-Server. Das ist ne Kiste selbst von mir zusammengeschraubt und mehr für privates. Ist aber echt alles drauf. Von Bildern bis zur Steuererklärung (ganz zu Schweigen von der Musiksammlung meiner Freundin).
USB-Stick? Zuerst dachte ich, dass dies auch nicht helfen kann, da ich zum runterkopieren vom Stick ja auch den cp-Befehl aus der gelöschten bin brauche. Aber folgender Umweg klappt:
Kopieren von Dateien von einem Laptop auf den USB-Stick. Den kann ich dann in einen ReadyNas stecken, von derm der "geschrottete" Server noch per scp Dateien runterkopiert.
Auf dem Laptop läuft übrigens auch Debian Squeeze. Jedoch als i386-Variante, der Server dagegen ist eine 64Byte-Kiste (wenn das mal wirklich so heißt). Jedenfalls habe ich es mal mit dem bin-Verzeichnis vom Laptop versucht: auf den Stick, Stick in ReadNas und von dort wie folgt auf die geschrottete Kiste:
scp -rp root@<IP_Quelle>:/USB/USB_FLASH_1/bin /bin/
Will ich aber bswp. ls ausführen, bekomme ich:
-bash: /bin/ls: Kann die Datei nicht ausführen.
O.k., dann bleibt nur noch der debootstrap auf dem Laptop. Auf geht's.
Zuletzt geändert von CBM am 03.06.2011 08:49:14, insgesamt 1-mal geändert.
----------------
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Und? Wo liegt das Problem ![Wink ;)](./images/smilies/icon_wink.gif)
Du hast die Konzepte von mount und chroot gelesen. Aber nicht verstanden?
Sofern du einen Chroot auf dem USB Stick hast, vom Server aus /proc /sys /dev in den Chroot mounten
Deinen USB Stick nenne ich mal /dev/sda1. Du weist besser wie der heisst. Und ich nehme an es wird ext3 benutzt. Der chroot befinded sich in keinen Unterordner auf dem USB-Stick
mount listet auch alle mounts auf. Für den Fall das du nicht weist wie dein RootDevice heisst
Listing kaputte Maschiene:
Ich geh mal davon aus dein RootDevice heisst /dev/hda1
Listing im chroot
Du solltest jetzt erst mal ein halbwegs funktionsfähiges /bin haben
Achtung du musst die selbe Architektur haben! AMD64 funktioniert nicht auf ARMEL, PPC oder i386
debootstrap liefert Optionen um auch die Targetarchitektur zu strappen. Die manpage erklärt alles
![Wink ;)](./images/smilies/icon_wink.gif)
Du hast die Konzepte von mount und chroot gelesen. Aber nicht verstanden?
Sofern du einen Chroot auf dem USB Stick hast, vom Server aus /proc /sys /dev in den Chroot mounten
Deinen USB Stick nenne ich mal /dev/sda1. Du weist besser wie der heisst. Und ich nehme an es wird ext3 benutzt. Der chroot befinded sich in keinen Unterordner auf dem USB-Stick
mount listet auch alle mounts auf. Für den Fall das du nicht weist wie dein RootDevice heisst
Listing kaputte Maschiene:
Code: Alles auswählen
mkdir /mnt/rescue
mount -t ext3 /dev/sda1 /mnt/rescue
mount --bind /dev /mnt/rescue/dev
mount --bind /proc /mnt/rescue/proc
mount --bind /sys /mnt/rescue/sys
chroot /mnt/rescue/
Listing im chroot
Code: Alles auswählen
mount -t ext3 /dev/hda1 /mnt
cp -ax /bin /mnt/bin
exit
Achtung du musst die selbe Architektur haben! AMD64 funktioniert nicht auf ARMEL, PPC oder i386
debootstrap liefert Optionen um auch die Targetarchitektur zu strappen. Die manpage erklärt alles
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Hallo MiniMike.
Da haben sich unsere Beiträge wohl überschnitten. Zunächst mal Danke für deine Unterstützung!!!
Ich gebe zu, dass ich nur theoretisch das mit dem debootstrap verstanden habe. Werde jetzt aber solange die man lesen, bis ich es raffe und auch umsetzen kann. Bitte noch eine Frage:
Kann ich auf einem i386-Laptop einen Chroot erzeugen, denn ich dann auch für den Server verwenden kann, der eine AMD64 Kiste ist.
Du hast zwar bereits geschrieben, dass es die selbe Architektur sein muss, aber ich will doch liebe nochmals Fragen. Denn dann wäre der Ansatz ja auch gleich ein no-go.
Da haben sich unsere Beiträge wohl überschnitten. Zunächst mal Danke für deine Unterstützung!!!
Ich gebe zu, dass ich nur theoretisch das mit dem debootstrap verstanden habe. Werde jetzt aber solange die man lesen, bis ich es raffe und auch umsetzen kann. Bitte noch eine Frage:
Kann ich auf einem i386-Laptop einen Chroot erzeugen, denn ich dann auch für den Server verwenden kann, der eine AMD64 Kiste ist.
Du hast zwar bereits geschrieben, dass es die selbe Architektur sein muss, aber ich will doch liebe nochmals Fragen. Denn dann wäre der Ansatz ja auch gleich ein no-go.
----------------
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Hast du wenigsten Lynx oder wget auf dem Rechner? Mit Rsync hast du schon gewonnen sofern vorhanden. Irgendwie musst du mount oder zumindest tar drauf bekommen. Ein i386 chroot sollte auf AMD64 gehen. Alles andere geht auf keinen Fall
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Edit mir fällt grad ein das die Kiste ja neben dir steht.
Kannst du von einer LifeCD booten?
Dann probier mal GRML. Hat mir schon öfter mal den Arsch gerettet
http://grml.org/
Oder kannst du vom Server aus via SFTP auf dem Laptop kommen
sftp username@yourlaptop:/path/to/somewhere
Kannst du von einer LifeCD booten?
Dann probier mal GRML. Hat mir schon öfter mal den Arsch gerettet
http://grml.org/
Oder kannst du vom Server aus via SFTP auf dem Laptop kommen
sftp username@yourlaptop:/path/to/somewhere
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
minimike.
wget ist drauf!
rysnc ist drauf und läuft!!!
LifeCD-Boote geht nicht --> kein CD-ROM Laufwerk.
Installiert habe ich den Server damals mit einem USB-Stick ... aber ehrlich gesagt: einen reboot würde ich gerne bis zum Schluss hinauszögern. Jetzt kann ich noch auf die Kiste über die noch bestehenden SSH-Verbindungen rumprobieren. Ich befürchte, nach einem reboot ist es ganz aus.
Mit scp komme ich ja auch auf den USB-Stick, den ich in einen ReadyNas-Duo Server stecken kann. Über den Umweg habe ich ja auch schon den /bin-Ordner von einem i386-Laptop auf dem auch Debian-Squeeze läuft kopiert: scp -rp root@<IP_Quelle>:/USB/USB_FLASH_1/bin /bin/
Aber die kopierten bin-Dateien lassen sich auf dem geschrotteten Server nicht ausführen: Bsp: -bash: /bin/ls: Kann die Datei nicht ausführen. (Rechte falsch übernommen???).
Nächste Versuche, in der Hoffnung es liegt irgendwie an rechten, die von scp nicht richtige übernommen werden:
Statt mit scp über rsync den i386-Laptop-bin-Order rüberkopieren. Da wäre mount ja gleich mit dabei.
Geht das auch nicht, die chroot Variante: Was ich aber auch theoretisch nicht verstehe: ich habe doch bereits einen i386-Debian-Rechner, von dich ich den /bin-Ordner kopiert habe (siehe oben). Den debootstrap kann ich auch nur auf diesem i386-Debian-Rechner anlegen. Aber wird mir der debootstrap dann nicht einfach genau denselben /bin-Ordner liefern wie er bereits vorhanden ist. Versuchen werde ich es aber auf jeden Fall.
wget ist drauf!
rysnc ist drauf und läuft!!!
LifeCD-Boote geht nicht --> kein CD-ROM Laufwerk.
Installiert habe ich den Server damals mit einem USB-Stick ... aber ehrlich gesagt: einen reboot würde ich gerne bis zum Schluss hinauszögern. Jetzt kann ich noch auf die Kiste über die noch bestehenden SSH-Verbindungen rumprobieren. Ich befürchte, nach einem reboot ist es ganz aus.
Mit scp komme ich ja auch auf den USB-Stick, den ich in einen ReadyNas-Duo Server stecken kann. Über den Umweg habe ich ja auch schon den /bin-Ordner von einem i386-Laptop auf dem auch Debian-Squeeze läuft kopiert: scp -rp root@<IP_Quelle>:/USB/USB_FLASH_1/bin /bin/
Aber die kopierten bin-Dateien lassen sich auf dem geschrotteten Server nicht ausführen: Bsp: -bash: /bin/ls: Kann die Datei nicht ausführen. (Rechte falsch übernommen???).
Nächste Versuche, in der Hoffnung es liegt irgendwie an rechten, die von scp nicht richtige übernommen werden:
Statt mit scp über rsync den i386-Laptop-bin-Order rüberkopieren. Da wäre mount ja gleich mit dabei.
Geht das auch nicht, die chroot Variante: Was ich aber auch theoretisch nicht verstehe: ich habe doch bereits einen i386-Debian-Rechner, von dich ich den /bin-Ordner kopiert habe (siehe oben). Den debootstrap kann ich auch nur auf diesem i386-Debian-Rechner anlegen. Aber wird mir der debootstrap dann nicht einfach genau denselben /bin-Ordner liefern wie er bereits vorhanden ist. Versuchen werde ich es aber auf jeden Fall.
----------------
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
USB sollte kein großes Problem sein:
http://wiki.grml.org/doku.php?id=usb#bo ... ire-device
Was hat denn der Rechner jetzt? i386 oder AMD64?
http://wiki.grml.org/doku.php?id=usb#bo ... ire-device
Was hat denn der Rechner jetzt? i386 oder AMD64?
Unix is user-friendly; it's just picky about who its friends are.
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Kurze Frage bekommst du Dateien speziell Dateien aus /bin von deinen Netwerk nach deinen Server? Wenn ja hast du fast schon gewonnen
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Also, so sehen die vorhandenen Architekturen aus:
1) der geschrottete Server, der zu retten ist: AMD64; Aktuellste Debian-Version;
2) Läuffähiger Laptop, der zum geschrotteten Server noch zwei SSH-Verbindungen offen hat. Über den mal allerdings keine scp-Verbindung mehr zum geschrotteten Server hinbekommt; i386; aktuellste Debian-Version;
3) ein instabiler ReadyNas Duo, auf dem ein Debian-Derivat läuft (Sparc-cpu). Von dort kann ich mir noch mit scp Dateien auf den geschrotteten Server ziehen. Auch kann ich dessen USB vom geschrotteten Server via scp erreichen.
1) der geschrottete Server, der zu retten ist: AMD64; Aktuellste Debian-Version;
2) Läuffähiger Laptop, der zum geschrotteten Server noch zwei SSH-Verbindungen offen hat. Über den mal allerdings keine scp-Verbindung mehr zum geschrotteten Server hinbekommt; i386; aktuellste Debian-Version;
3) ein instabiler ReadyNas Duo, auf dem ein Debian-Derivat läuft (Sparc-cpu). Von dort kann ich mir noch mit scp Dateien auf den geschrotteten Server ziehen. Auch kann ich dessen USB vom geschrotteten Server via scp erreichen.
----------------
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
wie geschrieben: ich kann über scp noch in das /bin-Verzeichnis des geschrotteten Server gezielt Dateien rein kopieren. So ist ja auch aktuell der bin-Ordner von meinem i386-Laptop dort reingekommen. Allerdings lassen sich die Dateien nicht ausführen, obwohl ich root bin. Bsp.:minimike hat geschrieben:Kurze Frage bekommst du Dateien speziell Dateien aus /bin von deinen Netwerk nach deinen Server? Wenn ja hast du fast schon gewonnen
root@Basisstation:/bin# ls
-bash: /bin/ls: Kann die Datei nicht ausführen.
----------------
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Die passen DEB's dann runter laden
DEB's sind AR archive
ar -x dein.deb
tar zxvf data.tar.gz
wenn du nicht genau nach /bin kopieren kannst must du den Pfad voll ausschreiben
/foo/bar/mkdir /bin Zum Beispiel. Bis heute Abend
DEB's sind AR archive
ar -x dein.deb
tar zxvf data.tar.gz
wenn du nicht genau nach /bin kopieren kannst must du den Pfad voll ausschreiben
/foo/bar/mkdir /bin Zum Beispiel. Bis heute Abend
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Dann fehlen dir wohl die ia32-libs für die 32bit dinger.1) der geschrottete Server, der zu retten ist: AMD64; Aktuellste Debian-Version;
Ich würde mit debootstrap ein amd64 system anlegen. Das sollte es auch auf i386 machen, du kannst dann halt nicht rein chrooten aber ein /bin mit dem wichtigsten kriegst du.
//edit:
Code: Alles auswählen
debootstrap --arch=amd64 squeeze target/ http://ftp.de.debian.org/debian
Zuletzt geändert von catdog2 am 03.06.2011 09:51:09, insgesamt 1-mal geändert.
Unix is user-friendly; it's just picky about who its friends are.
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Es ist einfacher ein paar debs für AMD64 zu extrahieren un den Inhalt aus /bin dann rüber zu kopieren. Sobald auf dem Server wieder cp und mount verfügbar ist, dann ist der Sieg unsercatdog2 hat geschrieben:Dann fehlen dir wohl die ia32-libs für die 32bit dinger.1) der geschrottete Server, der zu retten ist: AMD64; Aktuellste Debian-Version;
Ich würde mit debootstrap ein amd64 system anlegen. Das sollte es auch auf i386 machen, du kannst dann halt nicht rein chrooten aber ein /bin mit dem wichtigsten kriegst du.
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Siehe meinen edit im vorigen post. Ist ein einzeiler.Es ist einfacher ein paar debs für AMD64 zu extrahieren un den Inhalt aus /bin dann rüber zu kopieren.
edit://
bricht zwar irgendwann ab wegen chroot aber du kriegst
Code: Alles auswählen
bash df grep mknod rbash su uncompress zforce
cat dir gunzip mktemp readlink sync vdir zgrep
chgrp dmesg gzexe more rm tailf which zless
chmod dnsdomainname gzip mount rmdir tar ypdomainname zmore
chown domainname hostname mountpoint run-parts tempfile zcat znew
cp echo ln mv sed touch zcmp
dash egrep login nisdomainname sh true zdiff
date false ls pidof sleep umount zegrep
dd fgrep mkdir pwd stty uname zfgrep
Unix is user-friendly; it's just picky about who its friends are.
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Hallo,
also ich habe auf dem i386-Laptop
ausgeführt.
Das ging soweit auch, bis die Fehlermeldung: W: Failure trying to run: chroot //target mount -t proc proc /proc
kam. Aber dies hatte ja catdog2 auch angekündigt. Wichtig ist doch nur, dass ich jetzt den richtigen /bin-Ordner habe. Der ist auch da!!!
Jetzt muss ich aber doch diesen Ordner noch von dem i386 auf den AMD64 kopieren. Das scheint auch mit
zu klappen (ich habe den target/bin auf den USB-Stick kopiert und den dann in den ReadyNas gesteckt).
Aber dann ist immer noch das Problem, dass ich dann auf dem AMD64 gesagt bekomme:
-bash: /bin/ls: Kann die Datei nicht ausführen. Wie gesagt, die Dateien müssten jetzt auf dem AMD64 sein.
--> stimmt da jetzt was nicht mit den Rechten oder war es doch der falsche /bin-Ordner?
achja: selbst wenn ich deb-Dateien auf den AMD64 bekomme, tar ist Teil von /bin, und somit
ar dagegen geht.
also ich habe auf dem i386-Laptop
Code: Alles auswählen
debootstrap --arch=amd64 squeeze target/ http://ftp.de.debian.org/debian
Das ging soweit auch, bis die Fehlermeldung: W: Failure trying to run: chroot //target mount -t proc proc /proc
kam. Aber dies hatte ja catdog2 auch angekündigt. Wichtig ist doch nur, dass ich jetzt den richtigen /bin-Ordner habe. Der ist auch da!!!
Jetzt muss ich aber doch diesen Ordner noch von dem i386 auf den AMD64 kopieren. Das scheint auch mit
Code: Alles auswählen
scp -r root@xx.xx.xx.xx:/USB/USB_FLASH_1 /bin/
Aber dann ist immer noch das Problem, dass ich dann auf dem AMD64 gesagt bekomme:
-bash: /bin/ls: Kann die Datei nicht ausführen. Wie gesagt, die Dateien müssten jetzt auf dem AMD64 sein.
--> stimmt da jetzt was nicht mit den Rechten oder war es doch der falsche /bin-Ordner?
achja: selbst wenn ich deb-Dateien auf den AMD64 bekomme, tar ist Teil von /bin, und somit
Code: Alles auswählen
-bash: /bin/tar: Kann die Datei nicht ausführen.
----------------
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
tar ist doch Teil vom gelöschten /bin-Ordner. ar dagegen ist noch da.minimike hat geschrieben:
tar zxvf data.tar.gz
----------------
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Dateiserver: Eigenbau; Gigabit-Lan, Sata-600, AMD Athlon
Mail und Mediaserver: Raspberry Pi
Modem: ne' Kiste gestellt von UnityMedia (suche noch nach alternativen)
Router: TP-Link, mit dd-WRT geflasht
Arbeitscomputer: Eigenbau; Gigabit-Lan, Sata-600, AMD Phenom II
Re: /bin auf Server gelöscht (und noch zwei ssh-Verbindungen
Mach mal so:
sonst hast du das verzeichnis USB_FLASH_1 in /bin.
Code: Alles auswählen
scp -r root@xx.xx.xx.xx:/USB/USB_FLASH_1/* /bin/
Unix is user-friendly; it's just picky about who its friends are.