Linux学习笔记(22) Linux启动管理

1. 系统运行级别

运行级别

含义

关机

1

单用户模式,可想象为windows的安全模式,主要用于系统修复

2

不完全的命令行模式,不含NFS服务

完全的命令行模式,就是标准字符界面

4

系统保留

图形模式

重启动

(1) 运行级别命令

runlevel #查看运行级别命令 N表示进入3前面的级别

init 运行级别 #改变运行级别命令

(2) 系统默认运行级别

在配置文件/etc/inittab中进行修改即可

id:3:initdefault: #系统开机后直接进入指定的运行级别

2. 启动流程

Linux学习笔记(22) Linux启动管理

(1) initramfs内存文件系统,位于/boot中

CentOS 6.x中使用initramfs内存文件系统取代了CentOS 5.x中的initrd RAM Disk。它们的作用类似,可以通过启动引导程序加载到内存中,然后加载启动过程中所需要的内核模块,比如USB、SATA、SCSI硬盘的驱动和LVM、RAID文件系统的驱动。

# 创建initramfs目录
[root@localhost initramfs]# mkdir /tmp/initramfs #拷贝
[root@localhost initramfs]# cp /boot/initramfs-2.6.-.el6.i686.img /tmp/initramfs/ #进入
[root@localhost initramfs]# cd /tmp/initramfs/ #查看文件类型
[root@localhost initramfs]# file initramfs-2.6.-.el6.i686.img #修改后缀
[root@localhost initramfs]# mv initramfs-2.6.-.el6.i686.img initramfs-2.6.-.el6.i686.img.gz #解压缩
[root@localhost initramfs]# gunzip initramfs-2.6.-.el6.i686.img.gz #查看文件类型 [root@localhost initramfs]# file initramfs-2.6.-.el6.i686.img #提取文件
[root@localhost initramfs]# cpio -idvcu < initramfs-2.6.-.el6.i686.img

(2) 调用/etc/init/rcS.conf配置文件

主要功能有两个:

先调用/etc/rc.d/rc.sysinit,然后由/etc/rc.d/rc.sysinit配置文件进行Linux系统的初始化。

然后再调用/ect/inittab,然后由/etc/inittab配置文件确定系统的默认运行级别。

(3) 调用/etc/rc.d/rc文件

运行级别参数传入/etc/rc.d/rc这个脚本之后,由于这个脚本文件按照不用的运行级别启动/etc/rc[0-6].d/目录中的相应的程序。

如:/etc/rc3.d/K??开头的文件(??是数字),会按照数字顺序依次关闭;/etc/rc3.d/S??开头的文件,会按照数字顺序依次启动。

3. 启动引导程序grub

(1) grub中分区表示

硬盘

分区

Linux中设备文件名

Grub中设备文件名

第一个SCSI硬盘

第一个主分区

/dev/sda1

hd(0,0)

第二个主分区

/dev/sda2

hd(0,1)

扩展分区

/dev/sda3

hd(0,2)

第一个逻辑分区

/dev/sda5

hd(0,4)

第二个SCSI硬盘

第一个主分区

/dev/sdb1

hd(1,0)

第二个主分区

/dev/sdb2

hd(1,1)

扩展分区

/dev/sdb3

hd(1,2)

第一个逻辑分区

/dev/sdb5

hd(1,4)

(2) grub配置文件

vi /boot/grub/grub.conf

default=0         默认启动第一个系统

timeout=5        等待时间,默认是5秒

splashimage=(hd0,0)/grub/splash.xpm.gz       指定grub启动时的背景图像文件的保存位置

hidemenu  隐藏菜单

title CentOS(…) title就是标题的意思

root (hd0,0)      是指启动程序的保存分区

kernel /vmlinuz-…. ro 定义内核加载时的选项

initrd /initramfs      指定了initramfs内存文件系统镜像文件的所在位置

(3) VMware中的Linux虚拟机的grub界面

启动时按任意键,可以进入GRUB界面

Linux学习笔记(22) Linux启动管理

按e键可进入编辑模式:

Linux学习笔记(22) Linux启动管理

4. grub加密与字符界面分辨率调整

(1) grub加密

#设置grub密码
[root@localhost ~]# grub-md5-crypt
Password:
Retype password:
$$C71lN$BHBoOHGIQJ0xYkgn0K9QX0 #将生成的密码写入grub配置文件中的整体设置处
[root@localhost ~]# vi /etc/grub.conf
.......
password --md5 $$C71lN$BHBoOHGIQJ0xYkgn0K9QX0
......

重启后,进入grub界面,可以看到需要输入密码才能进入grub编辑模式

Linux学习笔记(22) Linux启动管理

(2) 纯字符界面分辨率调整

#查看内核是否支持分辨率修改

grep "CONFIG_FRAMEBUFFER_CONSLE" /boot/config-2.6.32-279.el6.i686

Linux学习笔记(22) Linux启动管理

然后在grub配置文件中的kernel后加入vga=791即可调整。

5. 系统修复模式

(1) 单用户模式

启动单用户模式:在grub界面中修改kernel的选项,在grub命令行末尾加上1,然后启动即可进入单用户模式。

Linux学习笔记(22) Linux启动管理

单用户模式常见的错误修复:遗忘root密码和修改系统默认运行级别

(2) 光盘修复模式

如果忘记grub密码,可以通过光盘修复模式来进行修改。

如何进入光盘修复模式:

放入光盘:

Linux学习笔记(22) Linux启动管理

按F2进入BIOS,设置为光盘启动。按F10保存并启动,可以看到如下图:

Linux学习笔记(22) Linux启动管理

重要系统文件丢失,导致系统无法启动,如inittab。可以通过如下命令进行修复:

Linux学习笔记(22) Linux启动管理

(3) Linux的安全性

Linux学习笔记(22) Linux启动管理

上一篇:【Django】依赖auth.user的数据库迁移,以及admin用户非交互式创建


下一篇:Linux学习笔记之Linux计划任务Crontab