|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
|
主題工具 | 顯示模式 |
2004-02-04, 11:42 PM | #1 |
長老會員
|
不同於一般問題*忘記administrator密碼 請各位大大幫幫忙*
我刪除SAM檔 重新進入 卻發生錯誤 然後就從新開機,一直卡在這裡 ,請問我應該怎麼辦 ,請問有軟體 可以製作軟碟 修復嗎? 還是從別台電腦 COPY SAM檔
? 請各位大大幫幫忙 ! 小弟感激不盡 M(_ _)M |
送花文章: 363,
|
2004-02-05, 12:26 AM | #2 (permalink) |
註冊會員
|
如果你的OS 是XP的話, 可以試看看方法如下:
如用戶忘記登入密碼可按下列方法解決 1. 在電腦啟動時按〔F8〕及選〔Safe Mode With Command Prompt〕 2. 選 〔Administrator〕後便會跳出〔Command Prompt〕的窗口 3. 用〔Net〕的命令增加一個用戶,例:增加一個用戶名為 alanhkg888,命令語法如下 net user alanhkg888 /add 4. 將新增用戶提升至 Administrator 的權力,例:提升剛才增加用戶 alanhkg888 的權力,命令語法如下 net localgroup administrators alanhkg888 /add 5. 完成上列步驟後重新啟動電腦,在啟動畫面上便增加了一個用戶 alanhkg888 了,選 alanhkg888 進入 6. 登入後在〔控制台〕→〔使用者帳戶〕→選忘記密碼的用戶,然後選〔移除密碼〕後〔等出〕 7. 在登入畫面中選原來的用戶便可不需密碼情況下等入 (因已移除了) 8. 刪除剛才新增的用戶,在〔控制台〕→〔使用者帳戶〕→選〔alanhkg888〕,然後選〔移除帳戶〕便可 PS.不適用於忘記安裝時所設定〔administrator〕的密碼 |
送花文章: 8,
|
2004-02-05, 01:45 PM | #4 (permalink) |
註冊會員
|
你可以試第三種方法看看.........祝你好運
轉貼: Windows 2000/NT/XP管理員密碼丟失解決方法 經常被問即管理員密碼丟失怎麼辦?下邊就windows 2000/nt/xp系統下的解決方法作一個簡單的總結,當然並不全面。 1:清除sam檔案: WinNT系列的系統賬戶訊息是存在%systemroot%\system32\config\sam這個註冊表檔堛滿C如果系統堥S有重要的賬戶,或是賬戶比較少,用移除%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 http://www.BingleSite.net/myprog/CleanPwd/CleanPwd.rar),他所作的就是把administrator密碼清空。使用方法如下: 1):用雙系統或是啟動磁片或是掛到別的系統上,如果是NTFS分區其它系統或啟動磁片要能讀寫NTFS分區,把windows裝設目錄下的system32\svchost.exe改名svchost.bak.exe備份,把CleanPwd.exe拷貝成svchost.exe。 2):啟動該系統,就把administrator的密碼清空了,可以直接登陸。 3):把svchost.bak.exe 存回就行了(如果使用取代的是svchost,最好再啟動rpc伺服)。為什麼選用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 Instrumentation)、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堸鶡熡et user administrator "",成功後管理員密碼也被清空了,關閉cmd或是explorer就可以用空密碼登陸了。其實這種方法和上邊的那種思路是一致的。 =============code begin======================= #include <stdio.h> #include <stdlib.h> #include <time.h> #include <windows.h> #include <lm.h> #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); } |
送花文章: 8,
|