拯救删除ZFS之后的分区表

本想安装在笔记本上安装FreeBSD+Linux双系统,不过总是引导不起来,遂放弃。删除分区表之后,准备调整分区大小,结果发现 gparted里,显示的只有zfs一个分区,但是lsblk却又是正常的。经过搜索发现是ZFS写入了metainfo,于是就看怎么删除。

删除是这样的:

# zpool clearlabel /dev/sda

然而,这会带来一个严重后果:分区表被破坏了。我试着用Linux的live磁盘进去,但是Linux已经认不出来了。一般Linux的live系统 不带gpart这个程序,因此我用FreeBSD live系统进去,发现还可以认出来:

# gpart disk list
...

不过输出里,会显示 GPT Corrupt,幸好gpart特别强大,可以直接修复:

# gpart recover /dev/sda

呼,搞定,有惊无险,系统数据得以保存。要是真的把分区表给完全摧毁了,数据就没了。


Refs:


更多文章
  • 消息分帧(字符串设计或协议设计)的两种形式
  • C, Go, Python的错误处理和异常机制杂谈
  • 好的命名是最好的文档
  • 读《系统之美:决策者的系统思考》
  • Linux高分屏支持
  • GCC默认的头文件搜索路径
  • 读《远见-如何规划职业生涯3大阶段》
  • 后端工程师学前端(五): SASS
  • 后端工程师学前端(四): CSS进阶(盒子模型)
  • 读《投资中最简单的事》
  • 后端工程师学前端(三): CSS进阶(特指度、单位和字体族)
  • 后端工程师学前端(二): CSS基础知识(规则与选择器)
  • Swift语法笔记
  • 读《管理的实践》
  • 后端工程师学前端(一): HTML