最近,我换了一台主机,实在厌倦了黑群晖各种破解加洗白,所以新主机的系统换成飞牛os。

飞牛os安装确实很方便,但是把群晖硬盘的数据迁移到飞牛os是个大问题。数据迁移最简单的方法就是云盘中转或者外接硬盘中转。云盘中转只适合数据少的用户,因为云盘速度最慢,但是不需要额外的硬盘。外接硬盘需要一块容量够大的备用硬盘。将数据先从群晖系统中拷贝到外接硬盘,然后再导入飞牛os,但是我手头只有一台主机,还需要重新做群晖引导盘,也很复杂。所以留给我唯一的路就是飞牛os中读取群晖硬盘。

先说一下结果:我的群晖nas有三块硬盘,每块硬盘在数据迁移时遇到的问题还都不一样,我尝试了各种方法,不停地踩坑,最终我在意外损坏一块硬盘数据的前提下,成功迁移了两块硬盘的数据。

一、虚拟机安装黑群晖,硬盘直通

具体教程可以参考这个链接:飞牛虚拟机安装黑群晖,硬盘无损迁移-小陈折腾日记

通过虚拟机加载黑群晖不仅能读取到数据,还能继续用黑群晖原有的一些docker,不用修改配置,随时在群晖和飞牛os之间切换,确实很不错。

但是很不幸,我按照教程一步步操作,最后在硬盘直通这一步卡住了。我在虚拟机中通过lsblk命令可以看到群晖的盘,但是不能直接加载。尝试通过mount命令直接挂载,因为格式问题,还是失败了,借助豆包各种尝试,结果手贱把群晖PLV卷清除,一个硬盘的数据直接没了,所以大家不要轻易尝试,一定要做好备份。

二、mapper映射挂载群晖硬盘

这个方法相比虚拟机更加简单,在飞牛os中直接读取群晖硬盘数据,前提是群晖硬盘没有加密。

具体方法如下:

1.插入黑群晖的硬盘后启动飞牛os。

2.通过ssh连接飞牛。

3.通过以下指令切换到root用户,然后需入你的密码,如果命令行是root开头就说明切换成功了。

sudo -i

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

4.查看硬盘映射情况,看到vg1_volumn_1形式的文件名,就说明你离成功不远了,这个就是存放群晖文件的文件夹。

ll /dev/mapper/

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

5.在飞牛os中新建文件夹。在文件夹上右键点击“详细信息”,然后“复制原始路径”。

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

6.通过mount指令进行映射,命令格式如下

mkdir /vol3 #创建新的文件夹

mount /dev/mapper/vg1-volume_1 > /vol3 #将群晖硬盘数据映射到新的文件夹

7.然后就可以在飞牛os的文件系统看到群晖硬盘里的数据。

不知道是飞牛os版本问题还是群晖系统问题,我在第4步就失败了,我有三块硬盘,两块都没看到/vg2-volume_2格式的文件夹。

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

三、 lsdlk查看硬盘挂载情况,直接复制(要求是btrfs格式)

通过ll /dev/mapper/没有看到群晖硬盘的可以尝试方法3,前面步骤和方法2一样通过ssh连接飞牛os。

然后查看硬盘加载情况,下图这个7.3T的就是我的群晖硬盘。

lsblk

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

创建新文件夹,尝试加载sdb3或者sdb,如果不成功,直接加载md126。

root@fnoslu:~# mkdir -p /mnt/synology # 创建文件夹

root@fnoslu:~# mount -o ro /dev/md126 /mnt/synology #直接加载md126 ,注意,不要加上sdb3

正常在这一步大家都可以读取到数据,但还是有少部分人和我一样,还是加载失败,得到的提示如下:大致意思是文件头无法成功解析。

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

此时你有两个选择,第一个是尝试用工具修复这个文件夹,但是费时费力,还有可能失败,导致数据被删除。第二个就是简单粗暴,不挂载文件夹,直接把整个文件夹的数据复制到飞牛os的文件夹中,我尝试了第二种方式。最终成功拿到了所有数据。

btrfs restore /dev/md126 /vol2/1000/docker/

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

下图是拷贝成功后的文件夹,前面@开头的文件夹都是群晖自己创建的,平时用户都无法看到,后面是我自己创建的文件夹。

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

四、通过lvm挂载硬盘,然后读取

本以为方法3成功了,我另一块硬盘应该也是如此,毕竟大家都是从同一台主机上拿下来的,系统也都是一样,但是用lsblk指令,结果情况就不一样了,可以看到vg3开头的内容,说明有进步。

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

然后我就果断尝试方法2,报错了。

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

尝试方法3,结果还是失败了,说md126为不是btrfs格式。

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

只能继续百度,查看其他方法,下图可以看到vg3*的type都是lvm,这是一种文件管理系统,而我在原始群晖系统所有硬盘都设置的是btrfs格式,那我的btrfs去哪儿了呢?

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

用lvdisplay查看,volume4的路径是/dev/vg3/volume_4,我怀疑volume_4的格式就是btrfs。

飞牛os读取群晖硬盘方法汇总——从群晖到飞牛os

最后,我尝试对volume_4用btrfs指令拷贝,这次终于成功了。

btrfs restore /dev/vg3/volume_4 /vol2/1000/backup/ #将volume_4的内容换到新的文件夹

总结

其实到现在我还没研究明白群晖文件系统格式,感觉既有lvm,raid,还有btrfs,各种杂糅,而且一个主机的硬盘格式还可能不一样,大家不要轻易放弃,多测试各种方法,但要注意不要对原始硬盘数据进行操作,数据安全最重要。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐