|
|
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已! |
|
恭喜您是本站第 1730064
位訪客!
登入 | 註冊
|
|
|
|
發表者 |
討論內容 |
冷日 (冷日) |
發表時間:2005/7/21 9:32 |
- Webmaster

- 註冊日: 2008/2/19
- 來自:
- 發表數: 15773
|
- [分享]Linux無法登入系統時,如何進入單人使用模式?
Linux無法登入系統時,如何進入單人使用模式?
※適用作業系統:Red Hat Linux、Fedora系列
【問題】 如果Linux作業系統可以正常開機,檔案系統也可以正常掛載,但是在使用者登入的過程,卻無法登入系統。遇到這種情況,該如何進入單人模式,登入作業系統?
【解答】 如果能使用單人模式進入系統排除問題的話,代表你已經掛載了檔案系統了。所謂的單人模式(Single User Mode),就是將檔案系統進行掛載,不過這個時候網路功能尚未被啟動。如果你的系統已經正常開機,但無法登入,或者你已經掛載了系統上的檔案系統的話,就可以使用單人使用模式進行主機的救援。其實使用單人模式最多的情況,就是必須利用它來修改root的密碼。
STEP
1. 以Fedora Core 3為例,當Linux系統開機後,按下任何鍵,就可以進入到GRUB開機系統管理程式。 2. 按下鍵盤上的〔E〕鍵,編輯開機管理程式,以〔↑〕、〔↓〕選取有 「kernel 」開頭的那一行,再按下〔E〕鍵編輯那一行的內容。 3. 在該行的最後按下〔空白鍵〕,然後再輸入指令「single」,再按下〔Enter〕離開編輯模式。 4. 接下來會回到前一個GRUB開機管理程式的畫面,然後按下〔B〕。接下來開機就會進入單人使用模式,出現Shell命令的提示符號。 》使用LILO進入單人使用模式的步驟:
1. 出現LILO開機系統管理程式的畫面,然後按下〔Ctrl〕+〔X〕離開圖形介面,進入 boot提示符號)輸入指令即可。
|
|
|
|
冷日 (冷日) |
發表時間:2009/7/20 7:24 |
- Webmaster

- 註冊日: 2008/2/19
- 來自:
- 發表數: 15773
|
- [轉貼]GRUB & LILO 操作備忘
GRUB & LILO 操作備忘 GRUB, Grand UnifiedBootloader, 為 GNU 所開發設計的開機管理程式 LILO, Linux Loader, 係 Linux 傳統的開機管理程式 環境差異 | GRUB | LILO | 設定檔 | /boot/grub/menu.lst | /etc/lilo.conf | 設定檔修改後之套用變更 | 不需任何動作 | 執行 /sbin/lilo | 安裝開機選單至 MBR | /sbin/grub-install /dev/hda |
/sbin/lilo (在 lilo.conf 設定 boot=/dev/hda) |
檔頭基本設定 GRUB | LILO | default=0 timeout=5 hiddenmenu splashimage=(hd0,1)/boot/grub/splash.xpm.gz color cyan/blue white/blue | boot=/dev/hda map=/boot/map lba32 compact prompt default="Linux" timeout=50 message=/boot/message |
GRUB 自製開機畫面備忘:
LILO 檔頭參數備忘: - lba32 - 開啟 int 13h ext 呼叫存取位於 1024 磁柱 (cylinders) 以外的開機檔
- linear - 與 lba32 層級相同, 一般用於 SCSI 硬碟
- compact - 加快硬碟讀取速度
- prompt - 於 LILO 開機畫面出現 Boot: 提示項目, 以選擇開機選單與輸入開機命令
- timeout - 單位為 1/10 秒, 50 = 5 秒鐘
- message - 載入文字檔, 顯示於 LILO 開機畫面
選單內容 | GRUB | LILO | Linux | title Linux root (hd0,1) kernel /boot/vmlinuz ro root=/dev/hda1 quiet 其他參數 initrd /boot/initrd |
image=/boot/vmlinuz label=Linux root=/dev/hda2 initrd=/boot/initrd append="root=/dev/hda1 其他參數" read-only | Windows | title Windows XP rootnoverify (hd0,0) makeactive chainloader +1 boot | other=/dev/hda1 label=WindowsXP table=/dev/hda啟動位於非 hda 的 Windows 系統 other=/dev/hdb1 label=WindowsXP table=/dev/hdb boot-as=0x80 |
hdx,y → x=第 n 顆硬碟; y=第 n 個分割區 所以: hd0,0 = hda1; hd0,1 = hda2; hd1,0 = hdb1; hd1,1 = hdb2... 依此類推, SCSI 硬碟亦同 [其他參數] 可參考: /usr/src/linux/Documentation/kernel-parameters.txt (包裝於 kernel-source)
密碼保護 GRUB |
LILO | /sbin/grub GRUB> md5crypt或 /sbin/grub-md5-crypt 產生密碼後, 將 $1.... 密碼字串複製到 menu.lst 如下: title Linux password --md5 $1...
root(hd0,1) ... | vi /etc/lilo.confimage=/boot/vmlinuz label=Linux . . . password= your_password restricted
chown root:root /etc/lilo.conf chmod 700 /etc/lilo.conf lilo 密碼為明碼, 設定後 lilo.conf 最好只限 root 讀取 password: 每次開機選擇該 label 都需密碼 restricted: 只在 boot: 輸入額外參數時才需密碼 |
開機進入 Single User Mode GRUB: 開機選單出現後, 光棒置於 Linux 項目, 按 "e" 編輯內容, 於 kernel=... 最後加上 s (或 single), 最後按 "b" 進行開機 LILO: 出現 Boot: 提示訊息後, 輸入 Linux single (Linux 是 label 定義的 Linux 開機項目)
錯誤回復:
- 備份 MBR: dd if=/dev/hda of=/root/mbr_backup.bin bs=446 count=1
復原 MBR: dd if=/root/mbr_backup.bin of=/dev/hda bs=446 count=1 - Linux 裝在 /dev/hdb1, GRUB 寫入 /dev/hda, 但開機無法出現 GRUB 選單的處理:
Step 1 - 以 Linux Rescued CD 或其他 Linux LiveCD 開機 Step 2 - mount /dev/hdb1 /mnt && chroot /mnt Step 3 - grub-install /dev/hda --> 出現 /boot/grub/stage1 not read correctly 錯誤訊息 Step 4 - grub-install /dev/hdb --> 先寫入 /dev/hdb 的 MBR Step 5 - grub-install /dev/hda --> 此時就能寫入 /dev/hda 若在 Step 3 出現的錯誤訊息是 "找不到裝置 /dev/hda", 表示 chroot 後 /dev 是空的 此時只要 exit 回到原先光碟開機的環境, cp -a /dev/hda /dev/hdb1 /mnt/dev 即可再重新 chroot 並繼續其餘步驟 LILO, Linux Crash Rescue HOW-TO 中譯版 / LILO boot error codes - 恢復 Windows MBR 的各種方式
相關網頁: 原文出處:Jamyy's Weblog : GRUB & LILO 操作備忘
|
|
|
冷日 (冷日) |
發表時間:2010/5/14 10:11 |
- Webmaster

- 註冊日: 2008/2/19
- 來自:
- 發表數: 15773
|
- [轉貼]Linux 如何隱藏開機訊息
- 在 /boot/grub/menu.lst 檔案的kernel 行的最後加入
console=/dev/null || ONSOLE=/dev/null
可隱藏大部份的訊息. 如
kernel /vmlnuz-2.6.18-128 ro root=/dev/VolGroup00/LogVoloo rhgb quiet console=/dev/null || CONSOLE=/dev/null
而且連關機的訊息也都會隱藏不顯示出來.
但是開機時還是會顯示 grub 的訊息
並出現 boot menu 選項. (雖然 menu.lst 已經有 hiddenmenu 的命令)
接著出現 menu.lst 的內容如下:
Boot'CentOS (2.6.18-128.e15)',
root (hd0.0)
Filesystem type is ext2fs,partition fype 0x83
kernel /boot/vmlnuz-2.6.18-128 ro root=/dev/VolGroup00/LogVoloo rhgb quiet console=/dev/null || CONSOLE=/dev/null
[Linux-bzImage setup=0x1e00.size=0x1bbeb4]
initrd /boot/intrd-2.6.18-128.e15.img
[intrd-2.6.18-128.e15.img setup=0x1f358000 size=0x3177a6]
之後約等兩分鐘出現登入訊息
CentOS release 5.3 (Final)
Kernel 2.6.18-128.e15 on an i686
localhost login:_
[code]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
改良一:
把 menu.lst 的 timeout 改為
[code]
timeout=0
Boot menu 就不會出現.
嘗試二:
把 default runlevel 改為 5 仍然會出現 登入訊息再轉到 X-Window 畫面.
開機要執行的命令可放到 /etc/rc.d/rc.local 內
To change linux boot logo:
Step 1 : Edit/Create Logo
1. Find a logo with png format
2. Using GIMP to modify image size and colors
3. Convert the color (<224) with command line :
(pngtopnm my_log.png | pnmtoplainpnm > logo_linux_clut224.ppm)
4. Copy it into /usr/src/linux/drivers/video/logo
Step 2: Compile Kernel
1. cd /usr/src/linux
2. make menuconfig
3. Select Drivers->Video
4. Enable Framebuffer mode
5. Enable Video Mode selection
6. Select Drivers->Video->Logo Config
7. Enable Bootup Logo, and all submenus
8. Compile the kernel
Step 3: Test the kernel
1. Configure grub
2. Append parameter vga=0x318 (framebuffer)
2. Reboot
原文出處:Linux 如何隱藏開機訊息 - 歡迎舊雨新知繼續光臨指教 - Yahoo!奇摩部落格
|
|
|
|