我似乎缺少一些 zvol 功能,但我不知道该如何表述。我在 ArchLinux 安装中使用这些相同的 zpools 具有此功能。(迁移了服务器。)
Ubuntu 将 zvols 放入/dev/zvol
,然后 arch 将它们挂载进去/dev
。没问题,但我不知道在 zvol 本身上创建的分区发生了什么:
root@nosgoth:/dev/zvol/tank2/vm# fdisk -l tisc
Disk tisc: 20 GiB, 21474836480 bytes, 41943040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 8192 bytes
I/O size (minimum/optimal): 8192 bytes / 8192 bytes
Disklabel type: dos
Disk identifier: 0x0006b0ad
Device Boot Start End Sectors Size Id Type
tisc1 2048 37109759 37107712 17.7G 83 Linux
tisc2 37109760 41940991 4831232 2.3G 82 Linux swap / Solaris
在 archlinux 上,这将导致名为tiscPart0
和的设备tiscPart1
,最终是一些/dev/zd64p1
和/dev/zd64p2
由于漂亮的名称只是指向真实设备的符号链接lrwxrwxrwx 1 root root 13 May 31 21:36 tisc -> ../../../zd64
ZFS 管理指南中也提到了这些内容:请参阅 ZVOL 上的 EXT4 部分。
我假设可能有一个 udev 配置?我不确定我遗漏了什么,而且搜索也没有太大帮助。我该如何让这些分区显示出来?
答案1
刚才,我在 ubuntu 16.04 上执行了此操作sudo find /dev
,然后创建了一个 zvol,然后sudo find /dev
再次执行此操作,然后创建了分区,最后执行了最后一次操作,sudo find /dev
以查看在此过程中每一步创建的内容。我发现:
sudo zfs create -V 8g storage/junkzvol
创建/dev/zvol/storage/junkzvol
sudo fdisk /dev/zvol/storage/junkzvol
创建/dev/zvol/storage/junkzvol-part1
和/dev/zvol/storage/junkzvol-part2
当我这样做时,我注意到,新设备对 root 可见,但对我却不可见。我需要设备sudo
的命令find
。命令提示符上的 Tab 补全对 eharvey 不起作用。
您可能只需要使用sudo
您的ls
和find
等等。
答案2
您可能想看看 kpartx 命令。它能够查看分区、创建 /dev/mapper 条目并挂载或卸载它们。