我目前正在考虑使用 squashfs 在闪存驱动器上存储信息。但是,每当插入闪存驱动器时,Fedora 34 都会为其分配一个设备 ID(/dev/sd?),该 ID 可能会因启动而异,这使得编写涉及该驱动器的脚本变得困难。有没有办法为驱动器或分区分配标签,以帮助识别驱动器?
答案1
不,squashfs 文件系统格式既不支持标签也不支持 UUID。
(似乎 squashfs 主要用于“循环”挂载,其中 /dev/loop# 名称从一开始就已知。您可以将实际的 squashfs 映像存储在另一个“正常”文件系统中,而不是直接存储在原始磁盘上。)
另外,GPT 分区表格式允许您定义分割标签和 UUID(可通过/dev/disk/by-partlabel
和by-partuuid
符号链接访问)独立于文件系统而存在。您可以通过 fdisk 或 gdisk 设置自定义部分标签,使用“更改分区名称”命令。
(仅当 MBR 具有非零的“NT 磁盘签名”时,Linux 也会尝试为 MBR 磁盘上的分区生成伪 PARTUUID 符号链接。)
闪存驱动器还可提供可通过 获得的“物理”序列号和/或 WWN /dev/disk/by-id
。
-EROFS 文件系统是 squashfs 的替代品;它仍然不支持自定义标签,但是做支持文件系统级 UUID。