Benutzer-Werkzeuge

Webseiten-Werkzeuge


tachtler:klonen_eines_servers

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

tachtler:klonen_eines_servers [2008/06/24 14:21]
127.0.0.1 Externe Bearbeitung
tachtler:klonen_eines_servers [2012/08/29 12:24] (aktuell)
klaus
Zeile 27: Zeile 27:
  
 :!: Es reicht hier völlig aus, das gefundene Betriebssystem **read-only** zu //​mounten//​. :!: Es reicht hier völlig aus, das gefundene Betriebssystem **read-only** zu //​mounten//​.
 +
 ==== Einbinden von Kernel-Modulen einer Netzwerkkarte ==== ==== Einbinden von Kernel-Modulen einer Netzwerkkarte ====
  
-Falls z.B. eine Netzwekkarte ​der Firma [[http://​www.realtek.com/​|Realtek]] im Rechner Verwendung findet, wird aktuell der Treiber nicht standardmässig ​nach einer erfolgreichen Installation von [[http://​www.centos.org|CentOS]] im Betriebssystem vorhanden und eingebunden sein. Hier ist es notwendig die Treiber für diese Netzwerkkarte selbst zu installieren oder sogar selbst zu kompilieren.+Falls z.B. eine Netzwerkkarte ​der Firma [[http://​www.realtek.com/​|Realtek]] im Rechner Verwendung findet, wird aktuell der Treiber nicht standardmäßig ​nach einer erfolgreichen Installation von [[http://​www.centos.org|CentOS]] im Betriebssystem vorhanden und eingebunden sein. Hier ist es notwendig die Treiber für diese Netzwerkkarte selbst zu installieren oder sogar selbst zu kompilieren.
  
 Die Kernel-Module liegen dann bei [[http://​www.centos.org|CentOS]] unter ''/​lib/​modules/<​kernel-version>/​kernel/​drivers/​net''​. Die Kernel-Module liegen dann bei [[http://​www.centos.org|CentOS]] unter ''/​lib/​modules/<​kernel-version>/​kernel/​drivers/​net''​.
  
-Um dieses Kernel-Modul auch im //​Rettungssystem//​ einzubinden und nutzen zu können, wird die Datei, hier als Beispiel die Treiberdatei für eine [[http://​www.realtek.com/​|Realtek]] ​Netzwerrkarte ​des Typs [[http://​www.realtek.com/​downloads/​downloadsView.aspx?​Langid=1&​PNid=4&​PFid=4&​Level=5&​Conn=4&​DownTypeID=3&​GetDown=false&​Downloads=true#​RTL8110S-32/​RTL8110SB(L)/​RTL8169SB(L)/​RTL8169SC(L)/​RTL8169|RTL8110S-32/​RTL8110SB(L)/​RTL8169SB(L)/​RTL8169SC(L)/​RTL8169 (Software)]] ''​r8169.ko''​ für den Kernel 2.6 benötigt, welche wir aus dem gefundenen Betriebssystem in das Dateisystem des //​Rettungssystems//​ nach ''/​tmp''​ z.B. mit folgendem Befehl kopieren:+Um dieses Kernel-Modul auch im //​Rettungssystem//​ einzubinden und nutzen zu können, wird die Datei, hier als Beispiel die Treiberdatei für eine [[http://​www.realtek.com/​|Realtek]] ​Netzwerkkarte ​des Typs [[http://​www.realtek.com/​downloads/​downloadsView.aspx?​Langid=1&​PNid=4&​PFid=4&​Level=5&​Conn=4&​DownTypeID=3&​GetDown=false&​Downloads=true#​RTL8110S-32/​RTL8110SB(L)/​RTL8169SB(L)/​RTL8169SC(L)/​RTL8169|RTL8110S-32/​RTL8110SB(L)/​RTL8169SB(L)/​RTL8169SC(L)/​RTL8169 (Software)]] ''​r8169.ko''​ für den Kernel 2.6 benötigt, welche wir aus dem gefundenen Betriebssystem in das Dateisystem des //​Rettungssystems//​ nach ''/​tmp''​ z.B. mit folgendem Befehl kopieren:
 <​code>​ <​code>​
 cp /​mnt/​sysimage/​lib/​modules/​2.6.18-53.1.21.el5/​kernel/​drivers/​net/​r8169.ko /tmp cp /​mnt/​sysimage/​lib/​modules/​2.6.18-53.1.21.el5/​kernel/​drivers/​net/​r8169.ko /tmp
Zeile 91: Zeile 92:
           RX bytes:​2927566 (2.7 MiB)  TX bytes:​2927566 (2.7 MiB)           RX bytes:​2927566 (2.7 MiB)  TX bytes:​2927566 (2.7 MiB)
 </​code>​ </​code>​
 +
 ===== Klonen auf eine interne Festplatte ===== ===== Klonen auf eine interne Festplatte =====
  
Zeile 96: Zeile 98:
  
 Dies kann mit folgendem Befehl durchgeführt werden: Dies kann mit folgendem Befehl durchgeführt werden:
-<​code>​+<​code ​bash>
 # dd if=/dev/sda ibs=1M of=/dev/sdb obs=1M # dd if=/dev/sda ibs=1M of=/dev/sdb obs=1M
 </​code>​ </​code>​
Zeile 103: Zeile 105:
  
 Um nur eine Partition zu kopieren, kann folgender Befehl verwendet werden: Um nur eine Partition zu kopieren, kann folgender Befehl verwendet werden:
-<​code>​+<​code ​bash>
 # dd if=/​dev/​hda1 ibs=1M of=/​dev/​hdb1 obs=1M # dd if=/​dev/​hda1 ibs=1M of=/​dev/​hdb1 obs=1M
 </​code>​ </​code>​
  
 Der Befehl bewirkt, dass die Partition 1 einer IDE-Festplatte ''/​dev/​hda1''​ auf die Partition 2 einer IDE-Festplatte ''/​dev/​hdb1''​ "bit für bit" kopiert wird. Der Befehl bewirkt, dass die Partition 1 einer IDE-Festplatte ''/​dev/​hda1''​ auf die Partition 2 einer IDE-Festplatte ''/​dev/​hdb1''​ "bit für bit" kopiert wird.
 +
 ===== Klonen auf einen entfernten Rechner via FTP ===== ===== Klonen auf einen entfernten Rechner via FTP =====
  
Zeile 121: Zeile 124:
   - Ein erreichbarer,​ laufender FTP-Server im Netzwerk (z.B. [[http://​filezilla-project.org/​|FileZilla Server (Windows)]],​ [[http://​vsftpd.beasts.org/​|vsftpd (Linux)]])   - Ein erreichbarer,​ laufender FTP-Server im Netzwerk (z.B. [[http://​filezilla-project.org/​|FileZilla Server (Windows)]],​ [[http://​vsftpd.beasts.org/​|vsftpd (Linux)]])
   - Schreibender Zugriff mittels Benutzername (und optionalem Kennwort) auf diesen FTP-Server im Netzwerk   - Schreibender Zugriff mittels Benutzername (und optionalem Kennwort) auf diesen FTP-Server im Netzwerk
 +  - 
 ==== Vorbereitung ==== ==== Vorbereitung ====
  
Zeile 129: Zeile 133:
  
 Der Inhalt der Datei sollte wie folgt aussehen, welcher z.B. mit dem Editor ''​vi''​ erstellt werden kann (''​vi /​tmp/​ftptmp'',​ ''​i''​ für Editieren des Inhalts, speichern des Inhalts mit [Esc]-Taste,​ '':​wq''​):​ Der Inhalt der Datei sollte wie folgt aussehen, welcher z.B. mit dem Editor ''​vi''​ erstellt werden kann (''​vi /​tmp/​ftptmp'',​ ''​i''​ für Editieren des Inhalts, speichern des Inhalts mit [Esc]-Taste,​ '':​wq''​):​
-<​code>​+<​code ​ini>
 # vi /tmp/ftptmp # vi /tmp/ftptmp
 open <​IP-Adresse des entfernten Rechners> ​         z.B. 192.168.0.3 open <​IP-Adresse des entfernten Rechners> ​         z.B. 192.168.0.3
Zeile 139: Zeile 143:
  
 Hier noch einmal **OHNE** Kommentare: Hier noch einmal **OHNE** Kommentare:
-<​code>​+<​code ​ini>
 # vi /tmp/ftptmp # vi /tmp/ftptmp
 open 192.168.0.3 open 192.168.0.3
Zeile 147: Zeile 151:
 bye bye
 </​code>​ </​code>​
 +
 ==== Durchführung ==== ==== Durchführung ====
  
 Der Befehl zum durchführen des Klonens lautet wie folgt: Der Befehl zum durchführen des Klonens lautet wie folgt:
-<​code>​+<​code ​bash>
 # dd if=/​dev/​sda1 ibs=1M | `( cat /tmp/ftptmp ; dd bs=1M | gzip ) | ftp -n ` # dd if=/​dev/​sda1 ibs=1M | `( cat /tmp/ftptmp ; dd bs=1M | gzip ) | ftp -n `
 </​code>​ </​code>​
Zeile 157: Zeile 162:
  
 Der Befehl sollte in etwa eine ähnliche Ausgabe wie folgende erzeugen: Der Befehl sollte in etwa eine ähnliche Ausgabe wie folgende erzeugen:
-<​code>​+<​code ​bash>
 KERBEROS_V4 rejected as an authentication type KERBEROS_V4 rejected as an authentication type
 </​code>​ </​code>​
Zeile 173: Zeile 178:
  
 :!: Die Fehlermeldung ''​-bash:​ Please: command not found''​ am Ende der Ausgabe kann ignoriert werden, da diese nur ein Hinweis für eine fehlende Eingabedatei für den Befehl ''​put''​ innerhalb der Datei ''/​tmp/​ftptmp''​ ist. :!: Die Fehlermeldung ''​-bash:​ Please: command not found''​ am Ende der Ausgabe kann ignoriert werden, da diese nur ein Hinweis für eine fehlende Eingabedatei für den Befehl ''​put''​ innerhalb der Datei ''/​tmp/​ftptmp''​ ist.
 +
 ==== Ergebnis ==== ==== Ergebnis ====
  
Zeile 188: Zeile 194:
 15M     ​clone.sda1.gz 15M     ​clone.sda1.gz
 </​code>​ </​code>​
 +
 ==== Erklärung ==== ==== Erklärung ====
  
 Hier die Erklärung, was bei folgendem Befehl passiert: Hier die Erklärung, was bei folgendem Befehl passiert:
-<​code>​+<​code ​bash>
 # dd if=/​dev/​sda1 ibs=1M | `( cat /tmp/ftptmp ; dd bs=1M | gzip ) | ftp -n ` # dd if=/​dev/​sda1 ibs=1M | `( cat /tmp/ftptmp ; dd bs=1M | gzip ) | ftp -n `
 </​code>​ </​code>​
  
 Der erste Teil: Der erste Teil:
-<​code>​+<​code ​bash>
 # dd if=/​dev/​sda1 ibs=1M ​ # dd if=/​dev/​sda1 ibs=1M ​
 </​code>​ </​code>​
Zeile 202: Zeile 209:
  
 Der zweite Teil: Der zweite Teil:
-<​code>​+<​code ​bash>
 `( cat /tmp/ftptmp ;  `( cat /tmp/ftptmp ; 
 </​code>​ </​code>​
Zeile 208: Zeile 215:
  
 Der dritte Teil: Der dritte Teil:
-<​code>​+<​code ​bash>
 dd bs=1M | gzip ) dd bs=1M | gzip )
 </​code>​ </​code>​
Zeile 214: Zeile 221:
  
 Der letzte Teil: Der letzte Teil:
-<​code>​+<​code ​bash>
  | ftp -n `  | ftp -n `
 </​code>​ </​code>​
 sendet die so erhaltenen Daten an den FTP-Server weiter, ohne erneute authentifizierung zu verlangen, Option ''​-n''​. sendet die so erhaltenen Daten an den FTP-Server weiter, ohne erneute authentifizierung zu verlangen, Option ''​-n''​.
 +
 ===== Klonen von einem entfernten Rechner via FTP ===== ===== Klonen von einem entfernten Rechner via FTP =====
  
 Falls alle bereits oben beschriebenen Voraussetzungen auch weiterhin gegeben sind, kann auch das Klonen von einem entferten Rechner via FTP durchgeführt werden. Es sind hier jedoch noch einmal alle Schritte beschrieben. Falls alle bereits oben beschriebenen Voraussetzungen auch weiterhin gegeben sind, kann auch das Klonen von einem entferten Rechner via FTP durchgeführt werden. Es sind hier jedoch noch einmal alle Schritte beschrieben.
 +
 ==== Voraussetzungen ​ ==== ==== Voraussetzungen ​ ====
  
Zeile 228: Zeile 237:
  
 ==== Vorbereitung ==== ==== Vorbereitung ====
- 
  
 Zur Vorbereitung legen Sie im ''/​tmp''​-Verzeichnis des aktuell mit dem //​Rettungssystem//​ gestarteten Rechners eine Datei mit dem Namen ''​ftptmp''​ mit folgendem Befehl an: Zur Vorbereitung legen Sie im ''/​tmp''​-Verzeichnis des aktuell mit dem //​Rettungssystem//​ gestarteten Rechners eine Datei mit dem Namen ''​ftptmp''​ mit folgendem Befehl an:
Zeile 236: Zeile 244:
  
 Der Inhalt der Datei sollte wie folgt aussehen, welcher z.B. mit dem Editor ''​vi''​ erstellt werden kann (''​vi /​tmp/​ftptmp'',​ ''​i''​ für Editieren des Inhalts, speichern des Inhalts mit [Esc]-Taste,​ '':​wq''​):​ Der Inhalt der Datei sollte wie folgt aussehen, welcher z.B. mit dem Editor ''​vi''​ erstellt werden kann (''​vi /​tmp/​ftptmp'',​ ''​i''​ für Editieren des Inhalts, speichern des Inhalts mit [Esc]-Taste,​ '':​wq''​):​
-<​code>​+<​code ​bash>
 # vi /tmp/ftptmp # vi /tmp/ftptmp
 open <​IP-Adresse des entfernten Rechners> ​         z.B. 192.168.0.3 open <​IP-Adresse des entfernten Rechners> ​         z.B. 192.168.0.3
Zeile 248: Zeile 256:
  
 Hier noch einmal **OHNE** Kommentare: Hier noch einmal **OHNE** Kommentare:
-<​code>​+<​code ​bash>
 # vi /tmp/ftptmp # vi /tmp/ftptmp
 open 192.168.0.3 open 192.168.0.3
Zeile 256: Zeile 264:
 bye bye
 </​code>​ </​code>​
 +
 ==== Durchführung ==== ==== Durchführung ====
  
 Der Befehl zum durchführen des Zurückkopierens lautet wie folgt: Der Befehl zum durchführen des Zurückkopierens lautet wie folgt:
-<​code>​+<​code ​bash>
 # `cat /​tmp/​test/​ftptmp | ftp -nu | dd of=/​dev/​sda1 obs=1M ` # `cat /​tmp/​test/​ftptmp | ftp -nu | dd of=/​dev/​sda1 obs=1M `
 </​code>​ </​code>​
Zeile 271: Zeile 280:
 106928640 bytes (107 MB) copied, 3.87708 seconds, 27.6 MB/s 106928640 bytes (107 MB) copied, 3.87708 seconds, 27.6 MB/s
 </​code>​ </​code>​
 +
 ==== Erklärung ==== ==== Erklärung ====
  
 Hier die Erklärung, was bei folgendem Befehl passiert: Hier die Erklärung, was bei folgendem Befehl passiert:
-<​code>​+<​code ​bash>
 # `cat /​tmp/​test/​ftptmp | ftp -nu | dd of=/​dev/​sda1 obs=1M ` # `cat /​tmp/​test/​ftptmp | ftp -nu | dd of=/​dev/​sda1 obs=1M `
 </​code>​ </​code>​
  
 Der erste Teil: Der erste Teil:
-<​code>​+<​code ​bash>
 # `cat /​tmp/​test/​ftptmp | ftp -nu  # `cat /​tmp/​test/​ftptmp | ftp -nu 
 </​code>​ </​code>​
Zeile 285: Zeile 295:
  
 Der letzte Teil: Der letzte Teil:
-<​code>​+<​code ​bash>
 dd of=/​dev/​sda1 obs=1M ` dd of=/​dev/​sda1 obs=1M `
 </​code>​ </​code>​
 schreibt die vom FTP-Server enthaltenen Daten aus der //pipe// ''​ | ''​ auf die SCSI/​S-ATA-Festplatte ''/​dev/​sda1''​ in der Grösse von einem MegaByte (1M) Blöcken. schreibt die vom FTP-Server enthaltenen Daten aus der //pipe// ''​ | ''​ auf die SCSI/​S-ATA-Festplatte ''/​dev/​sda1''​ in der Grösse von einem MegaByte (1M) Blöcken.
 +
 ===== Weblinks ===== ===== Weblinks =====
  
   * [[http://​www.feyrer.de/​g4u/​|g4u]] (//Ghost 4 you)//   * [[http://​www.feyrer.de/​g4u/​|g4u]] (//Ghost 4 you)//
   * [[http://​sourceforge.net/​projects/​g4l|g4l]] (//Ghost 4 linux//)   * [[http://​sourceforge.net/​projects/​g4l|g4l]] (//Ghost 4 linux//)
- 
  
tachtler/klonen_eines_servers.txt · Zuletzt geändert: 2012/08/29 12:24 von klaus