fukystone 发表于 2012-12-12 12:31:22

PE禁止回收站--修改注册表

本帖最后由 fukystone 于 2013-7-12 11:35 编辑

应坛友要求,做个简单教程,高手就请飘过吧

    先说明一下:
1、大多数PE在进入桌面后,会在硬盘建立回收站文件,类似$RECYCLE.BIN这样的文件。如果经常用PE,你会发现硬盘上会有2个“回收站”文件。
2、对于NTFS分区的硬盘,有一个System Volume Information目录,存储着ntfs的卷信息(包含一些链接、恢复文件、日志等内容),这个目录是NTFS卷的还原目录,不建议你动的。大多数PE在启动时也会向该目录写入一些信息,个人估计是PE读卷信息后的记录之类的,应该没什么大用。
    以上2点如果是平常使用的话,没什么大碍。但是如果在做数据恢复工作的话,我们希望PE启动时尽量不要对硬盘有写操作,以免误伤数据。
综上所述,通过修改注册表的方法可以避免PE对硬盘写入以上内容。以Win7PE举例(备注:以下办法为win7和win8 PE通用)

1、不对System Volume Information目录写入信息
pecmd.ini中尽量往前,加下面2句:
EXEC !reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\systemrestore" /v DisableConfig /t reg_dword /d 1 /f
EXEC !reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\systemrestore" /v DisableSR /t reg_dword /d 1 /f
当然也可以直接挂载PE中的注册表文件修改,效果一样的。
还需更改mountpointmanagerremotedatabase文件的管理,这个文件是mountmgr服务产生的。该服务是系统级的,用于windows启动时读取卷信息并分配盘符,还有一个FltMgr(FS Filter Manager)服务也可能用到mountpointmanagerremotedatabase,这个服务我理解在PE中的作用是挂载某些第三方驱动。很可惜,这2个服务我都不敢动,那就只好在mountpointmanagerremotedatabase上动脑筋,实际做起来倒是很简单:
用ULTRAEDIT打开windows\system32\drivers\mountmgr.sys文件,查找“61 00 74 00 61 00 62 00 61 00 73 00 65”,共2处。注意看右边,就是mountpointmanagerremotedatabase,把左边对应部分全部改成00。然后保存,用PEditor校验和,重新打包。这就搞定了。



注意,仅仅为了不修改mountpointmanagerremotedatabase文件,就针对系统关键服务做修改,这种行为见仁见智--反正你要不做数据恢复的话我是不建议你改,以上仅做技术探讨。
附上修改的mountmgr文件(包括win7和win8PE),供参考。
2、不建立回收站文件
在注册表中挂载windows\system32\config\default文件,我挂成如下:
HKEY_LOCAL_MACHINE\w7_default\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket
右键选择权限,把你当前使用的用户如administrator添加为“完全控制”。
然后重新进入HKEY_LOCAL_MACHINE\w7_default\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket
把BitBucket项下的所有内容删掉
然后把该项的所有权限清空






当然,修改后在PE中删除文件就是真正的删除了,所以请慎重考虑。如果不是维护用PE,而是当做替代系统来用,不建议做以上修改。
天意兄提到,禁用回收站会造成直接删除,确实不太好。那么参照水老的办法,删除前加个确认吧,方法很简单:
在注册表中挂载windows\system32\config\default文件,我挂成如下:
HKEY_LOCAL_MACHINE\w7_default\Software\Microsoft\Windows\CurrentVersion\Explorer\
看右边的ShellState字段,将其中的37改为33(看附图容易明白)
效果也请看附图。删除时会有提示。




另附一个改好的win7PE,基于水老的19.11,可以看到全部效果。
嗯,说到水老的PE,再附2个文件(C_437.nls和C_20127.nls),用于在PE中使用FBINSTTOOL.EXE,水老原版的好像不行。建议水老也补一下。
百度网盘:http://pan.baidu.com/share/link?shareid=148247&uk=4211508820

[ 本帖最后由 fukystone 于 2012-12-25 17:49 编辑 ]

2012fan 发表于 2012-12-12 13:04:26

BitBucket 这个 是xp 的 。。。 windows 7 是BitLocker

楼主你确定 吗? win7 我改了 BitBucket还是无效! 还是一进pe就给我每个磁盘根创建回收站
BitBucket   与   BitLocker不一样啊!xp 的不能拿来套用到win7
再说,xp一般都有BitBucket,而win7 就找不到BitBucket ,只有个BitLocker

[ 本帖最后由 2012fan 于 2012-12-12 13:05 编辑 ]

renchmin 发表于 2012-12-12 13:50:10

这个方法还是很不错的额支持楼主啦 。

fukystone 发表于 2012-12-12 14:08:13

原帖由 2012fan 于 2012-12-12 13:04 发表 http://bbs.wuyou.net/images/common/back.gif
BitBucket 这个 是xp 的 。。。 windows 7 是BitLocker

楼主你确定 吗? win7 我改了 BitBucket还是无效! 还是一进pe就给我每个磁盘根创建回收站
BitBucket   与   BitLocker不一样啊!xp 的不能拿 ...

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=270370这里有我改的2个win7pe,你下载试试就知道了

snoopy 发表于 2012-12-12 14:11:42

原帖由 fukystone 于 2012-12-12 12:31 发表 http://bbs.wuyou.net/images/common/back.gif
应坛友要求,做个简单教程,高手就请飘过吧

先说明一下,大多数PE在进入桌面后,会在硬盘建立回收站文件,类似$RECYCLE.BIN这样的文件。如果经常用PE,你会发现硬盘上会有2个“回收站”。
对于NTFS分区的硬 ...

我这win8pe本身就有BitBucket项,但是在注册表中删除BitBucket下所有子项后,系统又会重新建立.问题是在注册表中怎么给BitBucket权限,不让系统在BitBucket下建立子项.
怎么给它 HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket加权限


fukystone 发表于 2012-12-12 14:20:06

原帖由 2012yangjining 于 2012-12-12 14:11 发表 http://bbs.wuyou.net/images/common/back.gif


我这win8pe本身就有BitBucket项,但是在注册表中删除BitBucket下所有子项后,系统又会重新建立.问题是在注册表中怎么给BitBucket权限,不让系统在BitBucket下建立子项.
怎么给它 HKEY_USERS\S-1-5-18\Softwar ...


兄弟,win8我没试。不过关键不在这。开这个帖子就是为你。
看我帖子里的截图。
你不能在pe里修改。
你需要把pe的wim文件解开(用7-zip就行),然后按我上面写的挂载注册表文件。

snoopy 发表于 2012-12-12 15:20:33

原帖由 fukystone 于 2012-12-12 14:20 发表 http://bbs.wuyou.net/images/common/back.gif



兄弟,win8我没试。不过关键不在这。开这个帖子就是为你。
看我帖子里的截图。
你不能在pe里修改。
你需要把pe的wim文件解开(用7-zip就行),然后按我上面写的挂载注册表文件。

在注册表中挂载不了

snoopy 发表于 2012-12-12 15:25:04

原帖由 fukystone 于 2012-12-12 14:20 发表 http://bbs.wuyou.net/images/common/back.gif



兄弟,win8我没试。不过关键不在这。开这个帖子就是为你。
看我帖子里的截图。
你不能在pe里修改。
你需要把pe的wim文件解开(用7-zip就行),然后按我上面写的挂载注册表文件。

andos 发表于 2012-12-12 15:28:18

禁止回收站的话,PECMD 有个RECY 命令

fukystone 发表于 2012-12-12 16:22:07

原帖由 2012yangjining 于 2012-12-12 15:25 发表 http://bbs.wuyou.net/images/common/back.gif

152559
F盘需要可写。挂载时会在同一目录下生成log文件。另外,要保证你的当前用户有管理员权限,最好就是administrator

2012fan 发表于 2012-12-12 17:37:52

原帖由 2012yangjining 于 2012-12-12 15:25 发表 http://bbs.wuyou.net/images/common/back.gif

152559

你这是要 卸载 吗? ( “上载” 意思就是 "卸载")
看图 是你不能卸载把~ 这是注册表的毛病 ,不知道MS 是不是故意的。。你关闭注册表再 重新打开 就能卸载了。试试看

2012fan 发表于 2012-12-12 17:46:38

原帖由 2012yangjining 于 2012-12-12 14:11 发表 http://bbs.wuyou.net/images/common/back.gif


我这win8pe本身就有BitBucket项,但是在注册表中删除BitBucket下所有子项后,系统又会重新建立.问题是在注册表中怎么给BitBucket权限,不让系统在BitBucket下建立子项.
怎么给它 HKEY_USERS\S-1-5-18\Softwar ...

BitBucket 只删除是没用的,因为删了登陆PE时也会重新建立,所以只要去掉所有权限即可。当然最好先要 把BitBucket下的子项全清空

snoopy 发表于 2012-12-12 18:21:15

原帖由 fukystone 于 2012-12-12 14:20 发表 http://bbs.wuyou.net/images/common/back.gif



兄弟,win8我没试。不过关键不在这。开这个帖子就是为你。
看我帖子里的截图。
你不能在pe里修改。
你需要把pe的wim文件解开(用7-zip就行),然后按我上面写的挂载注册表文件。

谢谢你了.你的方法虽然我操作不成功.但启发我找到另一种方法.用regini 限制注册表项权限 ,现己成功禁止向硬盘写回收站文件了.

zhuyoucheng 发表于 2012-12-13 10:30:34

好教程,WIN7PE在硬盘建立回收站终于完美解决了,但是那个向目录写入信息好像没有成功,看我的图片,前面是正常系统里System Volume Information目录的文件的时间,后面是启动WIN7PE里System Volume Information目录的文件里的时间,时间改变了,是不是代表重新写入了信息了呢?

[ 本帖最后由 zhuyoucheng 于 2012-12-13 10:32 编辑 ]

snoopy 发表于 2012-12-13 11:26:53

原帖由 zhuyoucheng 于 2012-12-13 10:30 发表 http://bbs.wuyou.net/images/common/back.gif
好教程,WIN7PE在硬盘建立回收站终于完美解决了,但是那个向目录写入信息好像没有成功,看我的图片,前面是正常系统里System Volume Information目录的文件的时间,后面是启动WIN7PE里System Volume Informatio ...


我这也是这样,禁止了写回收站,但还是修改了c盘svi目录文件

eyinhe 发表于 2012-12-13 14:08:58

原帖由 andos 于 2012-12-12 15:28 发表 http://bbs.wuyou.net/images/common/back.gif
禁止回收站的话,PECMD 有个RECY 命令
这个命令不是禁止建立回收站的吧?看说明是删除文件不会进回收站。改注册表是可行的,我的PE改好了。

eyinhe 发表于 2012-12-13 14:10:46

楼主的不建立回收站的方法是有效的。Win7PE试验成功。

[ 本帖最后由 eyinhe 于 2012-12-13 14:15 编辑 ]

andos 发表于 2012-12-13 14:43:27

原帖由 2012yangjining 于 2012-12-12 18:21 发表 http://bbs.wuyou.net/images/common/back.gif


谢谢你了.你的方法虽然我操作不成功.但启发我找到另一种方法.用regini 限制注册表项权限 ,现己成功禁止向硬盘写回收站文件了.
请问,regini 又应该怎样写?

andos 发表于 2012-12-13 14:44:35

原帖由 eyinhe 于 2012-12-13 14:08 发表 http://bbs.wuyou.net/images/common/back.gif

这个命令不是禁止建立回收站的吧?看说明是删除文件不会进回收站。改注册表是可行的,我的PE改好了。
原来是没禁止功能的啊...还以为有呢
看来我搞错了

fukystone 发表于 2012-12-13 16:43:12

原帖由 zhuyoucheng 于 2012-12-13 10:30 发表 http://bbs.wuyou.net/images/common/back.gif
好教程,WIN7PE在硬盘建立回收站终于完美解决了,但是那个向目录写入信息好像没有成功,看我的图片,前面是正常系统里System Volume Information目录的文件的时间,后面是启动WIN7PE里System Volume Informatio ...


这个我是测试过的。
首先,那2句reg需要在pecmd.ini中尽量靠前,前面不要有其他语句。
其次,请参考http://bbs.wuyou.net/forum.php?mod=viewthread&tid=270370这里的2个win7PE中pecmd.ini。
附图是在水老的19.16基础上改的。

snoopy 发表于 2012-12-13 16:58:27

原帖由 andos 于 2012-12-13 14:43 发表 http://bbs.wuyou.net/images/common/back.gif

请问,regini 又应该怎样写?


1.在pe的system32目录下加入与你pe同版本的regini.exe文件
2.在相同目录下建立 regini.ini 文件.内容为:HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket
3.在cmd文件中加入:
reg delete "HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\Volume" /f
regini.exe regini.ini
两条命令.

win7pe,win8pe 都测试可行

[ 本帖最后由 2012yangjining 于 2012-12-13 17:03 编辑 ]

HB天意 发表于 2012-12-13 17:00:05

回复 #20 fukystone 的帖子

C盘是没有问题。你找个有d盘的看看。d盘还是被修改了。

fukystone 发表于 2012-12-13 17:12:25

原帖由 yidawpf 于 2012-12-13 17:00 发表 http://bbs.wuyou.net/images/common/back.gif
C盘是没有问题。你找个有d盘的看看。d盘还是被修改了。


老大,D盘我也试过的啊……

HB天意 发表于 2012-12-13 17:17:04


注册表已经加进去了


c盘没有改


d盘却被修改了

andos 发表于 2012-12-13 18:10:25

原帖由 2012yangjining 于 2012-12-13 16:58 发表 http://bbs.wuyou.net/images/common/back.gif



1.在pe的system32目录下加入与你pe同版本的regini.exe文件
2.在相同目录下建立 regini.ini 文件.内容为:HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket
...
用了这个,是否就不需要再用PECMD的RECY命令了?(RECY命令是用作删除文件不会进回收站)

HB天意 发表于 2012-12-13 18:11:55

回复 #25 andos 的帖子

好像用recy命令可以禁止启动时写入回收站。但是pe下删除文件还是可以到回收站。

HB天意 发表于 2012-12-13 18:12:35

回复 #23 fukystone 的帖子

奇怪,实机测试没有问题。
虚拟机测试有写入。

andos 发表于 2012-12-13 18:22:07

原帖由 yidawpf 于 2012-12-13 18:11 发表 http://bbs.wuyou.net/images/common/back.gif
好像用recy命令可以禁止启动时写入回收站。但是pe下删除文件还是可以到回收站。
RECY 功能是 当数值为0时表示禁用指定分区的回收筒功能,被删除的档案将不会移到回收筒中

也就是直接删除文件的意思吧

而禁止回收站 是不是连带直接删除文件的意思呢?!

andos 发表于 2012-12-13 18:28:20

原帖由 yidawpf 于 2012-12-13 18:12 发表 http://bbs.wuyou.net/images/common/back.gif
奇怪,实机测试没有问题。
虚拟机测试有写入。
试试加多一个HKEY_CURRENT_USER的值
regini.ini:
HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket


reg delete "HKU\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\Volume" /f
reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\Volume" /f
regini.exe regini.ini

[ 本帖最后由 andos 于 2012-12-13 18:32 编辑 ]

snoopy 发表于 2012-12-13 18:38:05

原帖由 andos 于 2012-12-13 18:10 发表 http://bbs.wuyou.net/images/common/back.gif

用了这个,是否就不需要再用PECMD的RECY命令了?(RECY命令是用作删除文件不会进回收站)


还要用这个设置回收站的值.它们两个作用不同
页: [1] 2 3 4
查看完整版本: PE禁止回收站--修改注册表