Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
admin_grundlagen:partitionierung [2019/08/15 09:45] dhoppe [CentOS 7 ins Image installieren] |
admin_grundlagen:partitionierung [2024/02/20 14:33] (aktuell) ingo_wichmann |
||
---|---|---|---|
Zeile 5: | Zeile 5: | ||
Nach Änderungen an einem Boot-Datenträger. (Im Paket parted) | Nach Änderungen an einem Boot-Datenträger. (Im Paket parted) | ||
partprobe | partprobe | ||
- | ====== Format der Partitionstabelle ====== | + | ===== Format der Partitionstabelle ===== |
Das lange unter Linux gebräuchliche MSDOS oder [[wpde>Master Boot Record|MBR]] Format sollte man nur bei Festplatten unter 2TB verwenden. Für größere Festplatten, und wenn man wie bei aktuellen Rechnern üblich eine [[wpde>Unified Extensible Firmware Interface|UEFI]] Firmware an Stelle des [[wpde>BIOS]] vorfindet, sollte man für die Partitionstabelle [[wpde>GUID Partition Table|GPT]] verwenden. | Das lange unter Linux gebräuchliche MSDOS oder [[wpde>Master Boot Record|MBR]] Format sollte man nur bei Festplatten unter 2TB verwenden. Für größere Festplatten, und wenn man wie bei aktuellen Rechnern üblich eine [[wpde>Unified Extensible Firmware Interface|UEFI]] Firmware an Stelle des [[wpde>BIOS]] vorfindet, sollte man für die Partitionstabelle [[wpde>GUID Partition Table|GPT]] verwenden. | ||
====== Übung: default-Werte für mount-Optionen herausfinden ====== | ====== Übung: default-Werte für mount-Optionen herausfinden ====== | ||
Test-Image erstellen und mounten: | Test-Image erstellen und mounten: | ||
+ | fallocate -l 500M /tmp/zero.img | ||
+ | (( | ||
+ | oder | ||
dd if=/dev/zero of=/tmp/zero.img bs=1M seek=500 count=0 | dd if=/dev/zero of=/tmp/zero.img bs=1M seek=500 count=0 | ||
+ | oder | ||
+ | dd if=/dev/zero of=/tmp/zero.img bs=1M 500 | ||
+ | )) | ||
mkfs.ext4 /tmp/zero.img | mkfs.ext4 /tmp/zero.img | ||
mkdir /mnt/img | mkdir /mnt/img | ||
Zeile 36: | Zeile 42: | ||
Pakete installieren: | Pakete installieren: | ||
- | * CentOS 7: ''qemu-img'' | + | * CentOS 7: ''parted qemu-img'' |
- | * Debian 8: ''qemu-utils'' | + | * Debian 8: ''parted qemu-utils'' |
- | * openSUSE 42.2: ''qemu-tools'' | + | * openSUSE 42.2: ''parted qemu-tools'' |
+ | |||
+ | ===== Beispiel: Loop-Devices mit Sparse-Files ===== | ||
+ | Nicht in der Praxis ;-) | ||
+ | |||
+ | == Sparse-File erzeugen == | ||
+ | dd if=/dev/zero of=disc1 bs=1K count=0 seek=200M | ||
+ | ls -lsh disc* | ||
+ | losetup -f disc1 --show | ||
+ | losetup -a | ||
+ | |||
+ | == Loop-Devices partitionieren == | ||
+ | lsblk | ||
+ | {fdisk,gdisk,parted} /dev/loopxx | ||
+ | |||
+ | == Partitionen sichtbar machen == | ||
+ | partprobe | ||
+ | partprobe /dev/loopxx | ||
===== Beispiel: GPT mit parted ===== | ===== Beispiel: GPT mit parted ===== | ||
Zeile 56: | Zeile 79: | ||
Daten-Partition anlegen: | Daten-Partition anlegen: | ||
mkpart ext4 100MiB 100% | mkpart ext4 100MiB 100% | ||
+ | |||
+ | GRUB BIOS Partition aktivieren: | ||
+ | set 1 bios_grub on | ||
''parted'' verlassen: | ''parted'' verlassen: | ||
Zeile 81: | Zeile 107: | ||
====== Partitionstabelle sichern und wiederherstellen ====== | ====== Partitionstabelle sichern und wiederherstellen ====== | ||
==== sfdisk ==== | ==== sfdisk ==== | ||
- | für MBR-partitionierte Blockgeräte | ||
=== sichern === | === sichern === | ||
sfdisk -d /dev/sda > part-table.txt | sfdisk -d /dev/sda > part-table.txt | ||
Zeile 88: | Zeile 113: | ||
==== sgdisk ==== | ==== sgdisk ==== | ||
- | für GPT Partitionen | + | nur für GPT Partitionen |
=== sichern === | === sichern === | ||
sgdisk --backup=sda.gpt.bkup /dev/sda | sgdisk --backup=sda.gpt.bkup /dev/sda | ||
Zeile 128: | Zeile 153: | ||
====== Partitionierung ====== | ====== Partitionierung ====== | ||
===== fdisk/gdisk ===== | ===== fdisk/gdisk ===== | ||
- | fdisk - ausschließlich MBR-Partitionierte Blockgeräte\\ | + | * fdisk - MBR und GPT Partitionstabellen |
- | gdisk - GPT Blockgeräte | + | * gdisk - Spezialist für GPT Partitionstabellen |
==== Benötigte Pakete ==== | ==== Benötigte Pakete ==== | ||
Debian: | Debian: | ||
Zeile 202: | Zeile 227: | ||
=== Fehlermeldung: The resulting partition is not properly aligned for best performance === | === Fehlermeldung: The resulting partition is not properly aligned for best performance === | ||
eine Lösung wird nicht mehr Bereitgestellt | eine Lösung wird nicht mehr Bereitgestellt | ||
- | |||
- | ==== Beispiel: lesend genutztes Verzeichnis im laufenden Betrieb auf neue Partition verschieben ==== | ||
- | Partition anlegen: | ||
- | parted /dev/sda | ||
- | |||
- | mkpart | ||
- | quit | ||
- | Mountpoint anlegen und temporär mounten | ||
- | mkfs.ext4 /dev/sda6 | ||
- | mkdir /mnt/sda6 | ||
- | mount /dev/sda6 /mnt/sda6 | ||
- | Daten in die neue Partition kopieren: | ||
- | cp -a /usr/bin/. /mnt/sda6 | ||
- | Kopie überprüfen: | ||
- | ( cd /usr/bin; tar c . ) | ( cd /mnt/sda6; tar d . ) | ||
- | Partition wieder aushängen | ||
- | umount /mnt/sda6 | ||
- | Partition endgültig mounten: | ||
- | mount /dev/sda6 /usr/bin | ||
- | tail -n 1 /etc/mtab >> /etc/fstab | ||
- | Daten auf Orginalpartition löschen: | ||
- | mkdir /mnt/original | ||
- | mount --bind / /mnt/original | ||
- | shopt -s dotglob | ||
- | rm /mnt/original/usr/bin/* | ||
- | ls -la /mnt/original/usr/bin | ||
- | umount /mnt/original | ||