系统启动和内核管理以及几个重要实验

来源:互联网 发布:农村金融机构数据 编辑:程序博客网 时间:2024/05/15 17:29

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、重启

默认级别:35

切换级别:init #

查看级别:runlevel    :  who  -r

/etc/rc.d/rc#.d中:

K开头的文件:数字越小,越先运行,数字越小的服务,通常为依赖到别的服务。

S开头的文件:数字越小,越先运行,数字越小的服务,通常为被依赖的服务。

Chkconfig命令:

查看服务:chkconfig --list

添加服务:chkconfig --add

删除:chkconfig --del

指定开启服务的级别:chkconfig --level #nameon

     指定关闭服务的级别:chkconfig --level #nameoff

       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   重启

启动成功

原创粉丝点击