拯救删除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:


微信公众号
关注公众号,获得及时更新

更多文章
  • Web开发系列(一):从输入网址到最后,这个过程经历了什么?
  • SNI: 让Nginx在一个IP上使用多个证书
  • Haskell: infixl, infixr, infix
  • Haskell简明教程(五):处理JSON
  • Haskell简明教程(四):Monoid, Applicative, Monad
  • HTTPS 的详细流程
  • OAuth2 为什么需要 Authorization Code?
  • 任务队列怎么写?python rq源码阅读与分析
  • XMonad 配置教程
  • Haskell简明教程(三):Haskell语法
  • Haskell简明教程(二):从命令式语言进行抽象
  • Haskell简明教程(一):从递归说起
  • 2017年必装的VIM插件推荐
  • TCP/IP简明教程 - 从零构建TCP/IP协议(二)连接,断开与拥塞控制
  • TCP/IP简明教程 - 从零构建TCP/IP协议(这次叫PCT协议)