Ich möchte die Antwort von @ Søren Løvborg erweitern: Erweiterung der Partition um eine vorhandene Swap-Partition.
Zuerst das Layout der Festplatte nach dem Erweitern:
$sudo parted /dev/sda 'unit s print' free
Model: ATA VBOX HARDDISK (scsi)
Disk /dev/sda: 14336000s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
63s 2047s 1985s Free Space
1 2048s 10485759s 10483712s primary ext4 boot
10485760s 10487805s 2046s Free Space
2 10487806s 12580863s 2093058s extended
5 10487808s 12580863s 2093056s logical linux-swap(v1)
12580864s 14335999s 1755136s Free Space
Sda1 muss also um den freien Speicherplatz am Ende der Festplatte erweitert werden, aber die Swap-Partition befindet sich dazwischen. So können Sie es machen:
Zuerst müssen wir Swap deaktivieren. Überprüfen Sie, wie viel es verwendet wird und ob Sie es ausschalten können.
$ free -h
total used free shared buff/cache available
Mem: 992M 52M 464M 3.2M 475M 784M
Swap: 1.0G 0B 1.0G
Swap wird hier nicht verwendet, damit wir es ausschalten können
$sudo swapoff /dev/sda5
Jetzt werden wir die Partitionstabelle ändern:
$sudo fdisk /dev/sda
(Hinweis: Wenn die erste Partition bei Sektor 63 statt 2048 beginnt, müssen Sie die Option hinzufügen. -c=dos
)
Welcome to fdisk (util-linux 2.27.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): p
Disk /dev/sda: 6.9 GiB, 7340032000 bytes, 14336000 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x9e11c6df
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 10485759 10483712 5G 83 Linux
/dev/sda2 10487806 12580863 2093058 1022M 5 Extended
/dev/sda5 10487808 12580863 2093056 1022M 82 Linux swap / Solaris
Command (m for help): d
Partition number (1,2,5, default 5): 2
Partition 2 has been deleted.
Command (m for help): d
Selected partition 1
Partition 1 has been deleted.
Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-14335999, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-14335999, default 14335999): 12242941
Created a new partition 1 of type 'Linux' and of size 5.9 GiB.
Command (m for help): n
Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 2
First sector (12242942-14335999, default 12242944):
Last sector, +sectors or +size{K,M,G,T,P} (12242944-14335999, default 14335999):
Created a new partition 2 of type 'Linux' and of size 1022 MiB.
Command (m for help): a
Partition number (1,2, default 2): 1
The bootable flag on partition 1 is enabled now.
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: Device or resource busy
The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8).
Hinweis: Die Größe von sda1 ist die Gesamtanzahl der Sektoren abzüglich der Sektorgröße Ihrer Swap-Partition: 14335999-2093058 = 12242941
Als fdisk erwähnt: Der Kernel verwendet immer noch die alte Partitionstabelle, daher müssen wir sie neu laden.
$partprobe
Jetzt müssen wir resize2fs auf sda1 ausführen (vergiss das nicht!)
$resize2fs /dev/sda1
resize2fs 1.42.12 (29-Aug-2014)
Filesystem at /dev/sda1 is mounted on /; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 10
The filesystem on /dev/sda1 is now 38833617 (4k) blocks long.
Nun sind die Dinge noch nicht vorbei. Wie Sie wahrscheinlich bemerkt haben, ist sda2 als Typ Linux (Ext4) partitioniert. Aus irgendeinem Grund gibt es in fdisk keine Möglichkeit, den Typ auszuwählen. Also müssen wir es mit abwechselncfdisk
$ sudo cfdisk
Wähle sda2 und ändere den Typ auf 82 Linux swap / Solaris
und stelle sicher, dass du es schreibst ( tippe yes zur Bestätigung)
Jetzt können wir den Swap wieder aktivieren
$mkswap /dev/sda2
/dev/sda2
UUID=d58bf1cb-d27a-487d-b337-056767fd5ad6 none swap sw 0 0
Und zum Schluss schalten Sie es ein:
$swapon /dev/sda2
Das Einzige, was wir tun müssen, ist, fstab zu aktualisieren, damit die Swap-Partition beim Booten automatisch eingehängt wird
$sudo nano /etc/fstab
Und ändern Sie die UUID der Swap-Partition in die Ausgabe oben:
# swap was on /dev/sda5 during installation
UUID=d58bf1cb-d27a-487d-b337-056767fd5ad6 none swap sw 0 0
Jetzt ist alles in Ordnung und Sie können ohne Probleme neu starten.