利用Ubuntu 18.04恢复群晖(Synology)NAS Raid1(DSM 6.x)硬盘数据

如果 Synology NAS 出现故障,则可以使用计算机和 Ubuntu live CD 轻松恢复其硬盘上存储的数据。确保 Synology NAS 硬盘上运行的文件系统是 EXT4 或 Btrfs,然后按照以下步骤恢复数据。此处我们以 Ubuntu 18.04 版本为例。

  1. 准备一台具有足够数量硬盘插槽的计算机,用于安装从 Synology NAS 卸下的硬盘。
  2. 从 Synology NAS 中卸下硬盘,然后将其安装到计算机中。对于 RAID 或 SHR 配置,必须同时在计算机中安装所有硬盘(不包括 Hot Spare 硬盘)。
  3. 按照教程在 Windows 上创建可启动 U 盘中的说明准备 Ubuntu 环境。
  4. 进入左下角的显示应用程序菜单。
  5. 在搜索栏中输入终端机,然后选择终端机
  6. 如果要从 RAID 或 SHR 配置恢复数据,请执行步骤 7 到 10;如果要从只有一个硬盘的基本存储类型恢复文件,请执行步骤 10。
  7. 输入以下命令(sudo 执行 root 权限)。
    Ubuntu@ubuntu:~$ sudo -i
  8. 输入以下命令以安装 mdadm 和 lvm2两者都是 RAID 管理工具。必须安装 lvm2,否则 vgchange 无法正常工作。
    root@ubuntu:~$ sudo apt-get update
    
    root@ubuntu:~$ sudo apt-get install -y mdadm lvm2
  9. 输入以下命令以装载从 Synology NAS 中卸下的所有硬盘。根据 Synology NAS 上的存储池配置,结果可能有所不同。
    root@ubuntu:~$ sudo mdadm -Asf && vgchange -ay
  10. 输入以下命令以采用只读方式装载所有硬盘,从而可访问数据。在 ${device_path} 中输入设备路径,并在 ${mount_point} 中输入装载点。数据会放在装载点下。
    $ mount ${device_path} ${mount_point} -o ro
    示例:
    $ mount /dev/vg1000/lv /mnt -o ro
    
    $ mount /dev/vg1/volume_1 /mnt -o ro
注意:

如果上述操作之后,没有磁盘出现,此时执行如下检查:

// 查看各个磁盘分区
$ sudo fdisk -l

//尝试手工挂载分区
$ sudo mdadm --assemble --run /dev/md0 /dev/sdb3
mdadm: /dev/sdb3 is busy - skipping

$ ls /dev/md*
/dev/md2

$ sudo mdadm --stop /dev/md2
mdadm: stopped /dev/md2

$ sudo mdadm --assemble --run /dev/md0 /dev/sdb3
mdadm: /dev/md0 has been started with 1 drive (out of 2).

# 查看raid状态
$ sudo mdadm -D /dev/md0

$ cat /proc/mdstat

$ watch -n 1 "cat /proc/mdstat"

# 如果需要的话,添加新硬盘到阵列
# sudo mdadm --manage /dev/md0 --add-spare /dev/sdc3

参考链接


发布者

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注