2.救援模式修復mbr引導失效
有光盤的話,重新從光盤引導來修復mbr,進入救援模式,
選擇操作的語言,
重新引導,故障恢復
3.grub引導文件丟失
grub.conf文件解釋
grub無法引導
4.修復文件系統分區表
就可以正常編輯/etc/fstab文件了,init[3、5] 即可進入相應的終端界面了,
5.制作自己的linux(為了解啟動過程)
1 磁盤 分區創建
2 grub-install --root-diretory =/mnt/ /dev/sdb
3 創建grub菜單 (拷貝內核,驅動/boot/vm)
4 創建相應目錄,init進程
bin boot dev etc home lib proc sbin root sys tmp usr var
chmod o+t tmp
init 系統調用 ldd /sbin/init
cp /lib/libsepol.so.1 /mnt/sysroot/lib
5 inittab rc.sysinit
cp /bin/bash /mnt/sysroot/bin/
ldd /bin/bash 查看加載鏈接庫,並拷貝 www.2cto.com
mkdir etc/rc.d
cd rc.d
vim rc.sysinit
#! /bin/bash
/bin/bash
chmod a+x rc.sysinit 添加可執行權限
cp /bin/ls /mnt/sysroot/bin
查看加載的庫文件 ldd /bin/ls 拷貝庫文件 cp .
5.1添加硬盤
5.2為新添加的硬盤創建相應分區
5.3掛載、創建mbr/grub
5.4添加grub菜單
5.5 inittab及rc.sysinit
5.6添加應用
ls指令
[root@localhost ~]# cp /bin/ls /mnt/sysroot/bin/
[root@localhost ~]# ldd /bin/ls
linux-gate.so.1 => (0x00226000)
librt.so.1 => /lib/librt.so.1 (0x00900000)
libacl.so.1 => /lib/libacl.so.1 (0x0090b000)
libselinux.so.1 => /lib/libselinux.so.1 (0x00968000)
libc.so.6 => /lib/libc.so.6 (0x00770000)
libpthread.so.0 => /lib/libpthread.so.0 (0x008e7000)
/lib/ld-linux.so.2 (0x00752000)
libattr.so.1 => /lib/libattr.so.1 (0x00c4a000)
libdl.so.2 => /lib/libdl.so.2 (0x008e1000)
libsepol.so.1 => /lib/libsepol.so.1 (0x00920000)
[root@localhost ~]# cp /lib/libpthread.so.0 /mnt/sysroot/lib/
5.7添加開機背景
[root@localhost ~]# convert -resize 640x480! 1.jpg a.jpg //!指的是忽略圖片的原有比例,一定要加!不然圖片可能鋪滿全屏。 www.2cto.com
[root@localhost ~]# convert a.jpg -colors 14 -geometry 640x480 splash.xpm
[root@localhost ~]# gzip splash.xpm
[root@localhost ~]# cp splash.xpm.gz /mnt/boot/grub/
[root@localhost ~]# sync;sync;sync; 多次執行,使內存中數據寫入硬盤中
關機或掛起,
5.8測試
創建一個新的虛擬機運行環境,采用剛才創建的硬盤作為系統盤
開機界面如下圖,正常:
實驗結束。