USB、UUID、磁盘标识符和供应商 ID 之间有什么区别?

USB、UUID、磁盘标识符和供应商 ID 之间有什么区别?

我需要一个永久、唯一的 USB 驱动器标识符,该标识符永远不会改变,以便创建挂载点文件夹。您能解释一下磁盘标识符供应商 ID唯一唯一标识符

您能否建议我该如何设置这个挂载点?

#fdisk -l | cut -f3 -d'/' | cut -f1 -d',' | grep 'Disk identifier:'

获取磁盘标识符。并且

#lsusb 

显示供应商 ID 和

#blkid

#ls /dev/disk/by-uuid

显示 UUID

我读过关于 UUID 的文章,但找不到并无法比较这三个,请帮忙

答案1

让我们依次来看:

磁盘标识符:

这适用于整个硬盘驱动器(而不是单个分区)。磁盘标识符/磁盘签名是一个 4 字节数字,在首次创建和存储主引导记录/分区表时随机生成。磁盘标识符存储在 MBR 磁盘扇区中字节偏移量 1B8(十六进制)到 1BB(十六进制)处。Windows Vista 使用磁盘签名来定位启动设备,因此更改它可能会阻止 Vista 启动。除了能够显示它之外,我不确定 Linux 是否使用它。

供应商 ID

每个 USB 设备都有一个供应商 ID (VID)产品 ID (PID)以及可选的序列号。供应商 ID 用于识别产品的制造商:来自同一制造商的所有 USB 设备都应具有相同的视频识别不管它们是什么,鼠标、电话、磁盘驱动器等,如果是由制造商制造的,就应该是相同的。

每个制造商都应该分配一个唯一的PID他们生产的每件产品视频识别:PID组合应唯一地标识特定产品(品牌和型号),一些制造商选择为其产品分配唯一的序列号,但其他制造商则不这样做,因此您不能使用视频识别PID唯一地标识设备,因为如果你再买一个相同品牌和型号的设备,它将会是一样的。此外,一些制造商已经知道使用相同的PID针对不同的相似模型。该命令的输出lsusb包含视频识别:PID组合。

唯一唯一标识符

UUID(通用唯一标识符)是一个 128 位数字。UUID 用于识别许多不同的东西,包括一些文件系统分区。文件系统的 UUID 存储在哪里取决于文件系统。Linux ext2/ext3 和 Windows NTFS 通过 UUID 识别文件系统。UUID 是使用当前时间或随机数生成器随机生成的。UUID 是在文件系统格式化时生成和存储的,通常不会更改。

当您将分区或磁盘复制为原始二进制数据(例如,使用“dd”)时,磁盘标识符或 UUID 也会被复制。这可能会导致两个磁盘或两个分区具有相同的标识符。有一些实用程序可以将 UUID 更改为新的(随机)数字。还有一些实用程序可以更改主引导记录中的磁盘标识符。

UUID 的优点是无论您将文件系统移到哪里,操作系统都可以找到该特定文件系统。对于没有 UUID 的文件系统,磁盘标识符至少可用于定位磁盘驱动器。

虽然在正常使用中可以更改 UUID,但不太可能改变。

当 UUID 不可用时,Linux 可以使用分区的设备名称。我建议使用 UUID 来标识您的挂载点。

要设置挂载点,对于永久连接的驱动器,有两个选项,请参阅FSTAB-社区文档 或者对于不总是可用的驱动器,如果您愿意让它作为 /media/ 的子目录出现,但使用已知名称,请参见重命名USB驱动器

USB 驱动器可以格式化为多种不同的格式。许多驱动器默认格式化为 FAT,因为这种格式几乎可以被任何东西读取。但如果此驱动器仅在 Linux 上使用,则最好将其重新格式化为 ext3 或 ext4,请参阅此问题如何格式化 USB 或外部驱动器?

相关内容