linux 学习15 16 启动管理,备份和恢复

第十五讲 启动管理

15. 1 CentOS 6.x 启动管理
//此处指6.3
15.1.1 系统运行级别
1.运行级别

运行级别     含 义
0     关机
1     单用户模式,可以想象为windows的安全模式,主要用于系统修复
//linux 有另外的安全模式
2     不完全的命令行模式,不含NFS服务  //NFS,linux之间文件共享
3     完全的命令行模式,就是标准字符界面 //就是我们当前使用的
4     系统保留
5     图形模式
6     重启动 

2、运行级别命令
[[email protected] ~]# runlevel
#查看运行级别命令
//N 3, 代表开机直接进入3. 两个数据代表之前和当前的级别
[[email protected] ~]# init 运行级别
#改变运行级别命令

3、系统默认运行级别
[[email protected] ~]# vim /etc/inittab
id:3:initdefault:
#系统开机后直接进入哪个运行级别
//init 进程所做的事
15.1.2 系统启动过程

启动流程图
//图中箭头画错了,太容易造成困惑了,就是很简单直接的图。

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

mkdir /tmp/initramfs
#建立测试目录
cp /boot/initramfs-2.6.32-279.el6.i686.img /tmp/initramfs/
#复制initramfs文件
cd /tmp/initramfs/
file initramfs-2.6.32-279.el6.i686.img
mv initramfs-2.6.32-279.el6.i686.img initramfs-2.6.32-279.el6.i686.img.gz
#修改文件的后缀名为.gz
gunzip initramfs-2.6.32-279.el6.i686.img.gz
#解压缩
file initramfs-2.6.32-279.el6.i686.img
cpio -ivcdu < initramfs-2.6.32-279.el6.i686.img
#解压缩

调用/etc/init/rcS.conf配置文件
?主要功能是两个:
?先调用/etc/rc.d/rc.sysinit,然后由/etc/rc.d/rc.sysinit配置文件进行Linux系统初始化。
?然后再调用/etc/inittab,然后由/etc/inittab配置文件确定系统的默认运行级别。 

由/etc/rc.d/rc.sysinit初始化
1、获得网络环境
2、挂载设备
3、开机启动画面Plymouth(取替了过往的 RHGB)
4、判断是否启用SELinux
5、显示于开机过程中的欢迎画面
6、初始化硬件
7、用户自定义模块的加载
8、配置内核的参数
9、设置主机名
10、同步存储器
11、设备映射器及相关的初始化
12、初始化软件磁盘阵列(RAID)
13、初始化 LVM 的文件系统功能
14、检验磁盘文件系统(fsck)
15、设置磁盘配额(quota)
16、重新以可读写模式挂载系统磁盘
17、更新quota(非必要)
18、启动系统虚拟随机数生成器
19、配置机器(非必要)
20、清除开机过程当中的临时文件
21、创建ICE目录
22、启动交换分区(swap)
23、将开机信息写入/var/log/dmesg文件中

调用/etc/rc.d/rc文件
?运行级别参数传入/etc/rc.d/rc这个脚本之后,由这个脚本文件按照不同的运行级别启动/etc/rc[0-6].d/目录中的相应的程序
?/etc/rc3.d/k??开头的文件(??是数字),会按照数字顺序依次关闭
?/etc/rc3.d/S??开头的文件(??是数字),会按照数字顺序依次启动 

15. 2  启动引导程序-Grub
15.2.1 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启动时的背景图像文件的保存位置的
?hiddenmenu 隐藏菜单 

?title CentOS (2.6.32-279.el6.i686) title就是标题的意思
?root (hd0,0) 是指启动程序的保存分区
?kernel /vmlinuz-2.6.32-279.el6.i686 ro root=UUID=b9a7a1a8-767f-4a87-8a2b-a535edb362c9 rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet 定义内核加载时的选项
?initrd /initramfs-2.6.32-279.el6.i686.img 指定了initramfs内存文件系统镜像文件的所在位置 

15.2.2 Grub加密与字符界面分辨率调整

1、grub加密
[[email protected] ~]# grub-md5-crypt
#生成加密密码串

[[email protected] ~]# vi /boot/grub/grub.conf
default=0
timeout=5
password --md5 $1$Y84LB1$8tMY2PibScmuOCc8z8U35/
#password选项放在整体设置处。
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
…省略部分内容…

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

色深     640×480     800×600     1024×768     1280×1024
8位     769     771     773     775
15位     784     787     790     793
16位     785     788     791     794
32位     786     789     792     795 

vi /boot/grub/grub.conf
kernel /vmlinuz-2.6.32-279.el6.i686 ro root=UUID=b9a7a1a8-767f-4a87-8a2b-a535edb362c9 rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet vga=791
15. 3系统修复模式
//2 没认真看,以后用到的时候再看
1、单用户模式

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

2、光盘修复模式

重要系统文件丢失,导致系统无法启动
bash-4.1# chroot /mnt/sysimage
#改变主目录
sh-4.1# cd /root
sh-4.1# rpm -qf /etc/inittab
#查询下/etc/inittab文件属于哪个包。
sh-4.1# mkdir /mnt/cdrom
#建立挂载点
sh-4.1# mount /dev/sr0 /mnt/cdrom
#挂载光盘

sh-4.1# rpm2cpio \
/mnt/cdrom/Packages/initscripts-8.45.3-1.i386.rpm \
| cpio -idv ./etc/inittab
#提取inittab文件到当前目录
sh-4.1# cp etc/inittab /etc/inittab
#复制inittab文件到指定位置

3、Linux的安全性
第十六讲 备份与恢复
16.1 备份概述
1、Linux系统需要备份的数据
?/root/目录:
?/home/目录:  //比如文件服务器 会需要备份此目标
?/var/spool/mail/目录:
?/etc/目录:
?其他目录: 如 /var/log/

安装服务的数据
?apache需要备份的数据
?配置文件
?网页主目录
?日志文件 

?mysql需要备份的数据
?源码包安装的mysql:/usr/local/mysql/data/
?RPM包安装的mysql:/var/lib/mysql/ 

2、备份策略
?完全备份:完全备份就是指把所有需要备份的数据全部备份,当然完全备份可以备份整块硬盘,整个分区或某个具体的目录 

增量备份

差异备份
16.2 dump和restore命令
//不想听了,需要时再看
1、dump命令
[[email protected] ~]# dump [选项] 备份之后的文件名 原文件或目录
选项:
-level: 就是我们说的0-9十个备份级别
-f 文件名: 指定备份之后的文件名
-u: 备份成功之后,把备份时间记录在/etc/dumpdates文件
-v: 显示备份过程中更多的输出信息
-j: 调用bzlib库压缩备份文件,其实就是把备份文件压缩 为.bz2格式,默认压缩等级是2
-W: 显示允许被dump的分区的备份等级及备份时间

备份分区
dump -0uj -f /root/boot.bak.bz2 /boot/
#备份命令。先执行一次完全备份,并压缩和更新备份时间
cat /etc/dumpdates
#查看备份时间文件
cp install.log /boot/
#复制日志文件到/boot分区
dump -1uj -f /root/boot.bak1.bz2 /boot/
#增量备份/boot分区,并压缩
dump –W
#查询分区的备份时间及备份级别的

备份文件或目录
dump -0j -f /root/etc.dump.bz2 /etc/
#完全备份/etc/目录,只能使用0级别进行完全备份,而不再支持增量备份

2、restore命令
[[email protected] ~]# restore [模式选项] [选项]
模式选项:restore命令常用的模式有以下四种,这四个模式不能混用。
-C:比较备份数据和实际数据的变化
-i: 进入交互模式,手工选择需要恢复的文件。
-t: 查看模式,用于查看备份文件中拥有哪些数据。
-r: 还原模式,用于数据还原。
选项:
-f: 指定备份文件的文件名

比较备份数据和实际数据的变化
mv /boot/vmlinuz-2.6.32-279.el6.i686 /boot/vmlinuz-2.6.32-279.el6.i686.bak
//一定要记得住改回来,否则下次不能正常启动
#把/boot目录中内核镜像文件改个名字
restore -C -f /root/boot.bak.bz2
#restore发现内核镜像文件丢失

查看模式
restore -t -f boot.bak.bz2

还原模式
#还原boot.bak.bz2分区备份
#先还原完全备份的数据
mkdir boot.test
cd boot.test/
restore -r -f /root/boot.bak.bz2
#解压缩
restore -r -f /root/boot.bak1.bz2
#恢复增量备份数据
#还原/etc/目录的备份etc.dump.bz2
restore -r -f etc.dump.bz2
#还原etc.dump.bz2备份

时间: 2024-10-15 20:09:34

linux 学习15 16 启动管理,备份和恢复的相关文章

《Linux学习并不难》用户管理(2):/etc/passwd文件详细介绍

9.2  <Linux学习并不难>用户管理(2):/etc/passwd文件详细介绍 /etc/passwd文件是Linux系统识别用户的一个重要文件,Linux系统中所有的用户都记录在该文件中.假设用户以账户zhangsan登录系统时,系统首先会检查/etc/passwd文件,看是否有zhangsan这个账户,然后确定用户zhangsan的UID,通过UID来确认用户的身份,如果存在则读取/etc/shadow文件中所对应的密码.如果密码核实无误则登录系统,读取用户的配置文件. 任何用户都可

Linux学习笔记一 磁盘管理常用命令

Linux学习笔记一 磁盘管理常用命令 Linux系统下,一切均是文件,磁盘是一种特殊的块设备文件. 常用的硬盘接口类型 并口:IDE ,SCSI 串口:SATA,SAS 磁盘设备文件设备文件的命令规则: IDE: 设备名为/dev/hda, /dev/hdb-.  (末尾的a ,b-代表不同的IDE硬盘) SCSI:设备名为/dev/sda, /dev/sdb-.(末尾的a,b-代表不用的SCSI硬盘 机械式硬盘: track: 磁道(盘面上由外向里划分成不同的磁道) cylinder: 柱面

《Linux学习并不难》用户管理(1):Linux用户账户分类

9.1  <Linux学习并不难>用户管理(1):Linux用户账户分类 用户账户在Linux系统中是分角色的,由于角色不同,每个用户的权限和所能执行的工作任务也不同.在实际的管理中,用户的角色是通过UID(用户ID号)来标识的,每个用户的UID都是不同的. 在Linux系统中有三大类用户,分别是root用户.系统用户和普通用户. 1.root用户 在Linux系统中,root用户UID为0,root用户的权限是最高的,普通用户无法执行的操作,root用户都能完成,所以也被称为超级用户.在Li

《Linux学习并不难》用户管理(3):/etc/shadow文件详细介绍

9.3  <Linux学习并不难>用户管理(3):/etc/shadow文件详细介绍 /etc/shadow文件是/etc/passwd的影子文件,这两个文件应该是对应互补的./etc/shadow文件的内容包括用户被加密的密码以及其它/etc/passwd文件不能包括的信息,比如用户账户的有效期限等. /etc/shadow文件只有root用可以读取和操作,文件的权限不能随便更改为其它用户可读,这样做是非常危险的.如果发现这个文件的权限变成了其它组群或用户可读了,要进行检查,以防系统安全问题

《Linux学习并不难》文件目录管理(9):mv命令文件和目录改名、移动文件和目录路径

7.9  <Linux学习并不难>文件目录管理(9):mv命令文件和目录改名.移动文件和目录路径 使用mv命令可以对文件和目录更改名称以及移动文件和目录的路径. 命令语法: mv [选项] [源文件|目录] [目标文件|目录] 命令中各选项的含义如表所示. 选项 选项含义 -i 覆盖前询问 -f 覆盖前不询问 -n 不覆盖已存在的文件 例:将/root/pic目录下所有的后缀名为".png"的文件移动到/usr/local/share/pic目录下. [[email pro

《Linux学习并不难》进程管理(4):杀死进程之kill命令

20.4  <Linux学习并不难>进程管理(4):杀死进程之kill命令 要关闭某个应用程序可以通过杀死其进程的方式实现,如果进程一时无法杀死,可以将其强制杀死. 使用kill命令可以杀死进程.在使用kill命令之前,需要得到要被杀死的进程的PID(进程号).用户可以使用ps命令获得进程的PID,然后用进程的PID作为kill命令的参数.当使用kill命令时,即使工作按期完成了,用户也得不到任何回馈信息.能确定一个进程被终止的惟一方法就是再使用ps命令来查看该进程的PID号或进程名是否依然存

第17期马哥Linux学习之rpm包管理功能全解

RPM包管理器最早是由Red Hat公司研发的一款Linux上的程序包管理器,文件包的后缀名为".rpm".目前是GNU/Linux下软件包资源最丰富的软件包类型之一. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rpm包命名格式: name-VERSION-release.arch.rpm 包的名字-版本号-发行号.架构平台.rpm VERSION:major.min

Linux自学笔记——mysql基础、备份和恢复、主从复制、MHA

RDBMS:关系型数据库管理系统 C/S:通过专有协议 关系模型:表(行,列),二维关系: 范式:第一范式.第二范式.第三范式(在之前的博客中已经做过说明) 关系运算: 选择      投影 数据库:表,索引,视图(虚表) SQL:Structure Query Language DDL,DML 编程接口: 存储过程 存储函数 触发器 事件调度器 过程式编程:选择.循坏 三层模型: 物理层  逻辑层  视图层 解决方案: Oracle, Sybase, Infomix, DB2 MySQL, M

Linux学习之RPM包管理

在linux中有人多的软件使用,比如我们使用的ifconfig,fdisk,btrfs文件系统等.可能这些软件在你原有的linux系统中并不存在,那么我们如何去使用这些工具呢.我们知道windows在需要软件的时候需要安装,当然对于linux系统一样需要安装.在linux下常用的安装工具我们使用的是rpm程序包(当然我们这边是针对CentOS而言),那么什么是rpm,如何安装rpm包以及使用rpm包做一些操作等,在下面的内容中将提到. 一.什么是RPM RPM全称为"RedHatPackage