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

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

启动成功

原创文章,作者:忠神通,如若转载,请注明出处:http://www.178linux.com/75825

(0)
忠神通忠神通
上一篇 2017-05-15 20:56
下一篇 2017-05-15 21:01

相关推荐

  • N25-第18周博客作业

    1、为LNMP架构添加memcached支持,并完成对缓存效果的测试报告; LNMP的安装过程不再赘述. # yum install -y memcached # cat /etc/sysconfig/memcached  PORT=”11211″   &nb…

    2017-05-21
  • 文本三剑客grep爵士与手下的血泪奋战

    文件查看命令: cat, tac,revcat [OPTION]… [FILE]…  -E: 显示行结束符$ -n: 对显示出的每一行进行编号 -A:显示所有控制符 -b: 非空行编号 -s:压缩连续的空行成一行 文件查看 分页查看文件内容more: 分页查看文件more [OPTIONS…] FILE…-d: 显示翻页及退出提示less:一页一页…

    Linux干货 2016-08-07
  • 马哥教育网络班22期+第1周课程练习

    问题1: 计算机组成如下:CPU、存储器、输入设备、输出设备1、中央处理器(Central Processing Unit,简称 CPU)。它主要由控制器、运算器等组成,并采用大规模集成电路工艺制成的芯片,又称微处理器芯片。   CPU又由运算器和控制器组成。1)运算器 运算器又称算术逻辑单元(Arithmetic Logic Unit简…

    Linux干货 2016-08-15
  • javascript快速入门

    标识符多了一个美元符号python中只有字母和下划线和数字,数字不能开头数据类型有number(整形和浮点型),boolean,string,null,undefined(声明未赋值),symbol(新引入),object类型(基本类型和特殊类型外的其他类型) 引入一个变量要先申明,var a,let b常量类型,声明时定义,python中不存在const …

    Linux干货 2018-01-15
  • DNS相关配置

    DNS基础概念: DNS全称为Domain Name System。它作为将域名和IP地址相互映射的得一个分布式数据库,能够使人更方便的访问互联网 DNS使用TCP和UDP得53号端口 BIND是DNS得实现方式之一 named是bind程序得运行的进程名 named进程的主要运行者是named用户,为了安全起见,它的程序也应该以named用户运行 配置正向…

    Linux干货 2017-05-30
  • N22-℡浮生.若夢 ╮第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 ~]# cp -r /etc/skel/ /home/tuser1 ~]# chmod -R 700 /home/tuser1 ~]#&nbsp…

    Linux干货 2016-09-19