規劃任務一次調度執行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等等應用可以用自己的方法記錄日誌
#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中文網其他相關文章!