CentOS6刪除/etc/fstab和/boot后恢復

CentOS6刪除/etc/fstab和/boot后恢復

背景:

Linux CentOS系統和啟動相關的文件都在/boot目錄下,如果我們將/boot目錄下所有的文件都刪除,然后在恢復系統,那以后在遇到系統啟動問題時就都可以解決了。在這基礎上,在將/etc/fstab文件刪除,這樣更加大了修復的難度,不過這都是可以修復的,這里就將介紹如何修復。

實驗環境:

Linux版本: CentOS 6.9

網絡環境:無網絡(如果有網絡可以直接從其他機器復制相關文件到機器上)

光盤:需要有CentOS6.9光盤(到時候需要用光盤進救援模式)

機器:VMware虛擬機

實驗:

如果是在虛擬機上做實驗,請先做好快照再做實驗,過程可能出現意外情況(盡管步驟和操作沒問題)。

第一步:先刪除/etc/fstab和/boot下的所有文件(可以移動到其他分區)

CentOS6刪除/etc/fstab和/boot后恢復

當做了第一步都重啟虛擬機,會出現一下情況:

CentOS6刪除/etc/fstab和/boot后恢復

第二步:重啟后直接進入到了grub引導程序,這時我們再重啟系統,進入到救援模式,這里就不介紹怎樣進救援模式,之前在一個博客(http://www.www58058.com/83078)里有詳細介紹如何進入救援模式。

在進入救援模式時,會和之前不一樣,因為我們刪除了/etc/fstab文件,所以系統無法掛載根和/boot分區

CentOS6刪除/etc/fstab和/boot后恢復

不過沒關系,直接點擊ok進入下一步就可以了,然后開啟一個shell

CentOS6刪除/etc/fstab和/boot后恢復

第三步:修復/etc/fstab

因為沒有/etc/fstab文件,系統無法幫我們掛載分區,所以需要先修復/etc/fstab文件,也就是手寫/etc/fstab文件,里面至少需要掛載根和/boot兩個分區。在寫文件之前我需要先知道哪個分區是根,哪個分區是/boot,可以用fidsk -l查看分區情況

CentOS6刪除/etc/fstab和/boot后恢復

CentOS6刪除/etc/fstab和/boot后恢復

這里不好判斷哪個分區是干什么的,但如果你很清楚的知道哪個分區是干什么的,那可以直接寫/etc/fstab文件了,現在我們先建一個目錄來臨時掛載分區,來看看/dev/sda2和/dev/sda3哪個是根。

CentOS6刪除/etc/fstab和/boot后恢復

已找到根、/boot和swap分區,現在可以放心的寫/etc/fstab文件了

/dev/sda1 /boot ext4 defaults 0 0
/dev/sda2 / ext4 defaults 0 0
/dev/sda5 swap swap defaults 0 0

寫/etc/fstab文件的格式:

分區或者設備名   掛載目錄  文件系統  defaults(設置為默認) 0 0(最后兩個最好設為0)

CentOS6刪除/etc/fstab和/boot后恢復

CentOS6刪除/etc/fstab和/boot后恢復

第四步:修復boot

然后重啟系統,在進入到救援模式,讓系統自動幫我們掛載根,在進行下一步修復

CentOS6刪除/etc/fstab和/boot后恢復

當我們進入救援模式時就可以切根了,切根命令:chroot /mnt/sysimage

CentOS6刪除/etc/fstab和/boot后恢復

這個時候就可以開始修復/boot目錄了,首先我們應該知道啟動系統需要的文件:Linux內核(版本得對)、gurb、grub.conf

首先先掛載光盤,然后安裝內核(也可以直接將光盤里的內核文件復制過去)

安裝內核命令:rpm -ivh /mnt/Package/kernel-版本號(可以tab鍵補全).rpm

CentOS6刪除/etc/fstab和/boot后恢復

內核生成成功后,現在安裝grub,命令:grub-install /dev/sda

CentOS6刪除/etc/fstab和/boot后恢復

安裝gurb需要點時間,要耐心等待,等完成后看看是否有gurb程序

CentOS6刪除/etc/fstab和/boot后恢復

到現在就缺個/boot/grub/grub.conf文件,這需要我們手寫

default 0 #默認選擇第一項
timeout 3 #選擇等待3秒,之后進入默認選項
title Linux-CentOS6.9 #菜單選項名字
kernel /vmlinuz-2.6.32-696.el6.x86_64 root=/dev/sda2 #內核版本和根的位置
initrd /initramfs-2.6.32-696.el6.x86_64.img #init

寫完這個后保存退出,然后重啟系統,看是否成功,在重啟前先用命令:sync  來確保已寫到磁盤保存

如果啟動還有什么問題,看看是不是哪個文件寫錯了,或者目錄名沒對,還有就是光盤系統版本是否和修復的系統一致。

原創文章,作者:657188918,如若轉載,請注明出處:http://www.www58058.com/85776

(0)
657188918657188918
上一篇 2017-08-31
下一篇 2017-09-01

相關推薦

  • 畢業即高薪只是別人家的好事嗎?

    1 畢業即高薪?運氣?夢想?還是噓頭?  同學們,你還在擔心畢業后不好找工作嗎,畢業即高薪只是別人家的好事嗎?馬哥linux又一名在校生學員畢業即20w+高薪名企,你還在等什么呢? 真的只是夢想么?還是只存在于別人家的公司? 越來越多的在校大學生憑著強烈的上進心踴躍的加入了馬哥linux的學習陣營,這名研究生同學在研究生畢業的同時也從馬哥linux…

    2015-09-06
  • 馬哥教育網絡班21期+第8周課程練習

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。 網橋:橋接器,是連接兩個局域網的一種存儲/轉發設備,它能將一個大的LAN分割為多個網段,或將兩個以上的LAN互聯為一個邏輯LAN,使LAN上的所有用戶都可訪問服務器 集線器:集線器的英文稱為“Hub”.集線器(hub)屬于純硬件網絡底層設備,基本上不具有類似于交換機的"…

    Linux干貨 2016-08-29
  • Linux文件管理

    Linux文件管理 Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 cd cd命令用來切換工作目錄至dirname。 其中dirName表示法可為絕對路徑或相對路徑。若目錄名稱省略,則變換至使用者的home directory(也就是剛login時所在的目錄)。另外,~也表示為home directory的意思,.則是表示目前所在的…

    2017-10-01
  • Linux 基礎以及相關基礎命令

    1.計算機的組成 計算機由5大部分組成,cpu(運算器,控制器)輸入單元,輸出單元,內存。  運算器:負責數據的運算  控制器:負責各主件之間的協調控制  輸入單元:指令的輸入  輸出單元:計算結果的輸出  內存:為cpu需要運算的數據提供存儲 2 linux 常見的發行版   Debian :ub…

    Linux干貨 2016-09-14
  • systemd及awk

    1、簡述systemd的新特性及unit常見類型分析,能夠實現編譯安裝的如nginx\apache實現通過systemd來管理
    2、描述awk命令用法及示例(至少3例)
    3、描述awk函數示例(至少3例)

    Linux干貨 2018-01-17
  • 基礎指令的使用篇3 Linux版

    / /boot /bin /sbin /lib.modules /lib64 /etc/redhat-release /etc/centos-release /home/zczx /mnt /media /misc /proc/meminfo /proc/cpuinfo /proc/partition /sya /opt /tmp /usr/local/ /…

    Linux干貨 2016-08-04
欧美性久久久久