我使用 创建了一个分区parted
,然后使用 删除了它parted /dev/<partition> rm partition number
。之后我执行了partprobe
,udevadm settle
和systmelctl daemon-reload
.然后我用了lsblk
,分区没有显示。然后,当我尝试使用parted
我能够创建另一个具有相同大小的分区时,但是当我尝试mkfs.xfs
在该分区上使用时,它说数据已经存在。它说使用该-f
选项用新的文件系统覆盖数据。
我的问题是你可以使用parted同时删除分区和文件系统吗?如果不是,那么使用fdisk
orgdisk
更好?另外, partprobe
、udevadm settle
和之间有什么区别systmelctl daemon-reload
?您是在使用parted创建分区之后使用它还是在其上写入文件系统之后或者两者都使用它?
答案1
parted
没有删除文件系统的选项,您可以wipefs
在运行命令之前使用。fdisk
将在创建分区时要求您删除现有文件系统,您也可以使用--wipe-partitions always
它来自动执行此操作。
partprobe
告诉内核重新读取设备上的分区表。您不需要手动运行它,也parted
可以fdisk
在更改分区表后执行此操作(它们使用BLKRRPART
/ BLKPG
ioctl 来执行此操作)。
udevadm settle
只是等到乌德夫完成当前的事件队列。同样,无需手动运行它,您没有使用任何依赖于 UDev 的工具(例如U盘)并且再次由 UDev 的工具/用户来处理这个问题。
systmelctl daemon-reload
用于重新加载 systemd 管理器配置。这与分区无关。