前言
此文章为本人自学Linux的学习笔记,仅供自己和小白学习参考,如有错误和问题,欢迎各位评论,一起进步。自学课程为韩顺平老师的《2021图解Linux全面升级》,笔记为参考韩老师的教学笔记综合个人情况进一步总结。特别注意:指令中的符号均为纯英文符号,在记录过程中可能误将中文符号记进去,为了方便阅读识别,指令中还不同数的多加了空格,学习时请读者自行识别。
目录
13.4.3 /etc/logrotate.conf 配置文件
八、定时任务调度
8.1 crond 任务调度
8.1.1 概述
任务调度:是指系统在某个时间执行的特定的命令或程序
8.1.2 基本语法
- crontab 选项
- service crond restart 重启任务调度
常用选项:
- -e 编辑crontab定时任务
- -l 查询crontab任务
- -r 删除当前用户所有的crontab任务
8.1.3 快速入门
- 设置任务调度文件:/etc/crontab
- 设置个人任务调度:crontab -e
编辑任务文件:
如:*/1 * * * * ls -l /etc/ > /tmp/to.txt
意思是每小时的每分钟执行ls -l /etc/ > /tmp/to.txt命令
8.1.4 五个占位符说明
8.1.5 特殊符号说明
8.1.6 应用实例
8.2 at定时任务
8.2.1 概述
- at命令是一次性定时计划任务,at的守护进程atd会以后台模式运行,检查作业队列来运行。
- 默认情况下,atd守护进程每60秒检查作业队列,有作业时,会检查作业运行时间,如果时间与当前时间匹配,则运行此作业。
- at命令是一次性定时计划任务,执行完一个任务后不再执行此任务了。
- 在使用at命令的时候,一定要保证atd进程的启动,相关指令:ps -ef | grep atd
- 示意图:
8.2.2 相关指令
- at 选项 时间 进入at任务编辑
- atq 查询at任务列表
- atrm 编号 删除编号的任务
- Ctrl + D (按两次)结束at命令的输入
常用选项:
- -m:当指定的任务被完成后,将给用户发送邮件,即使没有标准输出
- -I:atq的别名
- -d:atrm的别名
- -v:显示任务将被执行的时间
- -c:打印任务的内容到标准输出
- -V:显示版本信息
- -q <队列>:使用指定的队列
- -f <文件>:从指定文件读入任务而不是从标准输入读入
- -t <时间参数>:以时间参数的形式提交要运行的任务
8.2.3 at时间定义
at 指定时间的方法:
- 接受在当天的hh:mm(小时:分钟)式的时间指定。若该时间已过去,则放在第二天执行。eg:04:00
- 使用midnight,noon(中午),teatime(一般是下午四点)等比较模糊的词语来指定时间。
- 采用12小时计时制,即在时间后面加上am或pm来说明是上午还是下午。eg:12pm
- 指定命令执行的具体日期,指定格式为month day或mm/dd/yy(月/日/年),或dd.mm.yy(日.月.年),指定的日期必须跟在指定时间的后面。
- 使用相对计时法。指定格式为:now+count time-units,now是当前时间,time-units是时间单位,可以为:minutes,hours,days,weeks。count是时间的数量。eg:now + 5 minutes
- 直接使用today,tomorrow来指定完成命令的时间。
九、磁盘分区,挂载
9.1 Linux分区
9.1.1 原理介绍
- Linux来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构, Linux中每个分区都是用来组成整个文件系统的一部分。
- Linux采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录,且将一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一个目录下获得。
- 示意图:
9.1.2 硬盘说明
- Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘
- 对于IDE硬盘,驱动器标识符为hdx~,其中hd表明分区所在设备的类型,这里是指IDE硬盘。x为盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘),~代表分区,前四个分区用数字1到4表示,它们是主分区或拓展分区,从5开始就是逻辑分区。
- 对于SCSI硬盘则标识为sdx~,SCSI硬盘是用sd来表示分区所在的设备类型,其余则和IDE硬盘的表示方法一样。
9.1.3 查看所有设备挂载情况
- lsblk
- lsblk -f
9.2 分区、格式化和挂载
9.2.1 分区
fdisk /dev/sdb 开始对/sdb分区
m:显示命令列表
p:显示磁盘分区(同fdisk -l)
n:新增分区
d:删除分区
w:写入并退出
- 说明:开始分区后输入n,新增分区,然后选择p ,分区类型为主分区。两次回车默认剩余全部空间。最后输入w写入分区并退出,若不保存退出输入q.
9.2.2 格式化磁盘
分区指令:mkfs -t ext4 /dev/sdb1
其中ext4是分区类型
9.2.3 挂载与解除
挂载:将一个分区与另一个目录联系起来。
mount 设备名称 挂载目录
eg:mount /dev/sdb1 /newdisk
umount 设备名称 或者 挂载目录
eg:umount /dev/sdb1 或者 umount /newdisk
- 注意:用命令行挂载,重启后会失效!
- 永久挂载:通过修改/etc/fstab 实现挂载
- 修改完成后,执行mount -a 即可生效
9.3 磁盘情况查询
9.3.1 查询系统整体磁盘使用情况
指令:df -h
9.3.2 查询指定目录磁盘使用情况
du -h 目录 默认为当前目录
tree 目录 以树状显示目录结构
常用选项:
-s:指定目录占用大小汇总
-h:带计量单位
-a:含文件
--max-depth=数字:子目录深度
-c:列出明细的同时,增加汇总值
实例:
查询/opt目录的磁盘占用情况,深度为1
du -hac --max-depth=1 /opt
9.4 磁盘情况-工作实用指令
(1)统计/opt文件夹下文件的个数
ls -l /opt | grep "^-" | wc -l
(2)统计/opt文件夹下目录的个数
ls -l /opt | grep "^d" | wc -l
(3)统计/opt文件夹下文件的个数,包括子文件夹里的
ls -lR /opt | grep "^-" | wc -l
(4)统计/opt文件夹下目录的个数,包括子文件夹里的
ls -lR /opt | grep "^d" | wc -l
(5)以树状显示目录结构tree目录
十、网络配置
10.1 网络环境配置
10.1.1 指令
- ifconfig 查看网络配置
- ping ip 测试主机之间网络连通性
10.1.2 网络环境配置
- 第一种方式(自动获取):登陆后,通过界面的设置自动获取ip,特点:linux启动后会自动获取ip,缺点是每次自动获取的ip地址不一样
- 第二种方式(指定ip):
说明:直接修改配置文件来指定ip,并可以连接到外网
操作:编辑 /etc/sysconfig/network-scripts/ifcfg-ens33
ifcfg-ens33 文件说明:
TYPE="Ethernet" #网卡类型(通常是Ethemet以太网)
PROXY_METHOD="none" #代理方式:为关闭状态
BROWSER_ONLY="no" #只是浏览器:否
BOOTPROTO="static" #网卡的引导协议【static:静态IP dhcp:动态IP none:不指定,不指定容易出现各种各样的网络受限】
DEFROUTE="yes" #默认路由
IPV4_FAILURE_FATAL="no" #是否开启IPV4致命错误检测
IPV6INIT="yes" #IPV6是否自动初始化:是(现在还未用到IPV6,不会有任何影响)
IPV6_AUTOCONF="yes" #IPV6是否自动配置:是(现在还未用到IPV6,不会有任何影响)
IPV6_DEFROUTE="yes" #IPV6是否可以为默认路由:是(现在还未用到IPV6,不会有任何影响)
IPV6_FAILURE_FATAL="no" #是否开启IPV6致命错误检测
IPV6_ADDR_GEN_MODE="stable-privacy" #IPV6地址生成模型
NAME="ens33" #网卡物理设备名称
UUID="ab60d501-535b-49f5-a76b-3336a4120f64"#通用唯一识别码,每一个网卡都会有,不能重复,否则两台linux机器只有一台可上网
DEVICE="ens33" #网卡设备名称,必须和‘NAME’值一样
ONBOOT="yes" #是否开机启动,要想网卡开机就启动或通过 `systemctl restart network`控制网卡,必须设置为 `yes`
IPADDR=192.168.137.129 # 本机IP
NETMASK=255.255.255.0 #子网掩码
GATEWAY=192.168.137.2 #默认网关
DNS1=8.8.8.8 #域名解析器
DNS2=8.8.8.5 #域名解析器
ZONE=public#
service network restart 重启网络服务生效
10.2 设置主机名和hosts映射
hostname 查看主机名
- 修改主机名:修改/etc/hostname后重启生效
- 在/etc/hosts 文件指定主机名映射:ip 名字
10.3 主机名解析过程
10.3.1 Hosts 是什么
一个文本文件,用来记录IP和Hostname(主机名)的映射关系
10.3.2 DNS是什么
DNS就是Domain Name System的缩写,翻译过来就是域名系统,是互联网上作为域名和IP地址相互映射的一个分布式数据库
10.3.3 解析过程
(1)浏览器先检查浏览器缓存中有没有该域名解析P地址,有就先调用这个IP完成解析;如果没有,就检查DNS解析器缓存,如果有直接返回IP完成解析。这两个缓存,可以理解为本地解析器缓存
(2)一般来说,当电脑第一次成功访问某一网站后,在一定时间内,浏览器或操作系统会缓存他的IP地址(DNS解析记录),如在cmd窗口中输入
ipconfig /displaydns DNS域名解析缓存
ipconfig /flushdns 清理DNS缓存
(3)如果本地解析器缓存没有找到对应映射,检查系统中hosts文件中有没有配置对应的域名IP映射,如果有,则完成解析并返回。
(4)如果本地DNS解析器缓存 和 hosts文件中均没有找到对应的IP,则到域名服务DNS进行解析域
(5)示意图:
十一、进程管理
11.1 基本介绍
- 在Linux中,每个执行的程序都被称为一个进程。每一个进程都分配一个ID号(pid)。
- 每个进程都可能以两种方式存在的。前台与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
- 一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。
11.2 显示系统执行的进程
11.2.1 ps命令基本介绍
ps命令是用来查看目前系统中有哪些正在执行,以及它们执行的状况。
ps 选项 查看进程列表
11.2.2 常用选项
- -a 显示当前终端的所有进程信息
- -u 以用户的格式显示进程信息
- -x 显示后台进程运行的参数
- -e 显示所有进程
- -f 全格式
11.2.3 System V页面介绍(ps -aux)
- USER: 用户名
- PID:进程号
- %CPU:进程占用CPU百分比
- %MEM:进程占用物理内存的百分比
- VSZ:进程占用的虚拟内存大小(单位:KB)
- RSS:进程占用的物理内存大小(单位:KB)
- TTY:终端名称,缩写
- STAT:进程状态,其中S-睡眠,s-表示该进程是会话的先导进程,N-表示进程拥有比普通优先级更低的优先级,R-正在运行,D-短期等待,Z-僵死进程,T-被跟踪或者被停止等等
- START:进程的启动时间
- TIME:进程使用CPU的总时间
- COMMAND:启动进程所用的命令和参数,如果过长会被截断显示
11.2.4 BSD页面介绍(ps -ef)
- UID:用户ID
- PID:进程ID
- PPID:父进程ID
- C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高。
- STIME:进程启动的时间
- TTY:完整的终端名称
- TIME:进程在CPU运行的时间、
- CMD:启动进程所用的命令和参数
11.3 终止进程命令kill和killall
11.3.1 基本语法
kill 选项 进程号 通过进程号终止进程
killall 进程名称 通过进程名称终止进程,也支持通配符
11.3.2 常用选项
- -9:强制终止进程
11.4 查看进程树pstree
11.4.1 基本语法
pstree 选项 查看进程树
11.4.2 常用选项
- -p:显示进程的PID
- -u:显示进程的所属用户
11.5 服务(service)管理
11.5.1 介绍
服务(service)本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysqld , sshd防火墙等),因此我们又称为守护讲程。
11.5.2 service管理指令
service 服务名 start | stop | restart | reload | status
在CentOS7.0后,很多服务不再使用service,而是用systemctl
service指令管理的服务在/etc/init.d 查看
11.5.3 chkconfig指令
- 通过chkconfig指令可以给服务的各个运行级别设置自启动或关闭
- chkconfig指令管理的服务可以在/etc/init.d查看
- 注意:Centos7.0后,很多服务使用systemctl管理。
- 使用chkconfig重新设置服务自启动或关闭后,需重启机器生效
chkconfig --list 查看服务
chkconfig 服务名 --list
chkconfig --level 数字 服务名 on/off 设置自启动/关闭
11.5.4 systemctl管理指令
systemctl start | stop | restart | status 服务名
systemctl指令管理的服务在 /usr/lib/systemd/system 查看
11.5.5 systemctl设置服务的自启动状态
systemctl list-unit-files 查看服务的开机启动状态
systemctl enable/disable 服务名 设置/关闭服务开机启动
systemctl is-enabled 服务名 查询服务是否是自启动的
11.5.6 firewall指令
firewall-cmd --permanent --add-port=端口号/协议 开放端口
firewall-cmd --permanent --remove-port=端口号/协议 关闭端口
firewall-cmd --reload 重载防火墙服务(开放,关闭重启才生效)
firewall-cmd --query-port=端口/协议 查看端口是否开放
11.6 动态监控进程top
11.6.1 指令
top 选项
11.6.2 常用选项
-d:指定top命令每隔几秒更新,默认为3秒
-i:使top不显示任何闲置或僵死进程
-p:通过指定监控进程ID来仅仅监控某个进程的状态
11.6.3 交互操作说明
u :监控某个命令的进程
k:结束某个进程
11.7 监控网络状态
11.7.1 查看系统网络情况netstat
netstat 选项
11.7.2 常用选项
-an:按一定顺序排列输出
-p:显示哪个进程在调用
十二、rpm与yum
12.1 rpm包的管理
12.1.1 介绍
- rpm用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.rpm拓展名的文件。RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,类似windows的setup.exe,这一文件格式名称虽然打上了RedHat的标志,但理念是通用的。
- Linux的分发版本都有采用(suse,redhat,centos等等),可以算是公认的行业标准了。
12.1.2 基本指令
rpm -qa 查看已安装的所有rpm软件包
rpm -qa | grep xxx
rpm -q 软件包名 查询软件包是否安装
rpm -qi 软件包名 查询软件包信息
rpm -ql 软件包名 查询软件包中的文件
rpm -qf 文件全路径名 查询文件所属的软件包
rpm -e 软件包名 卸载rpm包
rpm -ivh rpm包全路径名称 安装rpm包(i=install安装,v=verbose提示,h=hash进度条)
注意:
- 如果要卸载的软件包被其他软件包依赖,卸载时会产生错误信息,如果要强制删除可以加上参数--nodeps,删除后可能依赖该包的程序无法运行
12.2 yum
12.2.1 介绍
yum是一个Shell前端软件包管理器。基于rpm包管理,能够从指定的服务器自动下载rpm包并安装,可以自动处理依赖关系,并且一次安装所有依赖的软件包。
12.2.2 基本语法
yum list | grep xxx 查询yum服务器是否有需要安装的软件
yum install xxx 下载安装指定的yum包
rpm -e xxx 卸载xxx
十三、日志管理
13.1 基本介绍
- 日志文件是重要的系统信息文件,其中记录了许多重要的系统事件,包括用户的登录信息、系统的启动信息、系统的安全信息、邮件相关信息、各种服务相关信息等。
- 日志对于安全来说也很重要,它记录了系统每天发生的各种事情,通过日志来检查错误发生的原因,或者受到攻击时攻击者留下的痕迹。
- 可以这样理解日志是用来记录重大事件的工具。
13.2 系统常用的日志
- /var/log/ 目录就是系统日志文件的保存位置
- 系统常用的日志
13.3 日志管理服务rsyslogd
CentOS7.6日志服务是rsyslogd,CentOS6日志服务是syslogd。rsyslogd的使用、日志文件的格式,和syslogd服务兼容的。
13.3.1 基本语法
ps aux | grep rsyslog | grep -v grep 查询rsyslogd服务是否启动
systemctl list-unit-files 查询rsyslogd服务的自启动的状态
13.3.2 日志配置文件介绍
配置文件:/etc/rsyslog.conf
介绍:
文件中格式为 *.*
第一个*代表日志类型,第二个*代表日志级别
- 日志类型
*:所有
auth:pam产生的日志
authpriv:ssh、ftp等登录信息的验证信息
corn:时间任务相关
kern:内核
lpr:打印
mail:邮件
mark(syslog)-rsyslog:服务内部的信息,时间标识
news:新闻组
user:用户程序产生的相关信息
uucp:unix to nuix copy主机之间的相关通信
local 1-7:自定义的日志设备
- 日志级别
*:所有
none:什么都不记录
debug:有调试信息的,日志通信最多
info:一般信息日志,最常用
notice:最具有重要性的普通条件的信息
warning:警告级别
err:错误级别,阻止某个功能或者模块不能正常工作的信息
crit:严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert:需要立刻修改的信息
emerg:内核崩溃等重要信息
注意:从上到下,级别从低到高,记录信息越来越少
13.3.3 添加日志文件
13.3.4 日志记录的内容
- 事件产生的时间
- 产生事件的服务器的主机名
- 产生事件的服务名或程序名
- 事件的具体信息
13.4 日志轮替
13.4.1 基本介绍
日志轮替就是把旧的日志文件移动并改名,同时建立新的空日志文件,当旧日志文件超出保存的范围之后,就会进行删除。
13.4.2 日志轮替文件命名
- CentOS7使用logrotate进行日志轮替管理,要想改变日志轮替文件名字,通过/etc/logrotate.conf配置文件中”dateext“参数。
- 如果配置文件中有”dateext“参数,那么日志会用日期来作为日志文件的后缀,例如”secure-20201010”。这样日志文件名不会重叠,也就不需要日志文件的改名,只需要指定保存日志的个数,删除多余的日志文件即可。
- 如果配置文件中没有“dateext”参数,日志文件就需要进行改名了。当第一次进行日志轮替时,当前的“secure”日志会自动改名为“’secure.1”,然后新建“secure”日志,用来保存新的日志。当第二次进行日志轮替时,“’secure.1”会自动改名为“’secure.0”,当前的“’secure”日志会自动改名为“’secure.1”,然后也会新建“’secure”日志,用来保存新的日志,以此类推。
13.4.3 /etc/logrotate.conf 配置文件
- 说明
# rotate log files weekly 每周对日志文件进行一次轮替
weekly
每周对日志文件进行一次轮替
# keep 4 weeks worth of backlogs
rotate 4
共保存4份日志文件,当红建立新的时,超过四份的部分被删除
# create new (empty) log files after rotating old ones
create
创建新的空的日志文件,在日志轮替后
# use date as a suffix of the rotated file
dateext
使用日期作为日志轮替文件的后缀
# uncomment this if you want your log files compressed
日志文件是否压缩。如果取消注释,则日志会在转储的同时进行压缩
#compress
# RPM packages drop log rotation information into this directory
include /etc/logrotate.d
包含/etc/logrotate.d目录中所有的子配置文件。也就是说会把这个目录中的所有子配置文件读取进来
下面是单独设置,优先级更高
# no packages own wtmp and btmp -- we'll rotate them here
/var/log/wtmp {
monthly #每月对日志文件进行一次轮替
create 0664 root utmp #建立新的日志文件,权限是0664,所有者是root,所属组是utmp
minsize 1M #日志文件最小轮替大小为1MB,文化超过1MB才会轮替,否则时间达到一个月也不进行日志轮替
rotate 1 #仅保留一个日志备份。也就是只有wtmp和twmp.1日志保留
}
/var/log/btmp {
missingok #如果日志不存在,则忽略该日志的警告信息
monthly
create 0600 root utmp
rotate 1
}
# system-specific logs may be also be configured here.
- 配置文件参数说明
daily:日志轮替在周期是每天
weekly:日志轮替在周期是每周
monthly:日志轮替在周期是每月
rotate 数字:保存的日志文件个数,0指没有备份
compress:日志轮替时,旧的日志惊醒压缩
create mode owner group:建立新日志,同时指定新日志的权限与所有者和所属组
mail address:当日志轮替时,输出内容通过邮件发送到指定的邮件地址
missingok:如果日志不存在,则忽略该日志的警告信息
notifempty:如果日志为空文件,则不进行日志轮替
minsize 大小:日志文件轮替大小的最小值,否则时间达到也不进行日志轮替
seze 大小:日志只有大于指定大小才进行轮替,而不是按照时间轮替
dateext:使用日期作为日志轮替文件的后缀
sharedscripts:在此关键字之后的脚本只执行一次
preotate/endscript:在日志轮替之前执行脚本命令
postrotate/endscript:在日志轮替之后执行脚本命令
13.4.4 添加日志轮替文件
- 第一种方法是直接在/etc/logrotate.conf配置文件中写入该日志的轮替策略
- 第二种方法是在/etcl/ogrotate.d/目录中新建立该日志的轮替文件,在该轮替文件中写入正确的轮替策略,因为该目录中的文件都会被“include”到主配置文件中,所以也可以把日志加入轮替。
- 推荐使用第二种方法,因为系统中需要轮替的日志非常多,如果全都直接写入/etc/logrotate.conf配置文件,那么这个文件的可管理性就会非常差,不利于此文件的维护。
13.4.5 日志轮替机制
日志轮替之所以可以在指定的时间备份日志,是依赖系统定时任务。在letclcron.daily/目录,就会发现这个目录中是有logrotate文件(可执行),logrotate通过这个文件依赖定时任务执行的。
13.5 查看内存日志
journalctl 查看全部内存日志
journalctl -n 3 查看最新3条
journalctl --since 19:00 --until 19:10:10 查看时间段内的日志(可加日期)
journalctl -p err 报错日志
journalctl -o verbose 日志详细内容
journalctl_PID=1245 _COMM=sshd 查看包含这些参数的日志(在详细日志查看)
或者journalctl | grep sshd
十四、内核升级
uname -a 查看当前的版本内核
yum info kernel -q 检测内核版本,显示可以升级的内核
yum update kernel 升级内核
yum list kernel -q 查看已安装的内核
十五、备份与恢复
15.1 基本介绍
linux的备份和恢复很简单,有两种方式:
- 把需要的文件(或者分区)用TAR打包就行,下次需要恢复的时候,再解压开覆盖即可
- 使用dump和restore命令
15.2 安装dump和restore
yum -y install dump
yum -y install restore
15.3 使用dump完成备份
15.3.1 基本介绍
dump支持分卷和增量备份(增量备份:备份上次备份后,修改/增加过的文件,也称差异备份)。
15.3.2 基本语法
dump -数字cu -f 备份后文件名 -T 日期 目录或文件系统
dump 选项
常用选项:
-数字:0-9:0为最完整备份,会备份所有文件。若指定0以上的层级,则备份至上一次备份以者修改或新增的文件,到9后,可以再次轮替。
-c:创建新的归档文件,并将由一个或多个文件参数所指定的内容写入归档文件的开头。
-f :备份后的文件名:指定开始备份的时间与日期
-j:调用bzlib 库压缩备份文件,也就是将备份后的文件压缩成bz2格式,让文件更小
-T 日期:指定开始备份的时间与日期
-u:备份完毕后,在/etc/dumpdares 中记录备份的文件系统,层级,日期与时间等。
-t:指定文件名,若该文件已存在备份文件中,则列出名称
-W:显示需要备份的文件及其最后一次备份的层级,时间,日期。
-w:与-W类似,但仅显示需要备份的文件。
15.3.3 dump应用案例
- dump应用案例1
将/boot分区所有内容备份到/opt/boot.bak0.bz2文件中,备份层级为“0”
dump -0uj -f /opt/boot.bak0.bz2 /boot
- dump应用案例2
在/boot 目录下增加新文件,备份层级为“1”(只备份上次使用层次“0”备份后发生过改变的数据),注意比较看看这次生成的备份文件boot1.bak有多大
dump -1uj -f /opt/boot.bak1.bz2 /boot
提醒:通过dump命令在配合crontab可以实现无人值守备份
15.3.4 dump -W
作用:显示需要备份的文件及其最后一次备份的层级,时间,日期
15.3.5 查看备份时间文件
cat /etc/dtmpdates
15.3.6 dump备份文件或目录
前面我们在备份分区时,是可以支持增量备份的,如果备份文件或者目录,不再支持增量备份,即只能使用0级别备份
eg:使用dump备份/etc整个目录
dump -0j -f /opt/etc.bak.bz2 /etc/
#下面这条语句会报错,提示DUMP: Only level 0 dumps are allowed on a subdirectory
dump -1j -f /opt/etc.bak.bz2 /etc/
15.4 使用restore完成恢复
15.4.1 基本介绍
restore命令用来恢复已备份的文件,可以从dumo生成的备份文件中恢复源文件
15.4.2 restore基本语法
restore 模式选择 选项
说明下面四个模式,不能混用,在一次命令中,只能指定一种。
-C:使用对比模式,将备份的文件与已存在的文件相互对比。
-i:使用交互模式,在进行还原操作时,restors指令将依序询问用户
-r:进行还原模式
-t:查看模式,看备份文件有哪些文件
- 选项
-f 备份的文件:从指定的文件中读取备份数据,进行还原操作
总结
2022/9/17 19:27 完。