一、邮件收发
服务启动与否状态查看:netstat -nlptu "25"端口 smp服务正常
默认收发邮件仅能在本机上的用户间进行,且只能通过回环接口上的地址进行
收邮件:mail
q:退出
N:查看第N封邮件
发邮件给指定用户:
mail USERNAME[@HOSTNAME]
-s "SUBJECT"
echo | mail
二、Linux任务计划
一次性任务计划:at,batch
周期性任务计划:cron
at:
at TIME
提交任务:Crtl+d
作业结果:以邮件形式发送系统上的当前用户
把at要执行的左右的任务放置于稳重,让at读取此文件作为要运行的任务
at -f /FILE TIME
TIME的格式:
精确时间: HH:MM
模糊时间: now+#UNIT noon(12点) midnight(12:00) teatime(16:00) tomorrow+
作业队列查看:
at -l,atq
删除尚未运行的作业 at -d JOBNUM, atrm
bath:无须指定时间,会自动在将来的某个系统资源较空闲的时间点来运行
cron:
依赖于后台服务,查看运行状态 service crond status
cron任务有两类:
系统cron: /etc/crontab
用户cron:定义在/var/spool/cron/目录中与用户名同名的文件中
1、每行定义一个独立的任务
2、建议在定义cron任务时,所用到的命令使用绝对路径,如果脚本,脚本中的命令使用绝对路径,或自定义一个完整的环境变量
格式: 时间点(周期性任务) user-name:用户身份 command:要运行的任务
时间点:
分钟 小时 天 月 周几
每年 4 7 3 2 *
每月 20 18 6 * *
每天 20 9 * * *
每小时 3 * * * *
每分钟 * * * * *
每周 16 17 * * 3
1、每个时间位都应该使用其可用的有效取值范围,*表示使用其所有有效取值
2、*/#在对应的时间位有效值上每#个时间单位一次
*/3 * * * * 注意:并不能精确做到每3分钟一次
* */3 * * * ? * */3 * * *
40 3 * * 1-5
40 3 * * 2,4,7
任务运行后的结果,邮件发送给任务相关用户;丢弃邮件通知:输出重定向 COMMAND>/dev/null
用户cron任务的定义:会自动检查语法错误,
crontab命令:
-l 列出当前用户的所有任务
-e 打开编辑界面定义任务
-r 移除所有任务
-u USERNAME 管理指定用户crontab
注意:如果crontab中的用户命令中需要使用“%”要用“\”转义
系统cron的定义:
直接编辑/etc/conttab文件即可
anacron:为cron提供了补充: