天天看點

系統啟動方面實驗及感想

下面我來講下grub,grub在編輯的時候可以進入一種模式就是單使用者模式,就是當grub.conf檔案未寫入密碼時,普通使用者将直接忽略系統密碼進入系統,是以這可以稱為一個捷徑,也可以成為一個漏洞,當然linux的前輩們不可能連這個都想不到,他們也有自己的辦法,這就是我們grub的兩層加密機制,在標明登陸界面之前可以設定一次,啟動核心時也可以設定一次,密碼也可以采取加密算法,這樣就可以為我們系統提供雙層保險。好了說了那麼多,讓我麼你做一個簡單的練習。

破解root密碼,并為grub設定保護功能

這個問題再簡單不過了,在登陸標明核心界面按e進入grub的編輯界面,然後按‘b’登陸即‘boot’之意,這樣就破解了root的密碼了。

破壞本機grub stage1,而後在救援模式下修複之

下面我來講下stage1這個步驟是存在MBR前512位元組裡的,将之破壞的方式可以是這樣:dd if=/dev/zero of=/dev/sd# ,#表示grub所在磁盤,這裡假設我們已經将MBR進行破壞,我們隻需在進入RESCUE模式時重新安裝grub即可。grub-install --root-directory /dev/sd# 當然我這是切根後的安裝,不然救援模式下是沒有grub-install這個指令的。

删除vmlinuz和initramfs檔案,無法啟動,恢複之

下面我來講下這兩個檔案一個是核心檔案,一個是虛拟檔案系統檔案,都是grub的核心檔案,我們在編寫grub.conf這個配置檔案的時候其他的都可以不寫,但是這兩個檔案卻不能省略。initramfs 檔案可以在救援模式使用

下面我來講下幾種解決上述問題的方法。

1、有網絡時,因為一般公司裡的主機裡的核心檔案及檔案系統檔案的版本都是同一種,是以我們可以聯通上特定的主機,使用scp這個指令将缺失的檔案拷貝過來,前提是得有這個主機的密碼。

2、當沒有網絡時我們可以進入救援模式,安裝核心檔案中的/boot目錄,當然如果不嫌麻煩可以将核心全部重新安裝一遍,不過指令是這樣的

rpm -ivh ~kernel.... +路徑 --force,核心會自己判斷哪些缺失檔案,這樣也節省了不少時間。

3.這種方法就是挂載CD光牒檔案找到 isolinux目錄找到vmlinuz、initramfs檔案進行複制到、boot目錄即可。

好的如果你覺得這些還不夠,後面還有猛料哦

删除/etc/fstab和/boot 目錄的所有檔案,并恢複之

其實這個也不複雜,就是進入救援模式重新安裝核心,前提是得先挂載CD光牒

增加新硬碟,在其上制作能單獨運作kernel和bash的系統

6、 下面我這裡對上述問題再深化了一下,因為就是喜歡折騰,根本停不下來,原來我們的boot目錄是在根檔案系統下面,我們這裡新加一塊硬碟,讀入

echo '----' /sys/class/scic_host/host2/scan 将它進行重新分區,假設我們這邊的根檔案系統的磁盤是/dev/sda,我們這裡新加的磁盤是/dev/sdb,我們将之新加一個分區/dev/sdb1,格式化為ext3,,這裡我們将/boot檔案目錄下的檔案先已到/tmp目錄下,然後将它解挂載到/dev/sdb1,這裡我們進入救援模式,在輸入chroot =/mnt/sysimage後,我們輸入

系統啟動方面實驗及感想

捕獲1.PNG

注意這裡的安裝目錄寫原來的根檔案系統所在目錄,這裡我們容易混淆,接下來我們重新開機進入硬體啟動,我們輸入

系統啟動方面實驗及感想

捕獲2.PNG

然後我們繼續輸入

系統啟動方面實驗及感想

捕獲3.PNG

然後輸入

系統啟動方面實驗及感想

捕獲4.PNG

進入檔案系統後重新編寫/boot/grub/grub.conf檔案即可。

當然我這裡還有很多不足,我這裡未涉及邏輯卷系統和U盤/CD光牒啟動的制作,将來有機會會在這些案例中進行展示

 本文轉自 sjfbjs 51CTO部落格,原文連結:http://blog.51cto.com/11886896/1872353

繼續閱讀