![更换的 raid1 驱动器比原来的小一个块。该怎么办?](https://linux22.com/image/610631/%E6%9B%B4%E6%8D%A2%E7%9A%84%20raid1%20%E9%A9%B1%E5%8A%A8%E5%99%A8%E6%AF%94%E5%8E%9F%E6%9D%A5%E7%9A%84%E5%B0%8F%E4%B8%80%E4%B8%AA%E5%9D%97%E3%80%82%E8%AF%A5%E6%80%8E%E4%B9%88%E5%8A%9E%EF%BC%9F.png)
显然,每个 raid1 分区的末尾都应该留出一些空白空间。但如果我们来不及了,如果替换的 RAID1 驱动器比幸存的驱动器略小,该怎么办?
可以将数组的大小调整得更小吗?
在这种情况下,hdparm 显示:
型号=ST31000524AS,固件版本=JC45,序列号=9VPBMQJD CurCHS=16383/16/63,CurSects=16514064,LBA=yes,LBAsects=1953525168
型号=ST1000DM003-1CH162、FwRev=CC44、序列号=S1D7LDD7 CurCHS=16383/16/63、CurSects=16514064、LBA=yes、LBAsects=1953525168
但是由于逻辑扇区大小不同,fdisk 将旧驱动器的分区设为 976760832 块,将新驱动器的分区设为 976760001。有一个分区,格式为 ext3。
答案1
如果您可以容忍存储阵列出现一定程度的停机时间,则可以执行以下操作:
卸载现有阵列上的文件系统。或者以只读方式重新安装文件系统。(重点是让文件系统处于可以安全复制的静止状态。)
使用新驱动器创建一个新的、降级的 RAID1 阵列,注意对其进行分区以便在驱动器末尾留出一些空白空间(吸取教训)。
在新阵列上创建必要的文件系统,然后将所有文件从旧阵列复制到新阵列。
彻底移除旧阵列,并将旧磁盘添加到新阵列。重新同步后,新阵列将不再降级。
更新 fstab 和 mdadm.conf 以反映新的现实,并将新阵列投入生产(即将其安装在预期位置)。
当然,如果您现有的阵列包含根文件系统(或者对于正在运行的系统至关重要),那么您将必须为服务器安排一些停机时间。