You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu系统重启后因/dev/sd*设备名重排导致ZFS存储池丢失的问题求助

Ubuntu系统重启后因/dev/sd*设备名重排导致ZFS存储池丢失的问题求助

大家好,我在Ubuntu系统上碰到了一个ZFS存储池的棘手问题,折腾半天没找到解决办法,特意来求助各位大佬。

事情的经过是这样的:
我一开始用下面的命令创建了一个raidz2类型的ZFS存储池:

$ sudo zpool create -f data raidz2 sda sdb sdc sdd

创建完成后,用zpool status查看状态,显示存储池完全正常在线,具体输出如下:

$ sudo zpool status

pool: data

state: ONLINE

scan: none requested

config:

NAME        STATE     READ WRITE CKSUM

data        ONLINE       0     0     0

raidz2-0  ONLINE       0     0     0

sda     ONLINE       0     0     0

sdb     ONLINE       0     0     0

sdc     ONLINE       0     0     0

sdd     ONLINE       0     0     0

errors: No known data errors

此时我用lsblk查看磁盘设备状态,输出如下:

$ sudo lsblk

NAME        MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT

loop0         7:0    0    55M  1 loop  /snap/core18/1880

loop1         7:1    0  71.3M  1 loop  /snap/lxd/16099

loop2         7:2    0  29.9M  1 loop  /snap/snapd/8542

sda           8:0    0   2.7T  0 disk

├─sda1        8:1    0   2.7T  0 part

└─sda9        8:9    0     8M  0 part

sdb           8:16   0   2.7T  0 disk

├─sdb1        8:17   0   2.7T  0 part

└─sdb9        8:25   0     8M  0 part

sdc           8:32   0   2.7T  0 disk

├─sdc1        8:33   0   2.7T  0 part

└─sdc9        8:41   0     8M  0 part

sdd           8:48   0   2.7T  0 disk

├─sdd1        8:49   0   2.7T  0 part

└─sdd9        8:57   0     8M  0 part

sde           8:64   1   961M  0 disk

├─sde1        8:65   1   914M  0 part

└─sde2        8:66   1   3.9M  0 part

sdf           8:80   0 111.8G  0 disk

├─sdf1        8:81   0   512M  0 part  /boot/efi

└─sdf2        8:82   0 111.3G  0 part

└─md0       9:0    0 111.2G  0 raid1

└─md0p1 259:3    0 111.2G  0 part  /

nvme0n1     259:0    0 111.8G  0 disk

├─nvme0n1p1 259:1    0   512M  0 part

└─nvme0n1p2 259:2    0 111.3G  0 part

└─md0       9:0    0 111.2G  0 raid1

└─md0p1 259:3    0 111.2G  0 part  /

但重启系统后,问题突然出现了:/dev/sd*的设备名完全重排了——原本的系统盘sdf变成了sda,之前用来搭建ZFS的sda/sdb/sdc/sdd则变成了sdc/sdd/sde/sdf。这时我再运行zpool status,结果直接显示没有可用的存储池:

$ zpool status

no pools available

重启后的lsblk输出如下:

$ sudo lsblk

NAME        MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT

loop0         7:0    0    55M  1 loop  /snap/core18/1880

loop1         7:1    0  71.3M  1 loop  /snap/lxd/16099

loop2         7:2    0  29.9M  1 loop  /snap/snapd/8542

sda           8:0    0 111.8G  0 disk

├─sda1        8:1    0   512M  0 part  /boot/efi

└─sda2        8:2    0 111.3G  0 part

└─md0       9:0    0 111.2G  0 raid1

└─md0p1 259:3    0 111.2G  0 part  /

sdb           8:16   1   961M  0 disk

├─sdb1        8:17   1   914M  0 part

└─sdb2        8:18   1   3.9M  0 part

sdc           8:32   0   2.7T  0 disk

├─sdc1        8:33   0   2.7T  0 part

└─sdc9        8:41   0     8M  0 part

sdd           8:48   0   2.7T  0 disk

├─sdd1        8:49   0   2.7T  0 part

└─sdd9        8:57   0     8M  0 part

sde           8:64   0   2.7T  0 disk

├─sde1        8:65   0   2.7T  0 part

└─sde9        8:73   0     8M  0 part

sdf           8:80   0   2.7T  0 disk

├─sdf1        8:81   0   2.7T  0 part

└─sdf9        8:89   0     8M  0 part

nvme0n1     259:0    0 111.8G  0 disk

├─nvme0n1p1 259:1    0   512M  0 part

└─nvme0n1p2 259:2    0 111.3G  0 part

└─md0       9:0    0 111.2G  0 raid1

└─md0p1 259:3    0 111.2G  0 part  /

现在我想请教两个问题:

  1. 怎么才能恢复这个丢失的ZFS存储池?
  2. 以后再创建ZFS存储池时,怎么避免因为设备名重排导致的这种问题?

麻烦各位大佬帮忙指点一下,非常感谢!

备注:内容来源于stack exchange,提问作者monkincloud

火山引擎 最新活动