1、虚拟机安装黑群晖,硬盘直通
具体教程可以参考这个链接:https://www.geekxw.top/2410/
这个方法不仅能读取到数据,还能继续用黑群晖原有的一些docker,不用修改配置,随时在群晖和飞牛os之间切换,确实很不错。
但是很不幸,我按照教程一步步操作,最后在硬盘直通这一步卡住了。虽然我在虚拟机中通过lsblk命令可以看到群晖的盘,但是不能直接加载。我也尝试通过mount命令直接挂载,还是失败了,还手**把群晖PLV卷清除,一个硬盘的数据直接没了,所以大家不要轻易尝试,一定要做好备份

。
2、mapper映射挂载群晖硬盘
这个方法相比虚拟机更加简单,在飞牛os中直接读取群晖硬盘数据,前提是群晖硬盘没有加密。
具体方法如下:
1.插入黑群晖的硬盘后启动飞牛os。
2.通过ssh连接飞牛。
3.通过以下指令切换到root用户,然后需入你的密码,如果命令行是root开头就说明切换成功了。
sudo -i
4.查看硬盘映射情况,看到vg1_volumn_1形式的文件名,就说明你离成功不远了,这个就是存放群晖文件的文件夹。
ll /dev/mapper/
5.在飞牛os中新建文件夹。在文件夹上右键点击“详细信息”,然后“复制原始路径”。
6.通过mount指令进行映射,命令格式如下
mkdir /vol3 #创建新的文件夹
mount /dev/mapper/vg1-volume_1 > /vol3 #将群晖硬盘数据映射到新的文件夹
7.然后就可以在飞牛os的文件系统看到群晖硬盘里的数据。
不知道是飞牛os版本问题还是群晖系统问题,我在第4步就失败了,我有三块硬盘,两块都没看到/vg2-volume_2格式的文件夹。
3、 lsdlk查看硬盘挂载情况,直接复制(要求是btrfs格式)
通过ll /dev/mapper/没有看到群晖硬盘的可以尝试方法3,前面步骤和方法2一样通过ssh连接飞牛os。
然后查看硬盘加载情况,下图这个7.3T的就是我的群晖硬盘。
lsblk
创建新文件夹,尝试加载sdb3或者sdb,如果不成功,直接加载md126。
root@fnoslu:~# mkdir -p /mnt/synology # 创建文件夹
root@fnoslu:~# mount -o ro /dev/md126 /mnt/synology #直接加载md126 ,注意,不要加上sdb3
正常在这一步大家都可以读取到数据,但还是有少部分人和我一样,还是加载失败,得到的提示如下:大致意思是文件头无法成功解析。
此时你有两个选择,第一个是尝试用工具修复这个文件夹,但是费时费力,还有可能失败,导致数据被删除。第二个就是简单粗暴,不挂载文件夹,直接把整个文件夹的数据复制到飞牛os的文件夹中,我尝试了第二种方式。最终成功拿到了所有数据。
btrfs restore /dev/md126 /vol2/1000/docker/
下图是拷贝成功后的文件夹,前面@开头的文件夹都是群晖自己创建的,平时用户都无法看到,后面是我自己创建的文件夹。
4、通过lvm挂载硬盘,然后读取
本以为方法3成功了,我另一块硬盘应该也是如此,毕竟大家都是从同一台主机上拿下来的,系统也都是一样,但是用lsblk指令,结果情况就不一样了,可以看到vg3开头的内容,说明有进步。
然后我就果断尝试方法2,报错了。
尝试方法3,结果还是失败了,说md126为不是btrfs格式。
只能继续百度,查看其他方法,下图可以看到vg3*的type都是lvm,这是一种文件管理系统,而我在原始群晖系统所有硬盘都设置的是btrfs格式,那我的btrfs去哪儿了呢?
用lvdisplay查看,volume4的路径是/dev/vg3/volume_4,我怀疑volume_4的格式就是btrfs。
最后,我尝试对volume_4用btrfs指令拷贝,这次终于成功了。
btrfs restore /dev/vg3/volume_4 /vol2/1000/backup/ #将volume_4的内容换到新的文件夹
总结
其实到现在我还没研究明白群晖文件系统格式,感觉既有lvm,raid,还有btrfs,各种杂糅,而且一个主机的硬盘格式还可能不一样,大家不要轻易放弃,多测试各种方法,但要注意不要对原始硬盘数据进行操作,数据安全最重要。