PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Festplatte partitionieren mit parted aus Konsole



boesi666
06.02.14, 20:40
Guten Abend. kann mir vielleicht jemand helfen?
Ich habe ein kubuntu 12 System jetzt auf einer normalen Festplatte installiert
Partitionen danach sind sda1 für (/) und sda5 (für eine kleine reserve daten partition)

Ich wollte nun gerne das system duplizieren in dem ich mit einer live cd booten tue, dann das gesamte system (ausser das proc verzeichnis) packen tue und dann auf dem neuen rechner ebenfalls diesen mit der live cd boote, dann aus der konsole partitionieren und formatieren tue um dann das zuvor erstellte tar file darauf wieder zu entpacken.

Problem ist hiebei, dass ich bei meinen partitionier versuch zwar ebenfalls sda1 als root partition erstelle, jedoch die zweite parttion nicht sda5 sondern sda2 wird. Hier meine Befehle:


HDDevice="/dev/sda"
HDPartitionRoot="/dev/sda1"
HDPartitionBACKUP="/dev/sda5"

#HD partitionieren
sudo parted $HDDevice mklabel msdos
echo "root APrtition anlegen. Größe 90%"
sudo parted $HDDevice mkpart primary 8 90%
echo "BACKUP Partition anlegen. Größe 10%.."
sudo parted $HDDevice mkpart primary 90% 100%
echo "Partitionen nun mit ext.4 formatieren..."
sudo mkfs.ext4 $HDPartitionRoot
sudo mkfs.ext4 $HDPartitionBACKUP


ziel soll sein: eine festplatte zu partitionieren mit sda1 so viel platz wie möglich und sda5 als reserve partition mit ca 5GB
dann das ganze mit ext4 formatieren und anschließend mounten, tar file entpacken, bootfähig machen, neustart.

könnt ihr mir da helfen oder habt ihr einen link zu so einem howto?
DANKE im voraus!!

TomTobin
06.02.14, 21:51
Hallo boesi666,


Problem ist hiebei, dass ich bei meinen partitionier versuch zwar ebenfalls sda1 als root partition erstelle, jedoch die zweite parttion nicht sda5 sondern sda2 wird. Das ist logisch, weil Du zwei primäre Partitionen erzeugst. Die zweite Partition musst du als "logical" Partition anlegen, damit sie sda5 wird. Möglicherweise must Du auch vorher erst eine "extended" Partition erzeugen. Siehe man parted

Gruß

Tom

tictactux
07.02.14, 14:02
Zunächst gilt was TomTobin schrieb bezüglich der Erstellung einer extended partition, und darin dann eine "logical" statt primary damit es sda5 wird und nicht sda2, falls das so gewünscht ist.

Wie du die Daten dann vom Live-system kopierst ist zwar egal, ich mache das am liebsten mit rsync (das geht auch übers Netz direkt, wenn beide Rechner mit nem Live-Medium gestartet werden).

Beispiel:

auf Quellrechner die zu übertragenden Partitionen im Livesystem mounten z.B. sda1 unter /mnt/source, mit der gewünschten Struktur (also die sda5 z.b. unter /mnt/source/data oder wo auch immer sie normal gemountet wird).

Auf dem Zielrechner das gleiche nachdem die Partitionen erstellt sind, z.b. unter /mnt/target/ mounten, evtl. noch ein root-Passwort vergeben, und danach auf dem Quellrechner:



rsync -aXSH --numeric-ids /mnt/source/ root@192.168.1.XX:/mnt/target/


Falls kein rsh verfügbar muß ssh-Server auf dem Zielrechner gestartet werden, dessen IP oben mit 192.168.1.xx als Platzhalter steht.

Egal ob Du das Kopieren nun so oder anderswie vornimmst, anschließend mußt du vor dem Booten einige Dateien auf dem Zielsystem anpassen, und den Bootloader installieren.

Die UUIDs der Partitionen in /etc/fstab müssen durch die neuen ersetzt werden (blkid -o value -s UUID /dev/sdX), die UUID der swap/resume-Partition auch in /etc/initramfs-tools/conf.d/resume.

Sinnvoll wäre auch , in /etc/udev/rules.d/ automatisch erstellte Einträge zu entfernen (Netzwerk, USB), gleiches unter /etc/NetworkManager/.

Zur nachträglichen grub-Installation gibts es hier bereits viele Threads (auch in Postings von mir, falls das bei der Suche hilft) ansonsten auch hier:

http://wiki.ubuntuusers.de/GRUB_2/Reparatur

boesi666
11.02.14, 08:48
Danke für Eure Hinweise!
Mittlerweile habe ich es mit parted geschafft die Partitionierung richtig zu machen, dan Tar archiv entpackt (was ich mit tar cvfzp sicherung_quelle.tgz * --exlude /proc/ erstellt habe)

bootloader neu schreiben aus konsole klappte nicht nicht komplett, hab erst mal mittels "boot repair" von einer ubuntu 13 live cd den rechner zum starten bekommen.

aberwas komisch ist:
nach start des geklonten rechners sehe ich zwar den login in der grafik, aber er kennt die benutzer passwörter nicht mehr. wenn ich mit der live cd starte kann ich die /etc/passwd mit den benutzern sehen, aber beim echten starten davon klappt kein passwort. was kann das sein?

PS: Das mit den network roules mache ich vor dem erstellen des tar files. die lösche ich einfach vorher.

boesi666
11.02.14, 10:38
Zunächst gilt was TomTobin schrieb bezüglich der Erstellung einer extended partition, und darin dann eine "logical" statt primary damit es sda5 wird und nicht sda2, falls das so gewünscht ist.

Wie du die Daten dann vom Live-system kopierst ist zwar egal, ich mache das am liebsten mit rsync (das geht auch übers Netz direkt, wenn beide Rechner mit nem Live-Medium gestartet werden).

Beispiel:

auf Quellrechner die zu übertragenden Partitionen im Livesystem mounten z.B. sda1 unter /mnt/source, mit der gewünschten Struktur (also die sda5 z.b. unter /mnt/source/data oder wo auch immer sie normal gemountet wird).

Auf dem Zielrechner das gleiche nachdem die Partitionen erstellt sind, z.b. unter /mnt/target/ mounten, evtl. noch ein root-Passwort vergeben, und danach auf dem Quellrechner:



rsync -aXSH --numeric-ids /mnt/source/ root@192.168.1.XX:/mnt/target/


Falls kein rsh verfügbar muß ssh-Server auf dem Zielrechner gestartet werden, dessen IP oben mit 192.168.1.xx als Platzhalter steht.

Egal ob Du das Kopieren nun so oder anderswie vornimmst, anschließend mußt du vor dem Booten einige Dateien auf dem Zielsystem anpassen, und den Bootloader installieren.

Die UUIDs der Partitionen in /etc/fstab müssen durch die neuen ersetzt werden (blkid -o value -s UUID /dev/sdX), die UUID der swap/resume-Partition auch in /etc/initramfs-tools/conf.d/resume.

Sinnvoll wäre auch , in /etc/udev/rules.d/ automatisch erstellte Einträge zu entfernen (Netzwerk, USB), gleiches unter /etc/NetworkManager/.

Zur nachträglichen grub-Installation gibts es hier bereits viele Threads (auch in Postings von mir, falls das bei der Suche hilft) ansonsten auch hier:

http://wiki.ubuntuusers.de/GRUB_2/Reparatur

ja das mit dem rsync geht aber nur, wenn der quellrechner noch erreihbar ist.
ich möchte den alten rechner erst in ein archiv sichern und dann auf einem anderem PC restaurieren. Mit tar klappt das ganz gut, aber wie gesagt, irgendwie haut das jetzt mit den benutzern nicht mehr hin.

tictactux
11.02.14, 11:56
Hallo,

oft ist die Ursache bei so einem Clonen, daß die Benutzer-IDs auf den 2 Rechnern nicht die gleichen sind, und der Login-Manager überprüft ob der anzumeldende Benutzer auch Eigentümer seines HOME-Verzeichnisses ist (das ist oft auch bei "Konfiguration des Anmeldebildschirms" oder ähnlich, bei grafischen Konfigurationstools änderbar).

Prüfe also z.B. als root, ob die UID des Benutzers identisch ist mit jener die in /etc/passwd eingetragen ist auf dem geklonten Rechner. In einem Dateimanager (oder mit 'ls -la' sieht man das).

Ich weiß nicht ob in deinem Tar-Archiv auch /home enthalten war, oder ob das ne eigene Partition ist. Wenn das mit entpackt wurde, sollten die UIDs eigentlich nicht das Problem sein.

Falls das Problem daran liegt, kannst du rekursiv /home/$user mit chmod bearbeiten, z.b. mit find.

Falls es daran nicht liegt, manchmal liegt es an so trivialen Dingen wie Passwörter mit Sonderzeichen bei falscher Tastaturbelegung, also auch an sowas denken.

PS: Am Login Bildschirm mit STRG+ALT-F1 in eine Textkonsole wechseln, wenn das root passwort noch angenommen wird um obige Korrektur vorzunehmen, dann muß man nicht extra ein Live-Medium booten:)