GRUB引導進單使用者模式的三種方式

roninwei發表於2006-08-24
作為一個Linux系統管理員,你可能會把Linux 超級使用者密碼遺忘了,把/etc/inittab或/etc/rc.d/rc.sysinit之類檔案誤編輯,導致系統不能正常啟動的惱人錯誤?
  
  
  
  
  
  
  
  
  而為了解決以上問題,你就需要進到linux根檔案系統處於可讀寫狀態的單使用者模式下。
  
  下面介紹在GRUB引導下進入Linux單使用者模式的三種方式:
  
  (1) 硬體環境:
  
  intel P4 / 1G RAM / sata 80G
  
  (2) 軟體環境:
  
  1)Fedora Core 3(以下簡稱為FC3)和Windows2000 advance server雙系統
  
  2)LVM管理Linux分割槽
  
  3)/boot/grub/grub.conf檔案內容:
  
  # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,2)
  # kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00 # initrd /initrd-version.img #boot=/dev/sda default=1 timeout=1000 splashimage=(hd0,2)/grub/splash.xpm.gz hiddenmenu title Fedora Core (2.6.9-1.667)
  root (hd0,2)
  kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet initrd /initrd-2.6.9-1.667.img title windows 2000 adv rootnoverify (hd0,0)
  chainloader +1
  
  首先,啟動電腦,螢幕出現如下提示:
  
  Press any key to enter the menu Booting windows 2000 adv in 999 seconds…
  
  按任一鍵跳過計時,進入下一步:
  
  GNU GRUB version 0.95 (639K lower/103924K upper memory)
  Fedora Core (2.6.9-1.667)
  Windows 2000 adv
  
  下面是GRUB的提示:
  
  ‘e’ 在booting前編輯啟動命令列
  
  ‘a’ 在booting前編輯kernel的引數
  
  ‘c’進入grub命令列
由此按‘e’、a‘、’c‘三個不同的鍵,進入三種不同的操作:
  
  
  
  
  
  
  
  
  1.快速法:
  
  選擇Fedora Core (2.6.9-1.667)選單,
  
  按a鍵:
  
  grub append>ro root=/dev/VolGroup00/LogVol00 rhgb quiet
  
  修改成:
  
  grub append>ro root=/dev/VolGroup00/LogVol00 single quiet
  
  按ENTER鍵完成修改並booting進入Linux單使用者模式
  
  sh-3.00#
  
  2.簡便法:
  
  選擇Fedora Core (2.6.9-1.667)選單,
  
  按e鍵:
  
  root (hd0,2)
  
  kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet initrd /initrd-2.6.9-1.667.img選擇kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet命令列
  
  按e鍵:
  
  grub edit>kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
  
  修改成:
  
  grub edit>kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 single quiet
  
  按ENTER鍵完成修改
  
  按b鍵booting進入Linux單使用者模式
  
  sh-3.00#
  
  3.手動法:
  
  按c鍵進入grub命令列:
  
  (在grub命令列下按TAB鍵可得到grub命令幫助與grub命令的可能選項)
  
  grub>fstest (grub>filesystem tracing is now on grub>root (hd0,2) (
  
  (指定儲存有Linux 核心的分割槽為第一個硬碟的第三個分割槽)
  
  grub>filesystem type is ext2fs,partition type 0x83 grub>kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 single quiet (
  
  (指定核心檔案為/boot/vmlinuz-2.6.9-1.667,核心引數為ro—readonly, 根分割槽為/dev/VolGroup00/LogVol00,rhgb—圖形方式啟動,quiet—不輸出啟動資訊)
  
  grub>initrd /initrd-2.6.9-1.667.img (
  
  (在核心啟動前載入支援系統硬體裝置的核心模組——initrd映象檔案——/boot/initrd-2.6.9-1.667.img,並初始化RAM disk)
  
  grub>boot (
  
  如果系統的配置與指令碼檔案正確,以上三種方式在Booting command-list中都會出現:
  
  remounting root filesystem in read-write mode:[OK]
  
  表示此時linux單使用者模式下的根檔案系統處於可讀可寫狀態。
  
  如果系統的配置與指令碼檔案出現錯誤,linux單使用者模式下的根檔案系統進入“read-only file system”既只讀狀態,此時,打入:
  
  sh-3.00#mount –o remount rw –t ext3 /
  
  讓根檔案系統重新mount成可讀寫,你就可以自由編輯出現錯誤的系統檔案了。
  [@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7507082/viewspace-859855/,如需轉載,請註明出處,否則將追究法律責任。

相關文章