正文

五。★★★win2000/xp忘记密码的方法2008-09-30 21:40:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/iamben250/38605.html

分享到:

五。★★★win2000/xp忘记密码的方法

1。清除sam文件:
winnt系列的系统账户信息是存在%systemroot%\system32\config\sam这个注册表文件里的。如果系统里没有重要的账户,或者账户比较少,用删除%systemroot%\system32\config\sam的方法是比较简单的,不过因为系统会还原为只有administrator(密码为空)和guest二个账户,所以有些程序因为它们所依赖的账户丢失了,如iis、vmware就不能启动了。
原来听说这种方法只能适用于nt workstation系列(2kpro),不能用于server,我在2000professional和2000 advanced server上试验都是成功的。不知道为什么会有上述说法,可能是活动目录ad下不行把。
当然首先你要能够访问系统分区,来把sam文件改名或者删除。如果是fat32、fat分区,使用98启动盘就行了。如果是ntfs分区,可以使用winternal的ntfs for dos、ntfs for 98或者是支持ntfs的启动光盘,再或者挂到其他win2000、linux等机器上,再再或者重新安装一个新的win2000。


2。专用工具:
windows管理员密码丢失还有一个解决方法是使用petter nordahl-hagen的the offline nt password editor(http://home.eunet.no/~pnordahl/ntpasswd/),这个工具是离线修改注册表文件sam来设置密码的。需要用他的映像文件制作启动盘来引导,进而访问ntfs分区重新设置密码;虽然作者经常更新他的程序,不过我还是会担心他直接*作sam文件的安全性,可能有时会导致系统出错。
可能还有其他类似工具把,恕我无知。


3。 还有一种想法就是用一个修改密码的小程序来替换系统启动的必要程序,然后系统启动时就会替换密码,随后把被替换的程序在还原就行了。当然首先你还是要能够访问系统分区,来替换随系统启动的程序。

替换系统启动的必要程序的一种方法是我写的一个清除administrator密码的小程序(cleanpwd),他所作的就是把administrator密码清空。使用方法如下:
(2).用法
1) 用双系统或者启动盘或者挂到别的系统上,如果是ntfs分区其他系统或启动盘要能读写ntfs分区,把windows安装目录下的system32\svchost.exe改名svchost.bak.exe备份,把cleanpwd.exe拷贝成svchost.exe。

2) 启动该系统,就把administrator的密码清空了,可以直接登陆。

3) 把svchost.bak.exe 恢复就行了。(如果使用替换的是svchost,最好再启动rpc服务)


(3).为什么选用svchost.exe而不是其他程序。
每个windows2000系统都有这几个进程,
system(kernel executive and kernel)
smss(session manager)
csrss(win32 subsystem)
winlogon(logon process)
services(service control manager)
lsass(local security authentication server )

如果任何一个被杀掉或者出错,系统将重新启动。不过在lsass启动之前你不能修改密码,所以不能选用这几个程序。

另外系统中一般还有以下一些程序:
svchost.exe(remote procedure call (rpc) 还有其他一些服务)
wbem\winmgmt.exe(windows management umentation)
mstask.exe(task scheduler)
regsvc.exe(remote registry service)

可能还有其他服务程序,你可能禁止了除rpc之外的其他服务,但不会禁止rpc,否则系统工作就不正常了。所以我选择了svchost,如果你知道其他服务会自动启动,你也可以选择它。
当然如果系统安装了杀毒软件的话,你替换杀毒软件也可以,因为一般杀毒软件都会在系统启动是启动杀毒防火墙来杀毒的。


(4).其他
有这个想法是几个月之前了,不过一直没有写这个程序 程序运行会在c:\cleanpwd.txt记一个简单的日志,我也附了源码,你可以任意修改它以满足自己的要求,比如添加一个用户而不是修改管理员的密码(或者你把管理员改名了)。


4。我还在一个网站上看到这样一个方法:
就是把%systemroot%\system32\logon.scr替换为cmd.exe或者explorer.exe,然后在系统登陆处等待,过一会,系统就会去运行logon.scr这个屏保,因为你替换了这个屏保文件,所以实际上运行的是cmd.exe或者explorer.exe,并且是localsystem权限,于是你可以随便了,最简单的就是在cmd.exe里运行net user administrator "",成功后管理员密码也被清空了,关闭cmd或者explorer就可以用空口令登陆了。
其实这种方法和上边的那种思路是一致的。


================= code begin =======================
#include
#include
#include
#include
#include
#pragma comment(lib, "netapi32.lib")

#define lof_file "c:\\cleanpwd.txt"

dword setuserpwd(char *user, char *pass);

void banner(file *fp)
{
if(null == fp)return;

fprintf(fp, "clean administrator''s password tool 1a. for lost password.\n");
fprintf(fp, " by bingle@email.com.cn\n");
fprintf(fp, "website: www.binglesite.net\n");
}

int main(int argc, char *argv[])
{
banner(stderr);

file *fp = fopen(lof_file, "a");
if(fp)
{
fprintf(stderr, "log in file %s\n", lof_file);
banner(fp);
}

if(!fp) fp = stderr;

char buff[256];
fprintf(fp, "%s: clean administrator''s password ", _strtime(buff));
dword n = setuserpwd("administrator", "");
if(nerr_success == n) fprintf(fp, "ok.\n");
else fprintf(fp, "failed, error:%d\n", n);

fclose(fp);

return -1;
}


dword setuserpwd(char *user, char *pass)
{
wchar_t wuser[pwlen], wpass[pwlen];
user_info_1003 ui;

mbstowcs(wuser, user, strlen(user)+1);
mbstowcs(wpass, pass, strlen(pass)+1);
ui.usri1003_password = wpass;

return netusersetinfo(null, wuser, 1003, (lpbyte)&ui, null);
}

2G。此参数在复制Windows NT分区,且不想使用64k/簇的FAT16时非常有用。
9.-span
分卷参数。当空间不足时提示复制到另一个分区的另一个备份包。
10.-auto
分卷拷贝时不提示就自动赋予一个文件名继续执行。
11.-crcignore
忽略备份包中的CRC ERROR。除非需要抢救备份包中的数据,否则不要使用此参数,以防数据错误。
12.-ia
全部映像。Ghost会对硬盘上所有的分区逐个进行备份。
13.-ial
全部映像,类似于-ia参数,对Linux分区逐个进行备份。
14.-id
全部映像。类似于-ia参数,但包含分区的引导信息。
15.-quiet
*作过程中禁止状态更新和用户干预。
16.-script
可以执行多个Ghost命令行。命令行存放在指定的文件中。
17.-span
启用映像文件的跨卷功能。
18.-split=x
将备份包划分成多个分卷,每个分卷的大小为x兆。这个功能非常实用,用于大型备份包复制到移动式存储设备上,例如将一个1.9G的备份包复制到3张刻录盘上。
19.-z
将磁盘或分区上的内容保存到映像文件时进行压缩。-z或-z1为低压缩率(快速);-z2为高压缩率(中速);-z3至-z9压缩率依次增大(速度依次减慢)。
20.-clone
这是实现Ghost无人备份/恢复的核心参数。使用语法为:
-clone,MODE=(operation),SRC=(source),DST=(destination),[SZE(size),SZE(size)......]
此参数行较为复杂,且各参数之间不能含有空格。   其中operation意为*作类型,值可取:copy:磁盘到磁盘;load:文件到磁盘;dump:磁盘到文件;pcopy:分区到分区;pload:文件到分区;pdump:分区到文件。
Source意为*作源,值可取:驱动器号,从1开始;或者为文件名,需要写绝对路径。
Destination意为目标位置,值可取:驱动器号,从1开始;或者为文件名,需要写绝对路径;@CDx,刻录机,x表示刻录机的驱动器号,从1开始。
下面举例说明
命令行参数:ghostpe.exe -clone,mode=copy,src=1,dst=2
完成*作:将本地磁盘1复制到本地磁盘2。
命令行参数:ghostpe.exe -clone,mode=pcopy,src=1:2,dst=2:1
完成*作:将本地磁盘1上的第二分区复制到本地磁盘2的第一分区。 命令行参数:ghostpe.exe-clone,mode=load,src=g:\3prtdisk.gho,dst=1,sze1=450M,sze2=1599M,sze3=2047M
完成*作:从映像文件装载磁盘1,并将第一个分区的大小调整为450MB,第二个调整为1599MB,第三个调整为2047MB。
命令行参数:ghostpe.exe -clone,mode=pdump,src2:1:4:6,dst=d:\prt246.gho
完成*作:创建仅具有选定分区的映像文件。从磁盘2上选择分区1、4、6。
了解了这些参数后,我们就可以轻松地实现Ghost的无人备份/复制/恢复了。冲杯咖啡吧。

一些示例
ghost.exe -clone,mode=copy,src=1,dst=2 -sure
硬盘对拷
ghost.exe -clone,mode=pcopy,src=1:2,dst=2:1 -sure
将一号硬盘的第二个分区复制到二号硬盘的第一个分区
ghost.exe -clone,mode=pdump,src=1:2,dst=g:\bac.gho
将一号硬盘的第二个分区做成映像文件放到g分区中
ghost.exe -clone,mode=pload,src=g:\bac.gho:2,dst=1:2
从内部存有两个分区的映像文件中,把第二个分区还原到硬盘的第二个分区
ghost.exe -clone,mode=pload,src=g:\bac.gho,dst=1:1 -fx -sure -rb
用g盘的bac.gho文件还原c盘。完成后不显示任何信息,直接启动。
ghost.exe -clone,mode=load,src=g:\bac.gho,dst=2,SZE1=60P,SZE2=40P
将映像文件还原到第二个硬盘,并将分区大小比例修改成60:40
还原磁盘
首先做一个启动盘,包含Config.sys,Autoexec.bat,Command.com,Io.sys,Ghost.exe文件(可以用windows做启动盘的程序完成)。
Autoexec.bat可以包含以下命令:
Ghost.exe -clone,mode=pload,src=d:\bac.gho,dst=1:1 -fx -sure -rb
利用在d盘的文件自动还原,结束以后自动跳出ghost并且重新启动。
开机自动做C区的备份,在D区生成备份文件bac.gho。
ghost.exe -clone,mode=pdump,src=1:1,dst=d:\bac.gho -fx -sure -rb
还原光盘
包含文件:Config.sys,Autoexec.bat,Mscdex.exe(CDROM执行程序),Oakcdrom.sys(ATAPI CDROM兼容驱动程序),Ghost.exe
Config.sys内容为:
DEVICE=OAKCDROM.SYS /D:IDECD001
Autoexec.bat内容为:
MSCDEX.EXE /D:IDECE001 /L:Z
Ghost -clone,mode=load,src=z:\bac.gho,dst=1:1 -sure -rb
可以根据下面的具体说明修改实例
-clone 在使用时必须加入参数,它同时也是所有的switch{batch switch}里最实用的一种,下面是clone所定义的参数
-clone,
mode={copy|load|dump|pcopy|pload|pdump},
src={drive|file|driveartition},
dst={drive|file|driveartition}
mode指定要使用哪种clone所提供的命令
copy 硬盘到硬盘的复制(disk to disk copy)

load 文件还原到硬盘(file to disk load)
dump 将硬盘做成映像文件(disk to file dump)
pcopy 分区到分区的复制(partition to partition copy)
pload 文件还原到分区(file to partition load)
pdump 分区备份成映像文件(partition to file dump)
src指定了ghost运行时使用的源分区的位置模式及其意义:
mode命令 对应mode命令src所使用参数 例子
COPY/DUMP
源硬盘号。
以1代表第一号硬盘
LOAD 映像文件名
g:/back98/setup98.gho 或装置名称(drive)
PCOPY/PDUMP
源分区号。
1:2代表的是硬盘1的第二个分区
PLOAD 分区映像文件名加上分区号或是驱动器名加上分区号。
g:\back98\setup98.gho:2,代表映像文件里的第二个分区
dst运行Ghost时使用的目标位置模式及其意义:
mode命令 对应mode命令dst所使用参数 例子
COPY/DUMP 目的硬盘号。
2代表第二号硬盘
LOAD 硬盘映像文件名。
例g:\back98\setup98.gho
PCOPY/PLOAD 目的分区号。
2:2 代表的是,硬盘2的第二个分区
PDUMP 分区映像文件名加分区号。
g:\back98\setup98.gho:2
SZEn指定所使用目的分区的大小
n=xxxxM 指定第n目的分区的大小为xxxxMB SZE2=800M表示分区2的大小为800MB
n=mmP 指定地n的目的分区的大小为整个硬盘的mm个百分比。
其他参数
-fxo 当源物件出现坏块时,强迫复制继续进行
-fx 当ghost完成新系统的工作后不显示"press ctrl-alt-del to reboot"直接回到DOS下
-ia 完全执行扇区到扇区的复制。当由一个映像文件或由另一个硬盘为来源,复制一个分区时,Ghost将首先检查来源分区,再决定是要复制文件和目录结构还是要做映像复制(扇区到扇区)。预设是这种形式。但是有的时候,硬盘里特定的位置可能会放一些隐藏的与系统安全有关的文件。只有用扇区到扇区复制的方法才能正确复制
-pwd and -pwd=x 给映像文件加密
-rb 在还原或复制完成以后,让系统重新启动
-sure 可以和clone合用。Ghost不会显示"proceed with disk clone-destination drive will be overwritten?"提示信息
注意事项
1. 在备份系统时,单个的备份文件最好不要超过2GB。
2.在备份系统前,最好将一些无用的文件删除以减少Ghost文件的体积。通常无用的文件有:Windows的临时文件夹、IE临时文件夹、Windows的内存交换文件。这些文件通常要占去100多兆硬盘空间。
3.在备份系统前,整理目标盘和源盘,以加快备份速度。
4.在备份系统前及恢复系统前,最好检查一下目标盘和源盘,纠正磁盘错误。
5.在恢复系统时,最好先检查一下要恢复的目标盘是否有重要的文件还未转移,千万不要等硬盘信息被覆盖后才后悔莫及啊。
6.在选择压缩率时,建议不要选择最高压缩率,因为最高压缩率非常耗时,而压缩率又没有明显的提高。
7.在新安装了软件和硬件后,最好重新制作映像文件,否则很可能在恢复后出现一些莫名其妙的错误。
-------------------------------------------------------------------------------
Ghostpe.exe菜单选项介绍
Norton Ghost的帮助文件中要求Ghostpe.exe在纯DOS下运行,其实它在WINDOWS的MS-DOS中运行也是可以的,同样可以对系统进行备份和还原。
开机进入DOS,键入Ghostpe.exe所在的目录路径名,比如:E:\Ghostpe.exe 回车,程序即开始运行。首先出现的是Ghost版本介绍窗口,回车后进入主界面。菜单选项有:
  (一)“Local”(本地的)
  1、Disk(磁盘)
(1) To Disk(硬盘到硬盘的复制)
(2)To Image(硬盘内容备份为镜像)
(3)From Image(从镜像文件恢复至硬盘)
 2、Partition(分区)
  (1)To Partition(分区到分区的复制)
  (2)To Image(分区内容备份为镜像)
  (3)From Image(从镜像文件恢复至分区)
 3、Check(检查)
(1) Image File(镜像文件)
(2)Disk(磁盘)
  (二)Option(设置项,一般情况下使用默认值即可)
  (三)Quit(退出)
Norton ghost——克隆硬盘的魅影
我们能用Ghost做什么
  ●可以创建硬盘镜像备份文件
  ●可以将备份恢复到原硬盘上
  ●磁盘备份可以在各种不同的存储系统间进行
  ●支持FAT16/32、NTFS、OS/2等多种分区的硬盘备份
  ●支持Win9X、NT、UNIX、Novell等系统下的硬盘备份
  ●可以将备份复制(克隆)到别的硬盘上
  ●在复制(克隆)过程中自动分区并格式化目的硬盘
Ghost是最著名的硬盘复制备份工具,因为它可以将一个硬盘中的数据完全相同地复制到另一个硬盘中,因此大家就将Ghost这个软件称为硬盘“克隆”工具。实际上,Ghost不但有硬盘到硬盘的克隆功能,还附带有硬盘分区、硬盘备份、系统安装、网络安装、升级系统等功能。1998年6月,出品Ghost的Binary公司被著名的Symantec公司购并,因此该软件的后续版本就改称为Norton Ghost,成为Nordon系列工具软件中的一员。1999年2月,Symantec公司发布了Norton Ghost的5.1C版本,该版本包含了多个硬盘工具,并且在功能上作了较大的改进,使之成为了一个真正的商业软件。
安装
本公司为使各位客户的机器万无一失,早已经为您的机器中装入了GHOST软件,并在您取走机器前为您做好备份,免去您的后顾之忧。此软件不需安装,复制即可使用。
Ghost硬盘克隆
Ghost就是克隆硬盘的程序,该程序在DOS下、Windows9.X下都可执行,所以要进行硬盘的克隆,请先进入到Ghost子目录,运行Ghost.exe程序,需要注意的是,如果是在DOS下运行该程序时,在运行该程序前最好启动DOS的鼠标驱动程序,因为Ghost的*作画面是仿窗口画面,使用鼠标点击来选择会方便一些——虽然也可以用键盘来*作。另外在备份或克隆硬盘前最好清理一下硬盘——删除不用文件、清空回收站、碎片整理等。
1. 分区备份
使用Ghost复制备份,有整个硬盘(Disk)和分区硬盘(Partition)两种备份方式。在菜单中点击“Local”(本地)项,在右面弹出的菜单中有三个子项,其中“Disk”表示整个硬盘备份(也就是克隆),“Partition”表示单个分区硬盘备份以及硬盘检查“Check”。“Check”项的功能是检查硬盘或备份的文件,看是否可能因分区、硬盘被破坏等造成备份或还原失败。而分区备份作为个人用户来保存系统数据,特别是在恢复和复制系统分区具有实用价值。
选“Local/Partition/To Image”菜单,弹出硬盘选择窗口,开始分区备份*作。点击该窗口中白色的硬盘信息条,选择硬盘,进入窗口,选择要*作的分区(用鼠标点击)。
然后在弹出的窗口中选择备份储存的目录路径并输入备份文件名称,注意备份文件的名称带有GHO的后缀名。
接下来,程序会询问是否压缩备份数据,并给出三个选择。“No”表示不压缩,“Fast”表示小比例压缩而备份执行速度较快,“High”就是高比例压缩但备份执行速度较慢。最后,选择“Yes”按钮即开始进行分区硬盘的备份。Ghost备份的速度相当快,不用久等就可以完成备份,备份的文件以GHO后缀名储存在设定的目录中。
2. 分区备份的还原
如果硬盘中备份的分区数据受到损坏,用一般磁盘数据修复方法不能修复,以及系统被破坏后不能启动,都可以用备份的数据进行完全的复原,无须重新安装程序或系统。当然,也可以将备份还原到另一个硬盘上。
要恢复备份的分区,就在界面中选择菜单“Local/Partition/From Image”,在弹出窗口中选择还原的备份文件,再选择还原的硬盘和分区,点击“Yes”按钮即可。
恢复还原时要注意的是,硬盘分区的备份还原是要将原来的分区一成不变地还原出来,包括分区的类型、数据的空间排列等。
3. 硬盘的克隆
硬盘的克隆就是对整个硬盘的备份和还原,选择菜单“Local/Disk/To Disk”,在弹出的窗口中选择源硬盘(第一个硬盘),然后选择要复制到的目的硬盘(第二个硬盘)。注意,可以设置目的硬盘各个分区的大小,Ghost可以自动对目的硬盘按设定的分区数值进行分区和格式化。选择“Yes”开始执行。
Ghost能将目的硬盘复制得与源硬盘几乎完全一样,并实现分区、格式化、复制系统和文件一步完成。只是要注意目的硬盘不能太小,必须能将源硬盘的内容装下。
  Ghost还提供了一项硬盘备份功能,就是将整个硬盘的数据备份成一个文件保存在硬盘上(菜单“Local/Disk/To Image”),然后就可以随时还原到其它硬盘或原硬盘上。这对要安装多个系统硬盘很方便。使用方法与分区备份相似。要注意的是,备份成的文件不能大于2GB。
 

阅读(2011) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册