![/dev/disk/by-label 和 /dev/disk/by-partlabel 下的标签选项有什么区别?](https://linux22.com/image/655644/%2Fdev%2Fdisk%2Fby-label%20%E5%92%8C%20%2Fdev%2Fdisk%2Fby-partlabel%20%E4%B8%8B%E7%9A%84%E6%A0%87%E7%AD%BE%E9%80%89%E9%A1%B9%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%EF%BC%9F.png)
我想在 CoreOS 下创建一个自动挂载在 /var/lib/docker 的磁盘
因此我创建了一个 var-lib-docker.mount 单元文件来执行此操作,并决定使用 /dev/disk 下的按标签路径。
最初我发现我的分区出现在 by-partlabel 路径下。不过它工作得很好。
在此过程中,我发现有一个名为 e2label 的程序,并且在 fdisk 专家模式下我也可以创建分区标签。
一开始找不到 e2label,我发现我可以在 fdisk 中用单词“DOCKER”标记分区。但它们实际上通过路径 /dev/disk/by-partlabel 而不是 /dev/disk/by-label
它们之间有什么区别?应该优先考虑哪一个吗?
答案1
ArchLinux wiki 一如既往地好文档关于这个问题。你写道:
一开始我找不到 e2label,但我发现我可以在 fdisk 中用单词“DOCKER”标记分区。但它们实际上通过路径 /dev/disk/by-label
我猜你的意思是“不通过”?这可以通过你创建了一个分割标签,您的标签磁盘应显示在下方/dev/disk/by-partlabel/
。一旦您创建文件系统标签(例如,对于 ext{2,3,4} 文件系统,通过e2label
( tune2fs -L
)),磁盘应该显示在 下/dev/disk/by-label
。
是否应该优先考虑其中之一?
分割标签仅适用于GPT 磁盘。 为了文件系统标签需要一些文件系统工具来将标签应用于分区。所有主要的磁盘文件系统似乎都有这个(tune2fs -L
、jfs_tune -L
、xfs_admin -L
、reiserfstune -l
),所以除非是更奇特的东西,否则文件系统标签应该可以正常工作。