返校的时候我想 NAS 太重了,懒得带了,于是把硬盘拆了出来,准备接到 Rock5 上用,然而一接上我傻了。。。
屁用没有的官方文档
如果你直接在网上搜索文档的话,多半会搜到这一篇 当 Synology NAS 出现故障时,如何使用计算机恢复数据?,绝大部分博客什么的都是照抄官网的这一篇。
然而当你真正去使用的时候,才会发现这篇屁用没有。别说 lvm 了,你连这个硬盘上连个分区都见不到,谈何挂载。
修复分区表
在这之前,推荐先备份硬盘前 10M 的空间,防止以后还想用,我就忘了备份了,不知道后面群晖还能不能用😭。
dd if=/dev/sda of=backup.img bs=1M count=10
然后安装并使用 testdisk
sudo apt install testdisk
sudo testdisk /dev/sdb
一定要选 EFI
格式,Analyse
-> Quick Search
,只需要保留最后一个分区,按 Enter
-> Write
,然后重启。
挂载 LVM
现在分区出来了,一定可以上面了那个文章了吧,然而还是不行。
用上面文章的给的 mdadm -AsfR && vgchange -ay
会在 dmesg 里报一个 missing superblock,要用
mdadm --assemble /dev/md0 /dev/sda1 --update=devicesize --verbose
vgchange -ay
似乎会自动补上 superblock,之后再用就不需要了。
挂载 BTRFS
我为什么不用 ext4 呢
鬼知道群晖这个 btrfs 实现里加了什么魔法,直接挂载会报一个
invalid root flags, have 0x400000000 expect mask 0x1000000000001
这是内核的一个补丁导致的 [btrfs: tree-checker: Add ROOT_ITEM check
](https://github.com/torvalds/linux/commit/259ee7754b6793af8bdd77f9ca818bc41cfe9541)
要么重新编译内核, patch 掉这段,除了这段还有别的要改得,但是考虑到数据安全,我不敢动了。
要么像我一样,装个有旧内核的虚拟机。对于 ubuntu 来说,没有引入这个补丁的最后一个版本是 4.15.0-108
,可以直接安装 ubuntu 18.04.4 来解决。
但不管怎么解决,都还是很恶心人,之后找个机会迁移到 True NAS 算了。
确实垃圾,还不如fakenas
By foxi at February 28th, 2023 at 09:39 pm.