首页  >  文章  >  系统教程  >  计划任务指定时间点,执行一次性任务依赖与atd服务

计划任务指定时间点,执行一次性任务依赖与atd服务

WBOY
WBOY转载
2024-03-11 09:07:081031浏览

计划任务一次调度执行at

at指定时间点,执行一次性任务

依赖与atd服务,须要启动能够实现at任务

at队列储存在/var/spool/at目录中

-V:显示版本信息

-l:列举指定队列中等待运行的作业;相当于atq

-d:删掉指定的作业;相当于atrm

-c:查看具体作业任务

<span class="token namespace">[root@localhost ~]</span><span class="token comment"># systemctl start atd</span>
<span class="token namespace">[root@localhost ~]</span><span class="token comment"># systemctl enable atd</span>
<span class="token namespace">[root@localhost ~]</span><span class="token comment"># at now +1min</span>
at> useradd xwz
at><span class="token comment"># Ctrl+D结束</span>
job 1 at Thu Aug 27 15:35:00 2020
<span class="token namespace">[root@localhost ~]</span><span class="token comment"># atq</span>
1 Thu Aug 27 15:35:00 2020 a root
<span class="token namespace">[root@localhost ~]</span><span class="token comment"># id xwz</span>
uid=1000<span class="token punctuation">(</span>xwz<span class="token punctuation">)</span> gid=1000<span class="token punctuation">(</span>xwz<span class="token punctuation">)</span> 组=1000<span class="token punctuation">(</span>xwz<span class="token punctuation">)</span>

白名单:/etc/at.allow默认不存在,只有该文件中的用户能够执行at命令

黑名单:/etc/at.deny默认存在,拒绝该文件中用户执行at命令,而没有在at.deny文件中的使用者则可执行

假如两个文件都不存在,只有root可以执行at命令

循环调度执行cron用户级

<span class="token namespace">[root@localhost ~]</span><span class="token comment"># systemctl start crond</span>
<span class="token namespace">[root@localhost ~]</span><span class="token comment"># systemctl enable crond</span>
crond 进程每分钟会处理一次计划任务
<span class="token namespace">[root@localhost ~]</span><span class="token comment"># ls /var/spool/cron # 储存位置</span>

<span class="token punctuation">[</span>root@localhost ~<span class="token punctuation">]</span><span class="token comment"># crontab -l # 列出当前用户所有计划任务</span>
<span class="token punctuation">[</span>root@localhost ~<span class="token punctuation">]</span><span class="token comment"># crontab -r # 删除当前用户计划任务</span>
<span class="token punctuation">[</span>root@localhost ~<span class="token punctuation">]</span><span class="token comment"># crontab -e # 编辑当前用户计划任务</span>

分时日月礼拜命令

日志管理基础

rsyslogd:绝大部份日志记录,和系统操作有关,安全美国linux主机,认证sshd,su,计划任务at,cronhttpd/nginx/mysql等等应用可以以自己的方法记录日志

linux任务计划_linux任务计划执行脚本_linux 计划任务没执行

tail/var/log/messages系统主日志文件

tail-f/var/log/messages动态查看日志文件的尾部

tail/var/log/croncrond、at进程形成的日志

w当前登入的用户/var/log/wtmp

tail/var/log/mysqld.logMySQL

<span class="token namespace">[root@localhost ~]</span><span class="token comment"># rpm -qc rsyslog</span>
<span class="token operator">/</span>etc<span class="token operator">/</span>logrotate<span class="token punctuation">.</span>d<span class="token operator">/</span>syslog <span class="token comment"># 日志轮转(切割)相关</span>
<span class="token operator">/</span>etc<span class="token operator">/</span>rsyslog<span class="token punctuation">.</span>conf <span class="token comment"># rsyslogd的主配置文件</span>
<span class="token operator">/</span>etc<span class="token operator">/</span>sysconfig<span class="token operator">/</span>rsyslog <span class="token comment"># rsyslogd相关文件</span>

日志服务名称

cron(LOG_CRON)系统定时任务cront和at形成的日志

daemon(LOG_DAEMON)与各个守护进程相关的日志

ftp(LOG_FTP)ftp守护进程形成的日志

syslog(LOG_SYSLOG)存syslogd服务形成的日志信息(即使服务名称己经改为reyslogdlinux安装,而且好多配罝仍然沿袭了syslogd服务的,所以这儿并没有更改服务名称)

logrotate日志轮转

logrotate就是拿来进行日志轮替(也叫日志轮询)的,也就是把旧的日志文件联通并更名linux 计划任务没执行,同时创建一个新的空日志文件拿来记录新日志,当旧日志文件超出保存的范围时就删掉。

注:针对任何日志文件(rsyslog日志、Nginx访问或错误日志)

logrotate本身不是系统守护进程linux 计划任务没执行,它是通过计划任务crond每晚执行

<span class="token namespace">[root@localhost ~]</span><span class="token comment"># cat /etc/cron.daily/logrotate</span>

主配置文件

<span class="token punctuation">[</span>root@localhost ~<span class="token punctuation">]</span><span class="token comment"># vim /etc/logrotate.conf</span>
weekly <span class="token comment"># 一周轮转一次</span>
rotate <span class="token number">4</span> <span class="token comment"># 保留4份日志,也就是说,如果进行了5次日志轮替,就会删除第一个备份日志</span>
create <span class="token comment"># 主动创建新的日志文件</span>
dateext <span class="token comment"># 使用日期来作为文件名的后缀</span>
<span class="token comment">#compress # 每次轮转需不需要进行压缩</span>
include /etc/logrotate.d <span class="token comment"># 导入其他应用的日志轮转规则</span>
/var/log/wtmp <span class="token punctuation">{</span> <span class="token comment"># 以下参数仅对此目录有效</span>
monthly <span class="token comment"># 一个月轮转一次</span>
create 0664 root utmp <span class="token comment"># 轮转后创建新文件,并设置权限</span>
minsize 1M <span class="token comment"># 最小达到1M才会轮转</span>
rotate <span class="token number">1</span> <span class="token comment"># 仅保留一个日志备份。也就是只保留wtmp和wtmp.1日志</span>
<span class="token punctuation">}</span>
/var/log/btmp <span class="token punctuation">{</span>
missingok <span class="token comment"># 如果日志不存在,则忽略该日志的警告信息</span>
monthly
create 0600 root utmp
rotate <span class="token number">1</span>
<span class="token punctuation">}</span>

以上是计划任务指定时间点,执行一次性任务依赖与atd服务的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:itcool.net。如有侵权,请联系admin@php.cn删除