无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 5535|回复: 9
打印 上一主题 下一主题

[已解决] 请教dd工具清空分区表或是删除分区的命令

[复制链接]
跳转到指定楼层
1#
发表于 2021-8-9 13:50:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 百事可乐001 于 2021-8-13 14:35 编辑

自己做了一个电脑清零工具,里面要用到dd清空分区表的命令,我先是在论坛找到了 partnew (hd0,0) 0 0 0 命令用于删除分区,删除之后源电脑系统无法启动、但是进入pe通过diskgenius工具还是可以看到原来的分区表及分区文件的

所以我想直接通过dd清空mbr及gpt所在扇区的分区表信息,但是网上的命令都是基于linux的 运行一直报错
请教高手们有没有命令可以共享一下
2#
发表于 2021-8-9 14:30:52 | 只看该作者
帮助文档中 有 dd 命令的用:dd if=IF of=OF

这个很危险的,还是命令行,下自个弄,不要做成 菜单(写块文件)

dd   if=(md)0x200+1  of=(hdx,y)0x0+1

(mbr 1扇区   gpt:  34扇区)

点评

大佬,我测试清空了mbr的分区表之后 可以通过第三方工具比如diskgenius找回来,如何清理才能不让它恢复分区呢  详情 回复 发表于 2021-8-12 12:28
我制作的是一套离职清零系统、要的就是这种操作  详情 回复 发表于 2021-8-9 16:02
回复

使用道具 举报

3#
 楼主| 发表于 2021-8-9 16:02:30 | 只看该作者
2011whp 发表于 2021-8-9 14:30
帮助文档中 有 dd 命令的用:dd if=IF of=OF

这个很危险的,还是命令行,下自个弄,不要做成 菜单(写块 ...

我制作的是一套离职清零系统、要的就是这种操作
回复

使用道具 举报

4#
 楼主| 发表于 2021-8-12 12:28:22 | 只看该作者
2011whp 发表于 2021-8-9 14:30
帮助文档中 有 dd 命令的用:dd if=IF of=OF

这个很危险的,还是命令行,下自个弄,不要做成 菜单(写块 ...

大佬,我测试清空了mbr的分区表之后 可以通过第三方工具比如diskgenius找回来,如何清理才能不让它恢复分区呢
回复

使用道具 举报

5#
发表于 2021-8-12 12:41:56 来自手机 | 只看该作者
那就把磁盘低格了
回复

使用道具 举报

6#
发表于 2021-8-12 12:50:31 | 只看该作者
本帖最后由 wintoflash 于 2021-8-12 12:52 编辑

diskgenius 应该不是通过 mbr 来恢复分区信息的。
你想要的应该是全盘写零抹除所有数据。
如果不希望能通过软件恢复数据的话要多次覆写。
这种需求最好用专业的软件。
https://dban.org/
回复

使用道具 举报

7#
 楼主| 发表于 2021-8-12 14:32:53 | 只看该作者
我把所在分区的512个扇区全都清理了,清理完成后无论是mbr还是gpt,在dg里面全都无法恢复
dd if=(md)0x200+512 of=(hd1,6)0x0+512
dd if=(md)0x200+512 of=(hd1,5)0x0+512
dd if=(md)0x200+512 of=(hd1,4)0x0+512
dd if=(md)0x200+512 of=(hd1,3)0x0+512
dd if=(md)0x200+512 of=(hd1,2)0x0+512
dd if=(md)0x200+512 of=(hd1,1)0x0+512
dd if=(md)0x200+512 of=(hd1,0)0x0+512
dd if=(md)0x200+512 of=(hd1)0x0+512

可是我把这些命令添加到titile里面执行,如果不存在的分区便会报错不继续执行了。高手们可有啥办法让它遇到错误也继续执行,或者有没有判断命令可以检测某个分区存在再去清空呢

我试了下
find --set-root (hd1,6) && dd if=(md)0x200+512 of=(hd1,6)0x0+512

find --set-root (hd1,6) || dd if=(md)0x200+512 of=(hd1,6)0x0+512

if not exist (hd1,6) || dd if=(md)0x200+512 of=(hd1,6)0x0+512

if not exist (hd1,6) && dd if=(md)0x200+512 of=(hd1,6)0x0+512
都无法达到判断执行效果
回复

使用道具 举报

8#
 楼主| 发表于 2021-8-12 15:12:11 | 只看该作者
以上报错的问题搞定了,加上errorcheck off参数即可
回复

使用道具 举报

9#
发表于 2021-12-2 20:06:47 来自手机 | 只看该作者
for
回复

使用道具 举报

10#
发表于 2021-12-2 20:07:23 来自手机 | 只看该作者
也可以用diskpart clean all.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-25 13:54

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表