Centos啟動流程:
1.加載BIOS的硬件信息,獲取第一個啟動設備
2.讀取第一個啟動設備MBR的引導加載程序(grub)的啟動信息
3.加載核心操作系統的核心信息,核心開始解壓縮,并嘗試驅動所有的硬件設備
4.核心執行init程序,并獲取默認的運行信息
5.init程序執行/etc/rc.d/rc.sysinit文件
6.啟動核心的外掛模塊
7.init執行運行的各個批處理文件(scripts)
8.init執行/etc/rc.d/rc.local
9.執行/bin/login程序,等待用戶登錄
10.登錄之后開始以Shell控制主機
GRUB的三個階段:
第一階段:MBR
第1.5階段:讓第一階段能夠識別boot分區
第二階段:放在/boot/grub/grub.conf
Init:
centos 6的第一個進程
它的配置文件:/etc/inittab /etc/init/*.conf
運行級別:七個級別
0、關機
1、單用戶模式
2、多用戶模式
3、多用戶模式(命令界面)
4、預留級別
5、多用戶模式(圖形界面)
6、重啟
默認級別:3和5
切換級別:init #
查看級別:runlevel : who -r
在/etc/rc.d/rc#.d中:
以K開頭的文件:數字越小,越先運行,數字越小的服務,通常為依賴到別的服務。
以S開頭的文件:數字越小,越先運行,數字越小的服務,通常為被依賴的服務。
Chkconfig命令:
查看服務:chkconfig –list
添加服務:chkconfig –add
刪除:chkconfig –del
指定開啟服務的級別:chkconfig –level # 【name】 on
指定關閉服務的級別:chkconfig –level # 【name】 off
Ntsysv命令:管理服務啟動狀態(交互式)
Service服務名 start 開啟服務
Service 服務名 stop 關閉服務
Service 服務名 restart 重啟服務
Service –status-all 顯示所有服務狀態
本章幾個重要的實驗:
一、Grub三個階段破壞后如何修復?
?grub的第一階段破壞修復:
#dd if=/dev/zero of=/dev/sda bs=1 count=446
#reboot
進入光盤引導
選擇rescue installed system救援模式
選擇shell進入shell界面
#chroot /mnt/sysimage/ 切根
#grub-install /dev/sda
#exit
#reboot
第一階段修復成功
grub的第1.5階段破壞修復:
#dd if=/dev/zero of=/dev/sda bs=1 count=2048 skip=512 seek=512
#reboot
進入光盤引導
選擇rescue installed system救援模式
選擇shell進入shell界面
#chroot /mnt/sysimage/ 切根
#grub
grub>root (hd0,0)
grub>setup (hd0)
grub>quit
#exit
#reboot
第1.5階段修復成功
grub第二階段破壞修復:Grub目錄下的文件全被破壞了如何修復?
#rm -rf /boot/grub/*
#reboot
進入光盤引導
選擇rescue installed system救援模式
選擇shell進入shell界面
#chroot /mnt/sysimage/ 切根
#grub-install /dev/sda
#vim grub.con
Default=0
Timeout=5
Title wanglingux
Kernel /vmlinuz root=/dev/sda2
Initrd /initramfs-2.6.32-642.el6.x86_64.img
#exit
#reboot
第二階段修復成功
二、Boot目錄下文件全被破壞如何修復?
#rm -rf /boot
#reboot
進入光盤引導
選擇rescue installed system救援模式
選擇shell進入shell界面
#chroot /mnt/sysimage/ 切根
#mount /dev/sr0 /mnt 掛載
#cp /mnt/isolinux/vmlinuz /boot/vmlinuz-`uname -r` 修復vmlinuz文件
#mkinitrd /boot/initramfs-`uname -r`.img`uname -r` 修復initramfs.img文件
#grub-install /dev/sda
#cd /boot/grub
#vim grub.con
Default=0
Timeout=5
Title wanglingux
Kernel /vmlinuz root=/dev/sda2
Initrd /initramfs-2.6.32-642.el6.x86_64.img
#exit
#reboot 重啟
啟動成功,修復完成
三、當/etc/fstab與/boot/下文件都被破壞如何修復?
#rm -rf /etc/fstab
#rm -rf /boot/*
#reboot
進入光盤引導
選擇rescue installed system救援模式
選擇shell進入shell界面
#mount /dev/sda1 /mnt/sda1 掛載
#mount /dev/sda2 /mnt/sda2
#mount /dev/sda3 /mnt/sda3
Vi /mnt/sda2/etc/fstab
/dev/sda1 /boot ext4 defaults 0 0
/dev/sda2 / ext4 defaults 0 0
/dev/sda3 /app ext4 defaults 0 0
/dev/sda5 swap swap defaults 0 0
#reboot (必須重啟)
進入光盤引導
選擇rescue installed system救援模式
選擇shell進入shell界面
#chroot /mnt/sysimage/ 切根
#grub-install /dev/sda
#mount /dev/sr0 /mnt/ 掛載
#Cd /boot/grub
#rpm -ivh /mnt/packages/kernel-2.6.32-642.el6.x86_64.rpm –force 裝下內核包
#vim /boot/grub/grub.conf
Default=0
Timeout=5
Title wanglingux
Kernel /vmlinuz root=/dev/sda2
Initrd /initramfs-2.6.32-642.el6.x86_64.img
#exit
#reboot 重啟
重啟成功,修復完成
四、內核編譯,以NTFS模塊為例,如何編譯內核?
下載內核文件傳到Linux上
#tar xf linux-4.10.15.tar.xz
插上U盤,由于U盤是NTFS格式而紅帽沒有NTFS模塊,所以要編譯內核
#lsblk
#mount /dev/sdc /mnt 掛載
#cd linux-4.10.15/
#cp /boot/config-3.10.0-514.el7.x86_64 (必須拷貝到解壓包下)
#yum -y groupinstall “Development Tools” 安裝包組
#make menuconfig 配置內核選項
選定DES/FAT/NT Filesystem support 空格選定
#cd linux-4.10.15/
#make -j 4 && (for i in {1..10};do echo -e ‘\a’; sleep 0.5;done) 編譯
#make modules_install 安裝模塊
#updatedb 更新下數據庫
#make install 裝相關內核文件
#reboot 重啟
啟動成功
原創文章,作者:忠神通,如若轉載,請注明出處:http://www.www58058.com/75825