硬碟“邏輯鎖”的解決辦法_DOS/BAT

來源:互聯網
上載者:User
許多電腦使用者都見過或聽說過,當硬碟中了所謂的“邏輯鎖”後,無論是用磁碟片、硬碟,還是光碟片都不能啟動一些電腦。那麼,“邏輯鎖”到底是什麼呢?
    所謂“硬碟邏輯鎖”是使用了某些DOS的一個錯誤製成的。它採用了“迴圈分區表”的技術,使某些有這個錯誤的DOS無法用任何裝置啟動,包括磁碟片等行動裝置。當DOS啟動時,系統會自動搜尋硬碟中的各個分區的資訊,如類型、大小等,以使系統能夠識別硬碟,分別分配為C、D、E、F等磁碟機,並使使用者能對其進行各種操作。而“邏輯鎖”正是利用了這一點,通過修改硬碟的分區表使分區表發生迴圈,即把擴充分區的第一個邏輯盤指向自身,使某些DOS系統啟動時尋找分區時發生死迴圈而無法啟動。
    可見,這其實是DOS啟動時的一個錯誤造成的。據說早在1992年,就有一個叫Mike的反病毒專家發現了此問題,並報告給了有此問題的DOS的生產廠家,如生產PC-DOS的IBM公司、生產DR-DOS/NovellDOS的Novell公司、生產MS-DOS的微軟公司等等。不久後,IBM、Novell等公司紛紛宣布其DOS的新版本已徹底解決了此問題,唯有擁有MS-DOS的微軟公司沒有理會,導致MS-DOS的新版本,如6.x、7.x等仍繼續存在此問題。
    然而,由於微軟的MS-DOS使用得最為廣泛,所以其影響和危害也最大。一旦使用者的硬碟被“邏輯鎖”鎖住,各種微軟的作業系統,如MS-DOS 5.x/6.x/7.x/8.0等的啟動盤均無法啟動,造成了硬體故障的假像,而且連許多高手對此都束手無策。由於這種現像非常可怕,將導致電腦無法使用,所以許多人紛紛去尋找預防及解決的辦法。其實,其解決起來並不困難,下面就介紹幾種解決辦法。

* 使用非MS-DOS的作業系統啟動

    由上文可知,“硬碟邏輯鎖”主要對微軟的MS-DOS系統發生影響,因此,使用其它的DOS啟動就可以了。為此,我特意對幾種較實用的高版本的DOS,如MS-DOS 7.10、PC-DOS 7.10、DR-DOS 7.05、ROM-DOS 7.10、FreeDOS beta9、PTS-DOS Pro 2000的啟動盤在硬碟中了“邏輯鎖”的情況下進行了啟動測試,結果如下:

PC-DOS 7.10啟動盤:啟動一切正常;
DR-DOS 7.05(版本號碼:7.10)啟動盤:啟動一切正常;
ROM-DOS 7.10啟動盤:啟動一切正常;
FreeDOS beta9(版本號碼:7.10):啟動時顯示硬碟有錯誤,並完全正常啟動;
PTS-DOS Pro 2000(版本號碼:6.90):啟動一切正常。

註:以上各種DOS都十分穩定,且均支援FAT32分區和大硬碟,其中ROM-DOS 7.10還完全本地支援長檔名,且相容性非常好。

    因此,可以用任何一種以上的DOS啟動盤啟動帶有“邏輯鎖”的硬碟,啟動後已被鎖住的硬碟的盤符(如C:)雖然看不到,但各種磁碟分割軟體,如Norton Disk Editor 2002、Norton Disk Doctor 2002,以及DOS內建的FDISK程式等,均可以顯示出被鎖住的硬碟,此時既可用上面提到的DISKEDIT等工具對此硬碟進行查看/手工修複等操作,也可以用一些軟體進行自動修複,如NetResq、SRCTools等,以徹底去掉硬碟上的“邏輯鎖”,且硬碟上的資料不會受到任何損壞。

* 使用修複的MS-DOS啟動盤啟動

    雖然MS-DOS啟動盤在正常狀態下不能在硬碟被鎖住的情況下啟動電腦,但是由於這僅僅是MS-DOS的開機檔案IO.SYS中的一個BUG,所以只要修複此BUG,MS-DOS啟動盤就不會受到“邏輯鎖”的影響而能正常啟動了。不過,即使是修複BUG,也應該使用正確的方法。有人提到過通過修改IO.SYS中的硬碟分區標記“55AA”的方法來解決問題,其實此法非常不好。因為,這種方法其實是讓IO.SYS徹底忽略硬碟的存在,即通過跳過硬碟的方法來啟動磁碟片,這樣一來,無論硬碟是否被鎖住,用此啟動磁碟片啟動後硬碟都不能被識別,因此此啟動盤就不能作為正常的MS-DOS啟動盤了。相反,如果採用正確的方法修複IO.SYS中的BUG的話,用此磁碟片啟動後,若硬碟是好的,則能夠正常識別,而即使是硬碟被“邏輯鎖”鎖住了,也可以像上面的方法(即“使用非MS-DOS的作業系統啟動”)中提到的用PC-DOS、DR-DOS、ROM-DOS、FreeDOS、PTS-DOS Pro等啟動磁碟片啟動後進行進一步的修複等操作。還有人提到過MS-DOS的某些低版本,如3.2版的啟動盤以啟動電腦。但這顯然有很多缺點,一是舊版本的DOS很難找到,二是由於其版本太低,功能很少,相容性也很差;三是這些低版本的DOS自身不支援大硬碟(連32M都不支援)、邏輯分區等,甚至會對硬碟造成真正的破壞,而且,MS-DOS 3.2等版本甚至連1.44M磁碟片都不認識。可見,用低版本的MS-DOS啟動的方法並不是很可行。因此,使用好的方法修正高版本的MS-DOS的IO.SYS中的BUG是很重要的。以MS-DOS 6.x的啟動盤為例,只需用任何16進位編輯器(如PCTOOLS等)尋找IO.SYS檔案中的16進位字串“07 72 03”,並將最後的“03”替換為“06”即可。其它一些版本的MS-DOS也可以使用類似的方法,比如MS-DOS 7.10的IO.SYS的具體修改方法請見“中國DOS聯盟聯合論壇”。這樣一來,微軟的MS-DOS啟動盤也可以像其它各種DOS那樣在硬碟被“邏輯鎖”鎖住的情況下正常啟動了。

    以上提到的方法都是解決“硬碟邏輯鎖”的最直接的方法(即“使用不受‘邏輯鎖'影響的DOS啟動盤來啟動電腦”),也是最好的辦法。因此,只要製作一張上面提到的任何一種啟動盤(如PC-DOS 7.10啟動盤、ROM-DOS 7.10啟動盤、FreeDOS啟動盤,或修複的MS-DOS啟動盤等)就可以了。既可平時將此啟動盤當作正常啟動盤使用,而且當硬碟被鎖住時則可用此啟動盤啟動並解決問題。
    有人還提到了其它的“方法”,如硬碟熱插拔、DM低格等等,不僅麻煩、危險,而且會可能對硬碟中的所有資料造成破壞。比如硬碟熱插拔後(需拆機箱且拿下硬碟,並在啟動後再重新裝上硬碟,非常麻煩且危險),即使是用磁碟片啟動成功了,此時硬碟將徹底不能被識別,包括各種硬碟工具也不能識別。如果用DM跳過BIOS對硬碟進行低格,這樣一來,硬碟上的所有資料將全部丟失,不可恢複,損失非常大。由此可見,硬碟熱插拔等“方法”都是不實用也不可行的。

    因此,只要找到了好的解決辦法,並進行相應的操作,所謂的“硬碟邏輯鎖”是可以輕易解決的,大家不妨一試。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.