RHEL之(十)Red Hat Linux 计划任务,临时文件管理与系统调优
计划任务,临时文件管理与系统调优
一、计划任务
计划任务: 让系统在某个时间点,执行一次你所定义的操作。
一次性计划任务:
你让你的系统在某个具体的时间点执行一次操作,当这次操作执行完成之后,这个计划任务就结束了。
周期性的计划任务:
根据你所定义的时间条件,让你的系统循环地执行这次任务。
1-5: 9-18 都是要上班
6-7: 9点30-17点 你要上课
(1)一次性计划任务的实现
确保atd服务(一次性定时计划任务命令的守候进程)的正常开启。

一次性的计划任务是怎么定义的呢?定义一个具体的时间点:

输入完,按Ctrl+D结束。
at: 因为当你定义之后,在目录/var/spool/at/中创建一个文件等待at的执行,当执行完成之后这个文件就会被删除了。
执行前:

手动设置时间,将时间调到设定的执行任务的时间,任务执行完毕后,发现该文件已经被删除。


at的其他时间定义:

列出所有的一次性计划任务:
at -l

at任务的删除:
at -r 3 (3为at任务的编号--job_id)

at任务的查看:
at -c 6 (6为at任务的编号--job_id)查看计划任务所对应的文件

(2)周期性计划任务
确保crond服务正常开启

周期性计划任务命令crontab用法:
A. crontab -l:列出当前用户的周期性计划任务

B. crontab -e:编辑当前用户的周期性计划任务(如果使用-u,可以编辑一个指定用户的计划任务,仅限于root用户可使用该参数)
输入该命令后,将会新建一个临存在tmp文件夹的文件,用于输入将要执行的周期性计划任务
※计划任务格式:分 时 日 月 周 (用户) 命令

* :任意
/N :代表每隔N个单位
A,B,C :在具体的单位时间点
0(7)-6 :星期的范围

编辑完的计划任务,实际存放在 /var/spool/cron/用户名的文件中

配置文件:/etc/crontab(一般不直接编辑)

拒绝计划任务的用户列表:/etc/cron.deny
(3)周期性的系统计划任务

例如:系统日志轮转任务logrotate为每天的周期性系统任务

定义系统周期性任务:方法:
- 在 /etc/cron.hourly/(每小时)/etc/cron.daily(每天) /etc/cron.weekly(每周)或者 /etc/cron.monthly(每月) 文件夹中写个脚本。
2. 例如:
vim /etc/cron.d/crontab(任务名)
0 * * * * root run-parts /etc/cron.weekly/ ##周任务示例

具体的执行机制,会在 /etc/anacrontab中定义:(延时执行的意义在于给用户的周期性任务给出时间)

二、管理临时文件夹
使用场景:软件应用所自定义临时文件夹,需要系统帮我们进行管理

方式一: 通过系统的 systemd-tmpfiles-setup.service 这个服务来管理。
这个服务在开机启动的时候,会根据配置文件(/usr/lib/tmpfiles.d/*.conf)来创建需要创建的文件,删除需要删除的文件。
/usr/lib/tmpfiles.d/tmp.conf(用法:man 5 tmpfiles.d)
类型 文件夹 权限 所有者 所属组 选项

创建完之后等系统自行加载,每次系统启动都会执行*.conf结尾的文件

方式二:直接手动加载
示例1:添加自定义的临时文件和目录
(1)先定义conf文件(test1.conf)

(2)systemd-tmpfiles --create test1.conf

示例2:启动时清理指定的临时文件夹
(1)先定义conf文件(test2.conf)

(2)systemd-tmpfiles --create test2.conf

示例3:移除临时文件夹规则
systemd-tmpfiles --remove test2.conf

三、RHEL系统调优
RHEL系统针对不同的使用场景,已经预先定义了一个调优的配置集profile。
类似场景:Windows系统的“电源管理”中的计划
※调优配置集中的配置文件及用途

操作方法:
(1)安装tuned服务:dnf install -y tuned

(2)列出可用的配置集:tuned-adm list

当前使用的tuned配置集为virtual-guest

(3)查看当前启用的配置集:tuned-adm active

(4)查看建议的配置集:tuned-adm recommend

(5)应用新的调优配置集:tuned-adm profile virtual-host
