自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux系統(tǒng)啟動故障如何修復(fù)?這幾個案例幫你解決問題~

系統(tǒng) Linux
Linux 系統(tǒng)在啟動過程中會出現(xiàn)一些故障,導(dǎo)致系統(tǒng)無法正常啟動,作者在這里寫了幾個應(yīng)用單用戶模式、GRUB 命令操作、Linux 救援模式的故障修復(fù)案例,幫助大家了解此類問題的解決。

[[209350]]

Linux 系統(tǒng)在啟動過程中會出現(xiàn)一些故障,導(dǎo)致系統(tǒng)無法正常啟動,作者在這里寫了幾個應(yīng)用單用戶模式、GRUB 命令操作、Linux 救援模式的故障修復(fù)案例,幫助大家了解此類問題的解決。

(一)單用戶模式

Linux 系統(tǒng)提供了單用戶模式 (類似 Windows 安全模式),可以在最小環(huán)境中進行系統(tǒng)維護。在單用戶模式 (運行級別 1) 中,Linux 引導(dǎo)進入根 shell,網(wǎng)絡(luò)被禁用,只有少數(shù)進程運行。單用戶模式可以用來修改文件系統(tǒng)損壞、還原配置文件、移動用戶數(shù)據(jù)等。

以下列舉了幾個單用戶模式修復(fù)系統(tǒng)故障的典型案例:

案例一:root 密碼忘記

在單用戶模式中,Linux 不需要 root 密碼 (Red Hat 系統(tǒng)不需要 root 密碼,但 SuSe 則需要,不同 Linux 系統(tǒng)稍有差別,本文以 Fedora Core 6 為例講解),這使更改 root 密碼非常容易。了解當系統(tǒng)引導(dǎo)進入多用戶模式失敗時,如何進入單用戶模式,非常重要。

1、 在系統(tǒng)啟動過程中,會出現(xiàn)開始界面,按任意鍵,進入 GRUB 菜單選項。

若希望以后無此提示,直接進入 GRUB 菜單選項,刪除配置文件 grub.conf 中 “hiddenmenu” 項即可。

2、 按 “e” 鍵編輯 GRUB 引導(dǎo)菜單選項,按 “e” 鍵后的 GRUB 屏幕。通過箭頭鍵下移到 kernel 行,并按 “e” 鍵,

3、在尾行光標處添加 single,按回車鍵返回前一個屏幕,按 “b” 鍵進行引導(dǎo),則系統(tǒng)自動進入單用戶模式,如果要改變 root 密碼,則執(zhí)行命令:sh-3.1# passwd root

更改成功后,執(zhí)行命令 exit 退出重啟即可。

大家可以在單用戶模式中去糾正阻止系統(tǒng)正常啟動的很多問題,比如:

1、 禁用可能中止系統(tǒng)運行的服務(wù)如禁用 Samba 服務(wù),則執(zhí)行:sh-3.1# chkconfig smb off 下次系統(tǒng)引導(dǎo)就不會啟動 Samba 服務(wù)了。

2、 更改系統(tǒng)缺省運行級如果 X Window 無法啟動或者出現(xiàn)故障,可以編輯 /etc/inittab 文件,采用文本方式登錄,更改 initdefault 引導(dǎo)級別為 3:id:3:initdefault:

案例二:硬盤扇區(qū)錯亂

在啟動過程中最容易遇到的問題就是硬盤可能有壞道或扇區(qū)錯亂 (數(shù)據(jù)損壞) 的情況,這種情況多由于異常斷電、不正常關(guān)機導(dǎo)致。此種問題發(fā)生,在系統(tǒng)啟動的時候,屏幕會顯示:

Press root password or ctrl+D:此時輸入 root 密碼系統(tǒng)自動進入單用戶模式,輸入 “fsck -y /dev/hda6”(fsck 為文件系統(tǒng)檢測修復(fù)命令,“-y” 設(shè)定檢測到錯誤自動修復(fù),/dev/hda6 為發(fā)生錯誤的硬盤分區(qū),請依據(jù)具體情況更改此參數(shù)),系統(tǒng)修復(fù)完成后,用命令 “reboot” 重新啟動即可。

案例三、GRUB 選項設(shè)置錯誤

“Error 15” 顯示系統(tǒng)無法找到 grub.conf 中指定的內(nèi)核。 GRUB 引導(dǎo)錯誤信息,我們觀察發(fā)現(xiàn)因為打字錯誤,內(nèi)核文件的 “vmlinuz” 打成了 “vmlinux”,所以系統(tǒng)無法找到內(nèi)核的可執(zhí)行文件。我們可以按任意鍵回到 GRUB 編輯界面,修改此錯誤,回車保存后按 “b” 鍵即可正常引導(dǎo),當然不要忘記進入系統(tǒng)后修改 grub.conf 文件中此處錯誤。這是很多初學(xué) Linux 的用戶在修改 GRUB 設(shè)置時很容易犯的錯誤,出現(xiàn)此黑屏提示時注意觀察報錯信息,即可針對性修復(fù)。

(二)GRUB 引導(dǎo)故障排除

我發(fā)現(xiàn)有時 Linux 啟動后會直接進入 GRUB 命令行界面 (只有 “grub>” 提示符),此時很多用戶就選擇了重新安裝 GRUB 甚至重新安裝系統(tǒng)。

其實一般而言此故障的原因最常見的有兩個:

  • 一是 GRUB 配置文件中選項設(shè)置錯誤;
  • 二是 GRUB 配置文件丟失 (還有少數(shù)原因,如內(nèi)核文件或鏡像文件損壞、丟失,/boot 目錄誤刪除等)。

如果是第一種情況,可以首先通過 GRUB 命令引導(dǎo)系統(tǒng)后修復(fù); 若是第二種情況,則要使用 Linux 救援模式修復(fù)了 (本文后續(xù)有描述)。

首先,我們需要了解 GRUB 啟動系統(tǒng)的引導(dǎo)過程,grub.conf 文件中主要的配置選項如下 (注意,GRUB 配置文件為 /boot/grub/grub.conf, /etc/grub.conf 只是此文件的軟鏈接):

  1. title Fedora Core (2.6.18-1.2798.fc6) 
  2.  
  3. root (hd0,0) 
  4.  
  5. kernel /boot/vmlinuz-2.6.18-1.2798.fc6 ro root=LABEL=/ rhgb quiet initrd /boot/initrd-2.6.18-1.2798.fc6.img  

其中

  1. “title” 段指定了 GRUB 引導(dǎo)的系統(tǒng):
  2. “root” 段指定了 /boot 分區(qū)所在的位置:
  3. “kernel” 段指定了內(nèi)核文件所在位置,內(nèi)核加載時權(quán)限屬性為只讀 (“ro”) 以及指定根分區(qū)所在位置 (root=LABEL=/);initrd 指定了鏡像文件所在位置。所以 GRUB 在引導(dǎo)時順序為首先加載 /boot 分區(qū),然后依次載入內(nèi)核與鏡像文件。

案例:“title Fedora Core (2.6.18-1.2798.fc6)” 段被誤刪除

此時,系統(tǒng)啟動后會自動進入 “GRUB>” 命令行,為排除故障我們可以依次做如下操作:

1、查找 /boot/grub/grub.conf 文件所在分區(qū) GRUB> find /boot/grub/grub.conf(hd0,0)

2、查看 grub.conf 文件錯誤 GRUB>cat (hd0,0)/boot/grub/grub.conf 建議系統(tǒng)安裝設(shè)置好后,要將 grub.conf 文件備份,如果有備份文件如 grub.conf.bak,則此時可以查看備份文件,與當前文件比較,發(fā)現(xiàn)錯誤:GRUB>cat (hd0,0)/boot/grub/grub.conf.bak

3、確認錯誤后,先通過命令行方式完成 GRUB 引導(dǎo),進入系統(tǒng)后再行修復(fù) grub.conf 文件錯誤:

1) 指定 /boot 分區(qū) root (hd0,0)

2) 指定內(nèi)核加載 kernel /boot/vmlinuz-2.6.18-1.2798.fc6 ro root=LABEL=/ rhgb quiet

3) 指定鏡像文件所在位置 initrd /boot/initrd-2.6.18-1.2798.fc6.img

提示:GRUB 支持 tab 鍵命令補全功能

4、從 /boot 分區(qū)啟動 boot (hd0,0)

命令行模式可以在 GRUB 菜單模式中通過按 “c” 鍵調(diào)用,也可以用于測試新編譯的內(nèi)核 (設(shè)置 kernel、initrd 引導(dǎo)新內(nèi)核及鏡像文件)。增加對 GRUB 引導(dǎo)以及 Linux 系統(tǒng)引導(dǎo)知識的了解將對此類故障排除大有幫助。

(三)Linux 救援模式應(yīng)用

當系統(tǒng)連單用戶模式都無法進入時或出現(xiàn) GRUB 命令行也不能解決的引導(dǎo)問題,我們就需要使用 Linux 救援模式來進行故障排除了。步驟如下:

1、將 Linux 安裝光盤 (如果使用 CD 光盤,則放入第一張引導(dǎo)光盤) 放入光驅(qū),設(shè)置固件 CMOS/BIOS 為光盤引導(dǎo),當 Linux 安裝畫面出現(xiàn)后,在 “boot:” 提示符后輸入 “linux rescue” 回車進入救援模式。(想了解救援模式詳細信息,還可以按 F5 鍵查看)

2、系統(tǒng)會檢測硬件,引導(dǎo)光盤上的 Linux 環(huán)境,依次提示你選擇救援模式下使用的語言 (建議選擇默認的英文即可,根據(jù)筆者測試,部分 Linux 系統(tǒng)選擇中文會出現(xiàn)亂碼); 鍵盤設(shè)置用默認的 “us” 就好; 網(wǎng)絡(luò)設(shè)置可以根據(jù)需要,大部分故障修復(fù)不需要網(wǎng)絡(luò)連接,可不進行此項設(shè)置,選擇 “No”。

3、接下來系統(tǒng)將試圖查找根分區(qū),出現(xiàn)掛載提示,設(shè)置默認在救援模式,硬盤的根分區(qū)將掛載到光盤 Linux 環(huán)境的 /mnt/sysimage 目錄下,默認選項 “continue” 表示掛載權(quán)限為讀寫:“Read-only” 為只讀,如果出現(xiàn)檢測失敗可以選擇 “skip” 跳過。此處,因為要對系統(tǒng)進行修復(fù),所以需要有讀寫權(quán)限,一般選擇默認選項 “continue”。

進入下一步后,系統(tǒng)提示執(zhí)行 “chroot /mnt/sysimage” 命令,可以將根目錄掛載到我們硬盤系統(tǒng)的根目錄中去。

案例一:雙系統(tǒng)啟動修復(fù)

當我們安裝雙系統(tǒng)環(huán)境,先安裝 Linux 再安裝 Windows; 或者已經(jīng)安裝好雙系統(tǒng)環(huán)境的 Windows 損壞,在重新安裝 Windows 后,保存 GRUB 的 MBR(Master Boot Record,主引導(dǎo)記錄) 會被 Windows 系統(tǒng)的自舉程序 NTLDR 所覆蓋,造成 Linux 系統(tǒng)無法引導(dǎo)。

1、如果要恢復(fù)雙系統(tǒng)引導(dǎo),首先用上述方法進入救援模式,執(zhí)行 chroot 命令如下:sh-3.1# chroot /mnt/sysimage

2、將根目錄切換到硬盤系統(tǒng)的根目錄中,然后執(zhí)行 grub-install 命令重新安裝 GRUB:sh-3.1# grub-install /dev/hda“/dev/hda” 為硬盤名稱,如使用 SCSI 硬盤或 Linux 安裝在第二塊 IDE 硬盤,此項設(shè)置要做相應(yīng)調(diào)整。

3、然后依次執(zhí)行 exit 命令,退出 chroot 模式及救援模式 (執(zhí)行兩次 exit 命令):sh-3.1# exit 系統(tǒng)重啟后,將恢復(fù) GRUB 引導(dǎo)的雙系統(tǒng)啟動。

案例二:系統(tǒng)配置文件丟失修復(fù)

系統(tǒng)在引導(dǎo)期間,很重要的一個過程就是 init 進程讀取其配置文件 /etc/inittab,啟動系統(tǒng)基本服務(wù)程序及默認運行級別的服務(wù)程序完成系統(tǒng)引導(dǎo),如果 /etc/inittab 誤刪除或修改錯誤,Linux 將無法正常啟動,如圖 7 所示。此時,只有通過救援模式才可以解決此類問題。

/etc/inittab 文件丟失引導(dǎo)錯誤示例

1、有備份文件的恢復(fù)辦法進入救援模式,執(zhí)行 chroot 命令后,如果有此文件的備份 (強烈建議系統(tǒng)中的重要數(shù)據(jù)目錄,如 /etc、/boot 等要進行備份),直接將備份文件拷貝回去,退出重啟即可。如果是配置文件修改錯誤,如比較典型的 /boot/grub/grub.conf 及 /etc/passwd 的文件修改錯誤,也可以直接修正恢復(fù)。假設(shè)有備份文件 /etc/inittab.bak,則在救援模式下執(zhí)行:sh-3.1# chroot /mnt/sysimage sh-3.1# cp /etc/inittab.bak /etc/inittab

2、沒有備份文件的恢復(fù)辦法如果一些配置文件丟失或軟件誤刪除,且無備份,可以通過重新安裝軟件包來恢復(fù),首先查找到 /etc/inittab 屬于哪一個 RPM 包 (即便文件丟失,因為存在 RPM 數(shù)據(jù)庫,一樣可以查找到結(jié)果):sh-3.1# chroot /mnt/sysimage sh-3.1# rpm -qf /etc/inittab initscripts-8.45.3-1

退出 chroot 模式:sh-3.1# exit

掛載存放 RPM 包的安裝光盤 (在救援模式下,光盤通常掛載在 /mnt/source 目錄下):sh-3.1# mount /dev/hdc /mnt/source

Fedora 系統(tǒng)的 RPM 包存放在光盤 Fedora/RPMS 目錄下,其他 Linux 存放位置大同小異,我在這里不一一列舉; 另外,因為要修復(fù)的硬盤系統(tǒng)的根目錄在 /mnt/sysimage 下,需要使用——root 選項指定其位置。覆蓋安裝 /etc/inittab 文件所在的 RPM 包:sh-3.1# rpm -ivh ——replacepkgs ——root /mnt/sysimage/mnt/source/Fedora/RPMS/

initscripts-8.45.3-1.i386.rpm 其中的 rpm 命令選項 “——replacepkgs” 表示覆蓋安裝,執(zhí)行完成后,即已經(jīng)恢復(fù)了此文件。

如果想只提取 RPM 包中的 /etc/inittab 文件進行恢復(fù),可以在進入救援模式后,執(zhí)行命令:sh-3.1# rpm2cpio /mnt/source/Fedora/RPMS/initscripts-8.45.3-1.i386.rpm | cpio -idv ./etc/inittab sh-3.1# cp etc/inittab /mnt/sysimage/etc

注意此命令執(zhí)行時不能將文件直接恢復(fù)至 / etc 目錄,只能提取到當前目錄下,且恢復(fù)的文件名稱所在路徑要寫完整的絕對路徑。提取文件成功后,將其復(fù)制到根分區(qū)所在的 /mnt/sysimage 目錄下相應(yīng)位置即可。

救援模式是維護 Linux 的有力武器,本文以上述兩個例子講解了它的應(yīng)用方法,希望能夠給讀者一點啟示。解決 Linux 系統(tǒng)啟動的故障,必須充分理解 Linux 的引導(dǎo)過程,才能夠?qū)收线M行有效的判斷和處理。 

責(zé)任編輯:龐桂玉 來源: talkwithtrend
相關(guān)推薦

2011-08-01 09:32:26

2023-09-02 21:39:47

2018-12-06 09:00:06

LinuxWindows雙系統(tǒng)

2019-08-19 14:51:56

Linux 系統(tǒng) 數(shù)據(jù)

2011-09-27 09:42:01

Linux系統(tǒng)

2019-11-06 10:00:21

Linux 技巧操作系統(tǒng)

2010-03-02 15:45:57

Linux系統(tǒng)啟動過程

2010-03-02 16:13:50

Linux系統(tǒng)啟動過程

2021-02-09 08:23:02

Linux操作系統(tǒng)

2013-01-30 15:07:59

Shell

2009-12-03 10:00:46

Linux系統(tǒng)啟動

2020-03-25 15:07:21

數(shù)據(jù)挖掘大數(shù)據(jù)思維

2016-01-21 10:35:35

AR技術(shù)

2022-02-21 16:16:24

災(zāi)難恢復(fù)解決方案備份

2011-08-19 10:13:05

iPhone開發(fā)

2013-07-25 14:50:03

2009-09-22 10:11:56

Windows 7啟動修復(fù)

2011-03-14 09:35:22

2018-06-19 16:25:40

編程語言Python爬蟲

2009-11-09 16:01:36

路由器操作系統(tǒng)
點贊
收藏

51CTO技術(shù)棧公眾號