我按照教程中的以下步骤设置了 ZFS 根池,但不知道如何正确替换磁盘。您能帮助我完成这些步骤吗?
答案1
这里的格式很糟糕,但对我来说却很有用:
为了用根 ZFS 系统替换启动盘,你需要清除新磁盘
NEWDISK=/dev/disk/by-id/ata-ZA3840NM10001_HKT01PCD sudo wipefs -af $NEWDISK sudo sgdisk --zap-all $NEWDISK sudo sgdisk -n1:1M:+512M -t1:EF00 $NEWDISK sudo sgdisk -n2:0:+1024M -t2:FD00 $NEWDISK sudo sgdisk -n3:0:+2G -t3:BE00 $NEWDISK sudo sgdisk -n4:0:0 -t4:BF00 $NEWDISK
#创建 EFI 分区 1 #在此新 sudo -i 中重置所有变量 sudo -i DISK1=/dev/disk/by-id/ata-ST4000DM000-1F2168_Z3074N81 DISK2=/dev/disk/by-id/ata-ZA3840NM10001_HKT01SPD DISK3=/dev/disk/by-id/ata-ZA3840NM10001_HKT01P3S DISK4=/dev/disk/by-id/ata-ZA3840NM10001_HKT01PCD
mkdosfs -F 32 -s 1 -n EFI ${DISK1}-part1 mkdir /boot/efi echo UUID=$(blkid -s UUID -o 值 ${DISK1}-part1)
/boot/efi vfat umask=0022,fmask=0022,dmask=0022 0 1 > /etc/fstab mount /boot/efi
mkdosfs -F 32 -s 1 -n EFI ${DISK2}-part1 mkdir /boot/efi2 echo UUID=$(blkid -s UUID -o value ${DISK2}-part1)
/boot/efi2 vfat umask=0022,fmask=0022,dmask=0022 0 1 >> /etc/fstab mount /boot/efi2
mkdosfs -F 32 -s 1 -n EFI ${DISK3}-part1 mkdir /boot/efi3 echo UUID=$(blkid -s UUID -o value ${DISK3}-part1)
/boot/efi3 vfat umask=0022,fmask=0022,dmask=0022 0 1 >> /etc/fstab mount /boot/efi3
mkdosfs -F 32 -s 1 -n EFI ${DISK4}-part1 mkdir /boot/efi4 echo UUID=$(blkid -s UUID -o value ${DISK4}-part1)
/boot/efi4 vfat umask=0022,fmask=0022,dmask=0022 0 1 >> /etc/fstab mount /boot/efi4
#接下来重新创建交换分区 2#确保您仍处于根模式!!!
如果阵列正在运行,请停止它:
mdadm -Esv mdadm --stop /dev/md* mdadm --misc --scan --detail /dev/md0 mdadm --create /dev/md0 --metadata=1.2 --level=raid5
--raid-devices=4 ${DISK1}-part2 ${DISK3}-part2
${DISK2}-part2 ${DISK4}-part2
mkswap -f /dev/md0 echo UUID=$(blkid -s UUID -o value /dev/md0)
none swap 丢弃 0 0 >> /etc/fstab swapon -a
#接下来获取第 3 部分和第 4 部分的设置。
确保在这里退出 root 权限
exit
执行 sudo zpool status 获取记录的 GUID:6491063046595957463
然后,执行 sudo zpool replace [pool_name] [guid] $DISK2-part[0-9] 例如:
sudo zpool 替换 rpool 13395510599896975344 $NEWDISK-part4 sudo zpool 替换 bpool 14748746258678915344 $NEWDISK-part3