Lighttpd上安装WordPress

我写篇日志是想记录一下,怕以后不用的时候就忘了。

其实很早就听人说lighttpd是一个轻量级的Web服务器,今天试了一下,果然名不虚传,在我装上后,运行Wordpress 的同时,内存只占用4.100k,然后我又启动了Apache,也运行Wordpress作为测试,内存达占用13.116k,不管怎么样,lighttpd还是无法被大的稳定的服务器所采用,但是作为个人测试使用,那就相当的不错了。

接下来说一下怎么安装lighttpd,我是在windows下面测试的,为了简单我还是找了一个套件包:
WLMP Version: 1.1.4 主要包含以下功能
- LightTPD 1.4.16
- MySQL 5.0.45
- PHP 5.2.3
- MiniPerl 5.8.8
- OpenSSL 0.9.8e
- phpMyAdmin 2.10.3

本站下载:下载文件WLMP-Standard-1.1.4.1165-Win32-HUN.zip (0 Byte , 下载:6次)(最新版,高速下载!!实时更新 )

官方下载地址在:http://wlmp.dtech.hu/
 

下载好后,执行安装程序,然后让你选择安装的目录,安装到最后会提示你重新启动计算机,你选择是好行了。

接下来安装wordpress,同样到官方下载,解压到lighttpd的www目录中,我的WLMP安装在D盘上,所以我将wordpress放到D:WLMPHTDOCSwp中,HTDOCS为根目录,其它与Apache都是一样的,Wordpress的Permalinks设置与在apache中是不一样的,因为lighttpd不支持.htaccess文件,所以要改lighttpd.conf文件来实现地址重写功能。

在D:WLMPLightTPDconf中找到lighttpd-inc.conf,本来默认的文件应该是lighttpd.conf,可是在WLMP中,她被改名为lighttpd-inc.conf,然后在文件是找到


 
CODE:

  1. #server.error-handler-404   = "/error-handler.php"

这样的语句,在后面加上一句


 
CODE:

  1. server.error-handler-404   = "/wp/index.php"

同时记得把前面的#号去掉哦,这句的意思是说,当请求的文件不存在的时候就调用wp/index.php文件。

下面加入重写规则,首先找到 #"mod_rewrite",然后把前面的#号掉,表示启动这个插件,接着查找url.rewrite,你会找到一条信息,当然我用的是WLMP并且版本号是1.4.16,如果你使用的是别的版本或不是WLMP套件,那我就不敢保证一样的了,不管怎么样找到相关的定义就行了,或查找#### url handling modules (rewrite, redirect, access),也可以,找到后在下面加一行:


 
CODE:

  1. url.rewrite = ( "^/(archives|categories|comments|feed)/" => "/index.php" )

 

这样就大功告成了,其实比Apache的重写规则还要简单,这两天我主要在研究lighttpd的virtual hosts设置部份,很多人说像鸡肋,不过我还是想了解一下,有什么心得我会写出来的!!!

一个程序员的成长的六个阶段

第一阶段

此阶段主要是能熟练地使用某种语言。这就相当于练武中的套路和架式这些表面的东西。

第二阶段

此阶段能精通基于某种平台的接口(例如我们现在常用的Win 32的API函数)以及所对应语言的自身的库函数。到达这个阶段后,也就相当于可以进行真实散打对练了,可以真正地在实践中做些应用。

第三阶段

此阶段能深入地了解某个平台系统的底层,已经具有了初级的内功的能力,也就是“手中有剑,心中无剑”。

第四阶级

此阶段能直接在平台上进行比较深层次的开发。基本上,能达到这个层次就可以说是进入了高层次。这时进入了高级内功的修炼。比如能进行VxD或操作系统的内核的修改。
这时已经不再有语言的束缚,语言只是一种工具,即使要用自己不会的语言进行开发,也只是简单地熟悉一下,就手到擒来,完全不像是第一阶段的时候学习语言的那种情况。一般来说,从第三阶段过渡到第四阶段是比较困难的。为什么会难呢?这就是因为很多人的思想变不过来。

第五阶级

此阶段就已经不再局限于简单的技术上的问题了,而是能从全局上把握和设计一个比较大的系统体系结构,从内核到外层界面。可以说是“手中无剑,心中有剑”。到了这个阶段以后,能对市面上的任何软件进行剖析,并能按自己的要求进行设计,就算是MS Word这样的大型软件,只要有充足的时间,也一定会设计出来。

第六阶级

此阶段也是最高的境界,达到“无招胜有招”。这时候,任何问题就纯粹变成了一个思路的问题,不是用什么代码就能表示的。也就是“手中无剑,心中也无剑”。
此时,对于练功的人来说,他已不用再去学什么少林拳,只是在旁看一下少林拳的对战,就能把此拳拿来就用。这就是真正的大师级的人物。这时,Win 32或Linux在你眼里是没有什么差别的。

每一个阶段再向上发展时都要按一定的方法。第一、第二个阶段通过自学就可以完成,只要多用心去研究,耐心地去学习。
要想从第二个阶段过渡到第三个阶段,就要有一个好的学习环境。例如有一个高手带领或公司里有一个好的练手环境。经过二、三年的积累就能达到第三个阶段。但是,有些人到达第三个阶段后,常常就很难有境界上的突破了。他们这时会产生一种观念,认为软件无非如此,认为自己已无所不能。其实,这时如果遇到大的或难些的软件,他们往往还是无从下手。
现在我们国家大部分程序员都是在第二、三级之间。他们大多都是通过自学成才的,不过这样的程序员一般在软件公司也能独当一面,完成一些软件的模块。
但是,也还有一大堆处在第一阶段的程序员,他们一般就能玩玩VB,做程序时,去找一堆控件集成一个软件。

十种武器保证你的系统安全

我相信玩很多玩黑软的朋友都有这样一个问题。想安全吧,装杀毒软件,结果自己的很多黑软都被杀的光光,不装吧,又怕被病毒感染,后门等等,导致系统挂掉,硬盘也要格式化。哈哈。今天我就把我自己如何解决这些问题的方法告诉你们,既可以随心所欲的玩黑软,又不担心病毒的骚扰。
注:以下只是我个人所见。由于下面所涉及到的软件网上都有的下,再有本论坛空间有限,就不上传了,如网上有找不到的可以联系我。

1 avast4.78 [安装版]:占用内存非常小,全面监控,WEB监控不比Kaspersky6差,防火墙也不错。内存监控比较弱。

2 AVG Anti-Virus v7.5 [安装版]:占用内存非常强[尤其文本,比诺盾还强。],全面监控,WEB监控不行。内存监控比较强。

3 Dr.Web V4.33 [绿色版]:大蜘蛛占用内存非常小,内存监控强,查杀能力非常强。

4 Virus Chaser [绿色版]:驱逐舰占用内存非常小,内存监控非常强,查壳能力非常强。注意,如果开启内存监控,他所疑视文件会被锁定,只有结束它的进程后重起机器才可以。[做辅助查杀非常不错]

5 Kaspersky6 [绿色版]:无监控,占用内存非常小,查杀能力强。[做辅助查杀非常不错]

6 AVG Anti-Spyware 7.5 [绿色版]:启发式监控,占用内存非常小,查杀能力强。[做辅助查杀非常不错]

7 F-Prot Antivirus v3.16F [绿色版]:冰岛占用内存非常小,无监控,用内存非常小,查杀能力比较强。[做辅助查杀非常不错]

8 卡巴斯基防火墙 [绿色版]:操纵明了,自定义规则能力非常强,可防御冲击波等病毒。但与AVAST4.78自带的防火墙功能冲突,导致AVAST自带的防火墙功能不能运行,不过AVAST那些功能正好是 卡巴斯基防火墙 的本职功能,正好拟补。[怕麻烦的别用这个,哈哈。]

9 360safe3.0 [绿色版]:最后一个就是这个了,不是叫你找流氓软件啊,而是它有个非常好用的功能,就是他的 注册表 监视功能。如有更改,它会提示你操纵。再通过它的其他功能一目了然的了解所有动作。[推荐使用]

10 影子系统 [安装版]:这个是我最后推荐的,如果你看后觉得装杀毒还是麻烦,或者说我根本就不想装,再者说,你要本机测试木马病毒等,那我隆重推荐你使用影子系统,安装简单,一路下一步,最后重起机器就OK了,启动机器时会在启动项里有[进入影子系统单一模式:这个模式是只保护你的系统盘][进入影子系统完全模式:这个模式是保护你硬盘所有分区],你也可以跳过这个,在桌面的快捷方式启动影子系统。用影子系统的好处是:1单一模式(保护系统盘),你的所有操纵都是建立在系统盘上的,本机测试木马病毒等时所有都是要写进系统的,重起机器后所有操纵都会被还原,即使是木马,病毒都会消失!如果你有需要保存的软件等,不要保存在系统盘,请存放在其他未被保护的盘,这样才不会被还原。2完全模式(保护硬盘所有分区)即使你中了硬盘炸弹,重起机器后你的硬盘还是安然无恙。3还原能力经本人测试,远远超过还原精灵和还原卡。我用影子

软件开发入门学习的个人看法

踏实

   偶然在网上看到《由C#风潮想起的-给初学编程者的忠告》一文. 其中一个角度:避免“浮躁”,倡导“踏实”的学习方法,我是很认同的,但总觉该文作者标题“-给初学编程者的忠告”太大,所以在其文列出的一些具体的“操作方法”上我认为可以探讨,如同自己在某次公司总结会上就《软件开发,我们积累的是什么?》为题跟同事聊了半个多小时后,其中一个同事提到希望我能继续把这个题目细化,就刚入行的他们具体该如何发展有更“具操作性”的指引,当时我是跟他们说这只是我在这一行呆了5年多的体会,谈“指引”还太远,只是可以提出来大家思考、讨论。
  
不要过度贬低编码

   不要真的认为"不少大师级的计算机技术研究者是不懂编程的",做软件开发编码是最最基础的东西,只有踏踏实实的掌握好这个基础你才有办法往上走,不管做分析做设计做项目管理你都需要能清楚东西是如何实现的?可不可以实现?否则肯定出现大量的:"设计是设计,编码是编码","产品都是代码人员从头到尾实现的","究竟需花多少时间,难度有多大,开发人员说了算","质量/成本/进度全是黑匣子"...现象,如果你是做编码那编码就更重要了:).所以对于有志从事这个行业(软件开发)的个人来说,必须先从"重视编码"开始.过了这一关才能去考虑做系统分析,做项目管理...
   软件开发的各个环节是相辅相承的,分析有分析的重要,设计有设计的重要,编码有编码的重要,测试实施也各有其地位,任何一个环节搞不好就如同我们熟悉的木桶理论,"最薄弱的一个环节制约着其总容量".
   既然编码重要,那该如何学编码?
  
专心学好一门语言
   算算自己用过的语言也不少(括弧里为使用该语言写的比较有代表性的东东),C(dos版的图像/图标编辑工具,96年的《电脑报》有介绍),C++(可自定义方块形状的方块游戏,被收录于99年《软件》杂志的附送光盘上),汇编(DOS汉字系统,97年底完成),PB(学校自动排课/排考模块,98年),ASP(一套web版的企业信息系统,99年),VB(企业信息系统的核心组件,99年),delphi(工作流平台,组件式GIS系统等),Java(Delphi Client + J2EE Server协同实现),.Net(规则引擎),PHH...
   看起来好象也不少,回过头来想想自己真正认真学过的语言只有一个,就是“C”, Dos年代的TC2.0,用它写了大量的小程序,比较系统的了解了编程是怎么一回事,记得那个时候看到什么软件都要琢磨它是如何实现的?如果让我来实现该如何做?也模仿了不少东西,虽然多是很表面的模仿但对自己编程思维的锻炼很有好处.后来用其它语言基本上都只是翻翻帮助,然后找找其Demo代码来看看,很快就可进入状态.
   语言都是差不多的,重要的是“编码的思想”,具备了该思想语言就只是工具了,用什么工具实现都差不多,该思想的形成是需要“磨练”的,就是“专心使用一门语言”来磨练(甚至需要有“咬文嚼字的孔已己作风”),然后可“一理通百理通”,不然你只是浮于表面的去学再多的语言都没有.都不能拿来做真正的开发.都不能了解“编码”的内涵.
   如在今年招聘面试的时候看到太多写着什么语言都精通(或熟练)的毕业生,我惯用的方法是给他(她)一张纸一支笔,让他(她)用自己最了解的语言写一个算阶乘的函数,这个问题你一看肯定说很简单,好,接着我会往下问,可以有多少种方法来实现:循环,递归…还有吗?你能写出多少种来?(代码基本结构模式的考察).代码质量如何? 有没有考虑错误处理(太多人写的代码会进入死循环比如输入的是负数) ? int的上限是多少,用long? 如果输入值比较大,算得出结果吗,该如何去实现可以计算很大数的该函数?...看着他(她)写出来的代码一个个问题的问就得了,不管你用什么语言,不管你“精通”多少种语言,我只问这些用什么语言来解决问题都需要的基础的东西, 就是“编码的思想”.
  在学专一门语言的基础上新东西当然要跟,不然在这个行业你是很难“混下去”的,但有这“学专一门”的前提后,你跟起来就轻松了,而不用总是得“追”~
  在“专”一门语言的过程中为解决问题你会发现“算法”很重要,这就是接下来要说的“基础”了.

基础很重要
   面试的时候我一般都会问,基础知识学得如何? 一般重点问的是:《数据结构》, 《编译原理》, 《数据库原理》的内容.至于《由》文提到的:《汇编语言》,《 Windows 程序设计》我是不会问的.这些是可以进一步学习的东西,但对现在的开发来说不是必须的.《软件工程》我向来不问,教材理论跟实际差得太远了~
  《数据结构》很重要,不懂数据结构很多编码就是“蛮干”,而且往往把“简单问题复杂化”,甚至复杂到不可能解决.认真学习《数据结构》并多做尝试用你熟悉的语言去实现里面的算法,你会发觉“世界真奇妙”~不要认为你不会去开发“编程语言”不需要学习《编译原理》, 《编译原理》里面包含了太多开发软件的“奇妙”的思想案例,认真体会你肯定会被其解决问题的方法折服,从中你能体会到很多东西,对以后做软件(不管是设计还是编码等)大有帮助,里面有很多现存的方法可用在你的项目中,而这些跟《数据结构》是互为补充的.在这些基础上接下来《设计模式》一书你也一定得看看.
   很多应用都离不开数据库,最终总得找个地方来“操纵,存储,分析数据”,关于范式,关于锁,关于SQL,关于笛卡儿那一套你总得了解了解,不然无法入手,这就需要好好学习《数据库原理》了.单纯知道几条SQL语句是远远不够的,如何保证数据的完整性,安全性?如何提高效率等等都需要这些基础的支持~
   当然英文也是基础,看英文资料确实重要,不单是书,还有网络上的大量资料,论坛…看的时候别害怕就是了,毕竟都是受过高等教育的,英语也学了那么多年起码都有点底吧,配合这两个工具:《金山词霸》及Google.com,不懂的单词“即指即译”,但很多名词或基础知识不是靠单词解释能清楚的,配合搜索引擎查查相关资料看看,记住一点,看到不懂的东西多看几遍,默记一小会,日积月累你能看懂的东西就多了。
  
兴趣
   最后该说说的就是兴趣问题,如果你能对它真正感兴趣(如果要从事软件开发又没兴趣的话赶紧先培养兴趣去^_^),对看技术资料就想别人看武侠小说看球赛一样的话,再配合上面提到的几点(踏实, 先专后广, 基础扎实)相信在这一行多少是可以做点东西出来的~~

移动存储安全


当你的U盘,移动硬盘遗失了,被盗了,或者是遗忘在公共场所,里面的资料就会完全被别人窥探,如果涉及一些隐私,机密,那后果是很严重的。本课题就是在这样一个情况下产生的。这里剖析的只是一个最初的演示原型,详细设计,以及一些细节可以参考源代码。源代码在WinXP,VC6.0编译通过。

[代码性质] VC完整应用程序代码
[文件大小] 16K
[下载]     下载文件Jeffrey_mss.rar (15.78 KB , 下载:17次)

摘要:实现对移动存储设备的加密,保护信息隐蔽,防止隐私泄露。


关键字:移动存储设备加密安全


  当你的U盘,移动硬盘遗失了,被盗了,或者是遗忘在公共场所,里面的资料就会完全被别人窥探,如果涉及一些隐私,机密,那后果是很严重的。本课题就是在这样一个情况下产生的。这里剖析的只是一个最初的演示原型,详细设计,以及一些细节可以参考源代码。源代码在WinXPVC6.0编译通过。


1
、访问注册表读取计算机上的移动存储设备

在注册表

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Disk\Enum

下面可以看到计算机当前的状态,这里可以看到所有的存储设备的情况,包括计算机的硬盘,通过情况下,名称为0的是计算机硬盘,所以在列出的选择设备时,会把名称为0的屏蔽,不然太危险,一旦造成系统的破坏,后果会很麻烦。对注册表的读写:

HKEY hkey;
char sz[256];
DWORD dwtype,sl = 256; 
for(int i=1;i<8;i++)
{
        if(RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SYSTEM\\CurrentControlSet\\Services\\Disk\\Enum",\
               NULL, KEY_ALL_ACCESS, &hkey)==ERROR_SUCCESS)
        {
               CString id;
               id.Format("%d",i);
               if(RegQueryValueEx(hkey,id,NULL,&dwtype,(LPBYTE)sz,&sl)==ERROR_SUCCESS)
               {
                       CString str=(CString)sz;
                       m_select.AddString(sz);
               }
        }
}
RegCloseKey(hkey); 


2
、对磁盘的扇区的操作

  Windows 操作系统在很大程度上采取了访问安全保护机制(例如,在Windows操作系统下不能直接访问物理内存、不能使用各种DOSBIOS中断等等),其实Windows在采取“实保护”措施的同时也提供了另外的一种有别于在DOS下访问硬件设备的方法,即把所有的硬件设备全部看做“文件”,并允许按照对文件的读写方式来对其进行数据存取访问。对于磁盘扇区的读写,可以通过C++CreateFile()函数来实现。由MSDN可查询到该函数原型:

HANDLE CreateFile(
LPCTSTR lpFileName, 
DWORD dwDesiredAccess, 
DWORD dwShareMode, 
LPSECURITY_ATTRIBUTES lpSecurityAttributes, 
DWORD dwCreationDisposition, 
DWORD dwFlagsAndAttributes, 
HANDLE hTemplateFile );


由于访问的是事实上已经存在的磁盘扇区,因此只能以OPEN_EXISTING标志设置dwCreationDisposition参数指出将要打开已经存在的文件(设备)。至于其他参数的使用与操作普通文件时的用法相同。

使用的时候,如果需要定位到某一个具体的扇区,可以使用SetFilePointer()函数:

DWORD SetFilePointer(HANDLE hFile,LONG lDistanceToMove,PLONG lpDistanceToMoveHigh,DWORD dwMoveMethod);


  在定位到要访问的扇区开始位置后就可以通过ReadFile()或WriteFile()函数实施相应的读写访问了,具体操作与文件读写并没有什么太大的差别。最后,在完成访问操作后以CloseHandle()关闭文件句柄释放资源,从而完成一次完整的磁盘扇区数据访问操作。

int ReadDisk(CString driver,unsigned char *Buf,long addr)
{
        HANDLE hDevice;
        BOOL bResult;
        DWORD bytesread; 
        
        hDevice=CreateFile(driver,GENERIC_READ|GENERIC_WRITE,
               FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_EXISTING,0,NULL); 
        if(hDevice==INVALID_HANDLE_VALUE)
        { 
               AfxMessageBox("Error!");
               return 0;
        }
        if(addr!=0)
        {
               SetFilePointer(hDevice,512*addr,NULL,NULL);
        }
        
        bResult=ReadFile(hDevice,Buf,512,&bytesread,NULL);
        if((bResult==FALSE)||(bytesread<512)) 
        { 
               AfxMessageBox("Error!");
               return 0;
        }
        CloseHandle(hDevice);
        return 1;
}


3
、用RC4加密算法对磁盘加密。

/* RC4加密,KEY是密钥,此处Key[]="MobileStorageSecurity",后期可以用户输入的密码作为密钥 */
RC4_KEY rc4_key;
build_rc4_key(Key,strlen((char*)Key),&rc4_key);
rc4_handler(MBRBuf,strlen((char*)MBRBuf),&rc4_key);


4
U盘插入计算机时的自动感知

LRESULT CRawDiskDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
        if ( WM_DEVICECHANGE == message && FALSE == bCopy )
        {
               //刷新设备列表
        }
        return CDialog::WindowProc(message, wParam, lParam);
}


后期改进

  1. 这样就必须要求在电脑上有这个程序,所以在后期采用同样的原理,将这个程序放在U盘里,在加密的时候实现对自身的屏蔽,这样大大提高程序的易用性。
  2. 可以让用户输入密码,将密码作为密钥去加密和解密。

  3.这个只是对一个磁盘最初的512字节加密,后期可以通过对扇区的定位和计算,对目录表及数据加密。

不要密码也能进入win2003

1.当Win2003启动到出现登录提示界面时,可以按住键盘上的Ctrl+Shift复合键,将输入法调出来;

2.用鼠标右键单击输入法工具条,从随后出现的快捷菜单中,选择“帮助”菜单项,再从下级菜单中执行“操作指南”命令;

3.在随后出现的“输入法操作指南”界面中,可以执行“打印”命令,这样就能弹出一个标题为“打印主题”的窗口;在这里,我们可以选中其中的“打印选定主题”选项,再用鼠标单击一下“确定”按钮;这样系统又会打开一个打印界面,选中该界面中的“常规”标签,在对应的标签页面中,用鼠标双击“添加打印机”图标;

4.在接着打开的打印机添加向导设置界面中,继续单击“下一步”按钮,在随后出现的画面中,将“网络打印机”选项选中,并继续执行“下一步”命令;

5.将随后界面中的“输入打印机名,或者单击下一步,浏览打印机”选项选中,然后在对应的文本框中输入网络打印机的具体名称,例如“HP”,继续用鼠标单击“下一步”按钮;

6.接着,屏幕上会出现一个“连接到打印机”的提示界面,该界面提示我们系统无法连接到指定打印机,此时我们可以用鼠标单击该提示界面中的“帮助”按钮;

7.在其后出现的Win2003系统窗口中,在执行“Web帮助”命令,并在打开的帮助界面的右边子窗口中,单击其中的一个超级链接,可以任意选择;

8.单击以后,系统就会自动弹出一个标题为“无法连接到服务器”的窗口,将鼠标移动到该窗口的地址栏中,删除掉以前的信息,并直接输入“C:”符号,单击一下回车键;

9.随后浏览界面就自动“变脸”为资源管理器界面了,单击该界面右边的下拉按钮,从下拉列表中单击“控制面板”选项,这样就能将系统的控制面板窗口打开了;

10.找到该窗口的“用户和密码”图标,并用鼠标双击之,在随后的窗口中选中“用户”标签,并在对应的标签页面中,将其中的“Administrator”选项选中,再用鼠标单击一下“设置密码”按钮;

11.在弹出的密码设置框中,重新输入一个容易记忆的密码,最后单击“确定”按钮,就可以使密码生效了。最后使用该密码重新登录试试.

Q:急:我的超级用户密码忘记了,求解决办法

A:启动/关机脚本:_(1)如果故障计算机使用FAT/FAT32文件系统,那可直接使用Win98引导盘引导.如果使用NTFS文件系统,可将故障计算机上的硬盘取下,以从盘模式挂接到其它的Win2000计算机上.下面的操作以后一种情况为准,假设现在故障计算机的system分区(通常是C:)在新的计算机上成为分区E:.

(2)编写一个能恢复管理员密码的批处理文件admin.bat,内容只需要一条"net user"命令即可.如下:

net user administrator 12345678

这儿我们假设当前的管理员是administrator,将它的密码恢复为"12345678".将文件admin.bat保存到"E:\winnt\system32\GroupPolicy\Machine\Scripts\Startup"下,也就是故障计算机原来的"C:\winnt\system32\GroupPolicy\Machine\Scripts\Startup"下.

(3)编写一个启动/关机脚本配置文件scripts.ini,这个文件名是固定的,不能改变.内容如下:

[Startup]
0CmdLine=admin.bat
0Parameters=

将文件scripts.ini保存到"E:\winnt\system32\GroupPolicy\Machine\Scripts"下,也就是故障计算机原来的"C:\winnt\system32\GroupPolicy\Machine\Scripts"下.

(4)将硬盘恢复为主盘,接回原来的计算机,重新启动,等待启动脚本运行.启动脚本运行结束管理员administrator的密码就被恢复为"12345678".

(5)如果要新建一个管理员账号,admin.bat文件的内容可以修改为:

net user admin 12345678 /add
net localgroup administrators admin /add

这样一个名为"admin",密码是"12345678"的管理员账号就建立了.

这个方法不仅可以恢复独立服务器上本地管理员密码,也可以恢复Win2000域中域管理员的密码.