天偉提供Linux下恢復(fù)硬盤分區(qū)數(shù)據(jù),誤刪除數(shù)據(jù)恢復(fù),系統(tǒng)恢復(fù),口令恢復(fù),等等數(shù)據(jù)恢復(fù)業(yè)務(wù)
有許多原因可能導(dǎo)致用戶口令的遺失,這對系統(tǒng)管理員而言,可能不是一個問題,只要以Root賬號登錄,再用Passwd命令更改用戶口令就可以了??墒?,如果丟失的是Root口令,這又怎么辦?難道就束手無策、重裝系統(tǒng)?這樣不僅費(fèi)時費(fèi)力,而且還可能造成重要數(shù)據(jù)的丟失和應(yīng)用程序的破壞。顯然這種做法并不可取。如果你需要恢復(fù),請與我們聯(lián)系。
因?yàn)橹匮bWindows等等誤操作常常導(dǎo)致安裝到MBR的GRUB引導(dǎo)程序無法再引導(dǎo)系統(tǒng),也就終導(dǎo)致了無法進(jìn)入Linux系統(tǒng)。
筆者的ML1.2安裝在/dev/hda11,對應(yīng)grub下的位置為(hd0,10),注意使用/dev/hdax的方式表示的分區(qū)號都是從1開始的,所以到了grub下時需要減去1來表示。grub安裝在MBR,在安裝WinXP后導(dǎo)致無法進(jìn)入linux。本文雖然使用ML1.2做例子,但是對版本較新的grub具有通用性。MagicLinux 1.2 final使用的grub版本為0.95。
先使用一張修復(fù)盤進(jìn)入grub,或者利用其他linux恢復(fù)盤等等進(jìn)入linux系統(tǒng),然后進(jìn)入grub控制臺??傊褪窍氡M辦法進(jìn)入一個控制臺就是了。然后準(zhǔn)備引導(dǎo)進(jìn)入硬盤上的Linux系統(tǒng)。如下:
grub> root (hd0,10)
grub> kernel /boot/vmlinuz-2.6.9 init 5 ro root=/dev/hda11
grub> initrd /boot/initrd-2.6.9.img
grub> boot
如上是利用修復(fù)盤進(jìn)入grub后的修復(fù)方法,至于自己可以進(jìn)入其他的控制臺修復(fù)方法暫時略。如上的過程就可以進(jìn)入硬盤上的linux系統(tǒng)了。然后開始修復(fù)過程。
# grub
grub> root (hd0,10)
grub> setup (hd0)
grub> quit
# grub-install hd0
如山的步驟將會把grub安裝到MBR,任何一個步驟都不可以缺少。如果缺少grub-install步驟則會安裝grub到MBR,但是不會顯示系統(tǒng)菜單。
另外,對于MagicLinux1.2final會在后一步提示找不到grub。這是因?yàn)間rub-install是一個shell腳本,使用路徑尋找grub程序。默認(rèn)的尋找grub路徑為/usr/sbin/grub,可是對ML1.2則是在/sbin/grub。所以只要執(zhí)行如下語句,復(fù)制一下即可:
# cp /sbin/grub /usr/sbin/grub
這樣就可以正確的恢復(fù)grub到MBR了。
本文沒有直接寫出使用光盤上的控制臺修復(fù)grub的原因是很多光盤發(fā)行版帶有的/dev/hdax的數(shù)目很小,我手里的一個到/dev/hda8,這樣根本無法訪問/dev/hda11,所以只好放棄。另外即便是光盤發(fā)行版也是需要使用grub引導(dǎo)的,在它引導(dǎo)的時候按下"C"鍵即可進(jìn)入grub控制臺,輸入命令來進(jìn)入硬盤上的Linux。
后,推薦還是備份一下做好的MBR,在linux下使用如下命令:
# dd if=/dev/hda of=/root/linux.bin bs=512 count=1
這里注意使用if=/dev/hda是備份MBR中的數(shù)據(jù),如果grub安裝在具體的某個分區(qū),則要自己選擇了。備份之后的linux.bin文件可以復(fù)制到Windows下,備份一份,另一份復(fù)制到C盤根目錄下。然后修改boot.ini文件,添加如下一行:
C:\linux.bin="Linux"
這樣就可以利用Windows的NT loader來引導(dǎo)linux系統(tǒng)了。以后恢復(fù)和修理linux會更加方便。