1
bugeye 2018-12-16 21:18:09 +08:00 1
zfs 可以不分区,meta 表直接写硬盘上。改成 ext4,是不是没分区表?或者分区表里有以前 zfs 的数据?建议用 gdisk 之类的工具重做下分区表。
|
2
momocraft 2018-12-16 21:21:26 +08:00
你做了什么, "卡住"又是什么
|
4
reus 2018-12-16 21:29:38 +08:00
典型的不懂提问……帮不了你了。
|
5
leavic OP @bugeye 不是很理解分区表是怎么破坏的,我甚至完整的格式化并重装过一次 windows,这样都不能完全清理掉 zfs 留下的数据吗?
|
6
0ZXYDDu796nVCFxq 2018-12-16 21:58:12 +08:00 via Android
讲半天,不如贴一下分区表
fdisk -l |
7
Aliencn 2018-12-16 22:50:54 +08:00 1
我之前测试 freenas 然后重装 Ubuntu 的时候也遇到这个问题了
正好手头有个 Windows 的 PE,直接引导后用 diskpart clean 了一下磁盘再装 Ubuntu 就好了 |
8
leavic OP 谢谢
|
9
likuku 2018-12-17 02:35:59 +08:00
Ubuntu LiveCD 模式进去,在终端下,挨个给需要处理的硬盘用 dd 写进去 0 数据填上至少 1GB 进去,就行了。
别搞错硬盘就行,范例:dd if=/dev/zero bs=1M count=1000 of=/dev/sda 单纯重新分区什么,还不足以消除之前被写入的 metadata 重新分区格盘前,我都这么操作,尤其是 GPT 分区,本身设计上 metadata 冗余作的比较好。 |
11
dontaskcece 2018-12-17 10:58:58 +08:00 via Android
我感觉是分区表的问题,以前 ext4 的用我的 win u 盘总是识别不了,改了分区表就好了。
|
12
bugeye 2018-12-17 13:07:22 +08:00
@leavic 你没理解,zfs 可以不需要分区表,所以硬盘上的分区表的扇区也会被它用来写数据。你 windows 格式化只能重写分区表以外的部分。这就是为什么我在一楼上让你重做分区表,9 楼也是这个意思,让你用 DD 重写分区表那块硬盘区。至于 windows 为什么可以格式化,可能 win 和 linux 对分区表那部分数据兼容性不一样吧。。。
|
14
leavic OP @likuku dd 了一个 g 好像还不够呢,直接用 diskpart clean all 了,不过没等跑完,应该是等效 dd 了几十个 g 的 zero。
|
15
likuku 2018-12-18 00:06:03 +08:00 1
@leavic 我也大约... 2 年没用 ZFS 了,依稀记得当年也是遇到过类似状况,忘记最后怎么处理的,
尝试重新搜索了下相关信息,找到两篇供参考: (简单总结:ZFS matedata 分别在硬盘 /ZFS 分区 首尾存了两份,必须都擦掉才可以) [FreeBSD]How To Remove ZFS Meta Data – ICESQUARE – Solve Computer Server Problems, Computer Help, Server Support, Server Help : https://icesquare.com/wordpress/freebsdhow-to-remove-zfs-meta-data/ partitioning - How to delete some zfs metadata from hard drive? - Super User : https://superuser.com/questions/1248905/how-to-delete-some-zfs-metadata-from-hard-drive 然后想起 GPT 似乎也是如此,硬盘首尾各放一份 GPT 分区表 /matedata 互为备份。 |
16
likuku 2018-12-18 00:08:49 +08:00
果然 GPT 也是在 GPT 分区头前 和 磁盘尾巴 各存一份分区表:
全局唯一标识分区表 - 维基百科,自由的百科全书 : https://zh.wikipedia.org/wiki/GUID%E7%A3%81%E7%A2%9F%E5%88%86%E5%89%B2%E8%A1%A8 |