Linux学习笔记(22) Linux启动管理
1. 系统运行级别
|
运行级别 |
含义 |
|
关机 |
|
|
1 |
单用户模式,可想象为windows的安全模式,主要用于系统修复 |
|
2 |
不完全的命令行模式,不含NFS服务 |
|
完全的命令行模式,就是标准字符界面 |
|
|
4 |
系统保留 |
|
图形模式 |
|
|
重启动 |
(1) 运行级别命令
runlevel #查看运行级别命令 N表示进入3前面的级别
init 运行级别 #改变运行级别命令
(2) 系统默认运行级别
在配置文件/etc/inittab中进行修改即可
id:3:initdefault: #系统开机后直接进入指定的运行级别
2. 启动流程

(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界面

按e键可进入编辑模式:

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编辑模式

(2) 纯字符界面分辨率调整
#查看内核是否支持分辨率修改
grep "CONFIG_FRAMEBUFFER_CONSLE" /boot/config-2.6.32-279.el6.i686

然后在grub配置文件中的kernel后加入vga=791即可调整。
5. 系统修复模式
(1) 单用户模式
启动单用户模式:在grub界面中修改kernel的选项,在grub命令行末尾加上1,然后启动即可进入单用户模式。

单用户模式常见的错误修复:遗忘root密码和修改系统默认运行级别
(2) 光盘修复模式
如果忘记grub密码,可以通过光盘修复模式来进行修改。
如何进入光盘修复模式:
放入光盘:

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

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

(3) Linux的安全性

Linux学习笔记(22) Linux启动管理的更多相关文章
- [转帖]Linux学习笔记之rpm包管理功能全解
Linux学习笔记之rpm包管理功能全解 https://www.cnblogs.com/JetpropelledSnake/p/11177277.html rpm 的管理命令 之前学习过 yum 的 ...
- linux学习笔记2 - linux常用命令
转载请标注原链接:http://www.cnblogs.com/xczyd/p/5543731.html 第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装lin ...
- Linux学习笔记之Linux启动级别
对于绝大多数Linux程序员来说,进入Linux系统后一般看到的是黑乎乎的界面(开发模式),因为系统如果启动选择开发模式,会减少启动时间,优化内存等.但是通常我们刚安装完Linux系统,然后进去以后是 ...
- linux学习笔记--程序与进程管理
.工作管理 1.前台程序放后台程序 命令后 加 & 2.任务执行时将前台任务任务放到后台中并[暂停] ctr + z 3.jobs 观察后台工作状态 及多少任务在执行,可以通过 help ...
- Linux学习笔记之Linux启动引导过程
早期时,启动一台计算机意味着要给计算机喂一条包含引导程序的纸带,或者手工使用前端面板地址/数据/控制开关来加载引导程序.尽管目前的计算机已经装备了很多工具来简化引导过程,但是这一切并没有对整个过程进行 ...
- Linux学习笔记之Linux相关知识
[想成为某一方面的大神,没有捷径可走,只能不断的记录.练习.总结.coding……] notes:主要从网上摘录了一些关于Linux的历史以及一些相关内容,以便对Linux系统有一定的了解.这不但可以 ...
- Linux学习笔记之Linux系统启动过程
Linux系统的启动过程可以分为五个阶段: 内核的引导 运行init 系统初始化 建立终端 用户登录系统 1.内核引导: 当计算机打开电源后,首先进行BIOS开机自检,按照BIOS中设置的启动设备(一 ...
- Linux学习笔记之Linux第一课-基本介绍
Linux简介 Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的. Linux是一套免费使用和自由传播的类Unix操作系统,是一个基 ...
- Linux学习笔记(21) Linux日志管理
1. 简介 (1) 日志服务 在CentOS 6.x中日志服务已经由rsyslogd取代了原先的syslogd服务.rsyslogd日志服务更加先进,功能更多.但是不论该服务的使用,还是日志文件的格式 ...
随机推荐
- jenkins集成ansible注意事项Failed to connect to the host via ssh.
在集成jenkins和ansible实现自动化部署时,root用户下执行ansible命令时可以正常运行.由于是通过jenkins用户去执行ansible命令,而jenkins用户却报如下异常: XX ...
- nyoj20_吝啬的国度_DFS
吝啬的国度 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 在一个吝啬的国度里有N个城市,这N个城市间只有N-1条路把这个N个城市连接起来.现在,Tom在第S号城市, ...
- Match:Period(POJ 1961)
Period 题目大意:给定一个字符串,要你找到前缀重复了多少次 思路,就是kmp的next数组的简单应用,不要修正next的距离就好了,直接就可以跳转了 PS:喝了点酒用递归实现除法和取余了...结 ...
- sql server 导出表结构
今天准备整理下手里面几个数据库,形成一个表结构文档,方便以后维护使用. 网上找到一个脚本还不错,小小的修改就满足了我的要求,执行完SQL脚本. 在结果就能看到数据库所有表的结构,这个时候只要全选,然后 ...
- [聊天框]让DIV的滚动条自动滚动到最底部 - 4种方法
要制作一个在线聊天的程序,在做最后的修饰时,需要对获得的信息即时滚动以保证用户总能看到最新消息. 聊天程序是基于AJAX设计的,没有用框架,消息容器是一个DIV,所以问题就在于如何控制DIV的滚动条. ...
- Hibernate 所有缓存机制详解
hibernate提供的一级缓存 hibernate是一个线程对应一个session,一个线程可以看成一个用户.也就是说session级缓存(一级缓存)只能给一个线程用,别的线程用不了,一级缓存就是和 ...
- 模拟赛1101d2
幸运数字(number)Time Limit:1000ms Memory Limit:64MB题目描述LYK 最近运气很差,例如在 NOIP 初赛中仅仅考了 90 分,刚刚卡进复赛,于是它决定使用一些 ...
- JS_ECMA基本语法中的几种封装的小函数-1
今天给大家介绍js ECMA中几个封装的小函数以及一些常用的函数小案例: 1,找重复的函数 <script> //在数组里面找重复: function findInArr(n,arr){ ...
- myeclipse相关
:) MyEclipse 10.7以后开始支持JDK1.7,修改settings下面的配置文件没卵用.
- XAML语言介绍
<Window x:Class="WpfApplication1.Window1" xmlns="http://schemas.microsoft.com/winf ...