起因是truenas跑在pve中
然后pve划分了几个虚拟磁盘文件用作logs cache等(理论上没有数据风险只影响读写的盘)
然后因为pve的系统有变动导致这个logs和cache的盘的文件没了
然后直接在truenas中导入池就失败了
即使是强制导入也还是不行
sudo zpool import -f my-pool
然后整个人就非常的恐慌
如果你遇到了和我一样的问题那么请你放平心态
因为从理论上只要你的主硬盘没有损坏,logs损坏是不会影响你的数据的,在写入时断电可能会有一点点风险(千万不要添加条带的元数据盘metadata,如果你坏的是元数据,那么真的只能去请如来佛祖了)
导入池时添加 -m参数,允许带有磁盘错误的池导入
sudo zpool import -f -m my-pool
这里导入后也是不能直接访问的,webui中也没有这是正常的
然后status看一下池的状态,会看到有一个logs离线了
logs
idxxxxxxxxxxxxxxxx UNAVAIL 0 0 0 was /dev/disk/by-partuuid/uuid xxxxxxxxxxxxxxxxxx
直接移除这个盘
sudo zpool remove my-pool idxxxxxxxxxxxxxxxx
然后重启一次机器
移除所有的非主硬盘的设备例如cache
做一次scrub你的数据安安全全就回来了