Wenn Linux neu erstellte Partitionen ohne Neustart berücksichtigen soll, stehen verschiedene Tools zur Verfügung, um eine Aktualisierung des Kernel- "Partitionscaches" zu erzwingen:
partx -va /dev/sdX
kpartx -va /dev/sdX
hdparm -z /dev/sdX
sfdisk -R /dev/sdX
- ...
Ich bin mir nicht sicher über den Unterschied zwischen diesen Techniken, aber ich denke, sie verwenden nicht die gleichen ioctl
, wie BLKRRPART
oder BLKPG
. Also, was ist der Unterschied zwischen denen ioctl
?
kpartx
abgeleitet vonpartx
,sfdisk
ist ein anderes Partitionsbearbeitungswerkzeug.hdparm
ist für andere Zwecke, hat aber auch eine Möglichkeit, Partitionstabelle in den Kernel zu lesen. Wenn Sie es wirklich wissen müssen, schauen Sie sich den Quellcode an.Antworten:
BLKRRPART
Weist den Kernel an, die Partitionstabelle erneut zu lesen.man 4 sd
Mit können
BLKPG
Sie Partitionen nach Belieben erstellen, hinzufügen und löschen (vom Kernel, natürlich nicht auf der Festplatte). Sie müssen dem Kernel den Offset und die Größe der einzelnen Partitionen mitteilen, was bedeutet, dass Sie die Partitionstabelle zuvor selbst analysiert haben müssen. Siehe Linux-Kernel:/include/uapi/linux/blkpg.h
Ich persönlich verwende
partprobe
(Teil von parted) , das den letzteren Ansatz verwendet, wahrscheinlich um Partitionstabellen zu unterstützen, die vom Kernel nicht unterstützt werden.quelle