mon*_*ksy 21 mount ext3 fstab uuid disk
我有一个未收到 UUID 的 USB 驱动器。当我查看 /dev/disk/by-uuid 的内容时,它不存在。分区所在的开发点位于 /dev/sdb 上。我可以在 /dev/disk/by-path 下看到 sdb。此外,当使用 blkid 时,我的输出为零。我假设我收到了返回的错误代码。
有没有办法获得这个分区的 UUID?
的结果 fdisk -l /dev/sdb:
Disk /dev/sdb: 320.1 GB, 320072932352 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142446 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00082145
Device Boot Start End Blocks Id System
/dev/sdb1 2048 625141759 312569856 83 Linux
Run Code Online (Sandbox Code Playgroud)
分区表和分区是用gparted创建的,所以它被分区并运行命令mkfs.ext3。
fsck -n /dev/sdb1 的输出
fsck from util-linux 2.20.1
e2fsck 1.42 (29-Nov-2011)
fsck.ext2: Superblock invalid, trying backup blocks...
zwei was not cleanly unmounted, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
zwei: 11/19537920 files (0.0% non-contiguous), 1275097/78142464 blocks
Run Code Online (Sandbox Code Playgroud)
它被格式化为 ext3 驱动器。为什么显示为ext2?
gol*_*cks 20
这就是应该发生的事情。
此处使用的术语“磁盘”或“驱动器”有两种口语用法:第一种是指物理设备,例如 U 盘。第二个是指文件系统分区,其中一个物理设备上可能有多个。
设备节点 like/dev/sda
指的是第一感觉(物理设备);设备节点是/dev/sda1
指第二个(文件系统分区)。有道理?sda1 是物理磁盘 sda 上的文件系统分区。可以使用一个分区来格式化整个设备,但这是不常见的,因此通常/dev/sda
不会有 UUID。
文件系统分区有 UUID,物理设备没有。1 我相信它们是在创建文件系统时随机创建的(这就是为什么它们会在您重新格式化分区时发生变化的原因,以及为什么如果您块级复制一个分区并使用映像创建一个新分区,您将有两个具有相同 UUID 的分区)。
因此,请记住 UUID 是在分区格式化时创建的。当您对磁盘进行分区时(例如,使用 fdisk),您并没有格式化任何东西,您只是在分区表中设置分区类型(和大小等),因此新的未格式化分区没有 UUID。
最后,由于设置 UUID 的是用于格式化分区的工具,因此很旧的工具可能无法执行此操作。但是,您始终可以使用 设置一个新的(用于 ext)tune2fs
,例如:
tune2fs -U random /dev/whatever
Run Code Online (Sandbox Code Playgroud)
显然是GPT 格式的,尽管问题中的设备是隐式 MBR 格式的(它没有 EFI 分区,并且fdisk
要么指示 GPT 磁盘,要么在旧版本中报告它不受支持)。
但是,还应该注意的是,MBR 格式的磁盘确实具有与每个分区索引组合的类似标识符,因此包含无法保留自己的 UUID(例如vfat
)的文件系统的分区可以具有唯一的“PARTUUID” ; 这可以以相同的方式用于许多事情(例如,in fstab
、 withudev
和用于安装),但它不是真正的 128 位 UUID。
所述PARTUUID的32位基被示出在从所述问题输出的fdisk: Disk identifier: 0x00082145
。
小智 14
尝试使用 sudols -l /dev/disk/by-uuid
或blkid /dev/sdb1
我也有一个分区+格式化的分区sdb1
,由于某种原因它不会显示在列表中,除非我使用sudo
.
mwf*_*ley 12
我发现file -s
在以下情况下可以给出分区的 UUID blkid
:
sudo file -s /dev/sda1
/dev/sda1: Linux rev 1.0 ext2 filesystem data (mounted or unclean), UUID=ef55765f-dae5-426f-82c4-0d98265c5f21 (needs journal recovery)
Run Code Online (Sandbox Code Playgroud)
如果它检测到其他内容(例如DOS/MBR boot sector
),请尝试添加-k
以返回所有匹配项。
归档时间: |
|
查看次数: |
69360 次 |
最近记录: |