Ubuntu部署crontab开机自启动 |
您所在的位置:网站首页 › ubuntu添加自启动 › Ubuntu部署crontab开机自启动 |
1.安装cron组件
1.1更新软件列表
apt-get update apt-get install cron 1.3 开启日志功能 1.3.1 安装rsylog组件apt-get install rsyslog vim /etc/rsyslog.d/50-default.conf 配置文件的cron.* /var/log/cron.log前面的注释#去掉。 重启rsyslog服务 service rsyslog restart 待后续配置好cron启动程序后,会有日志输出到这个文件中 定时任务有用户级别和系统级别两种方式的任务文件。 2.1用户级别crontab -ecrontab -e是用户级别的计划任务文件。 2.1.1 crontab -ecrontab -e 在末尾添加 * * * * * echo "Hello,world from crontab -e" >> /tmp/Helloworld.txt 每分钟输出Hello,world from crontab -e到/tmp/Helloworld.txt文件下。 service cron restart重启cron服务。 如果出现下面的情况,则需要修改默认文本编辑器。 先关掉ssh连接,重连接ssh sudo select-editor选择3,vim编辑器即可。 /etc/crontab是系统级别的计划任务文件。在/etc/crontab文件中,需要指定任务的运行用户,/etc/crontab文件需要使用root用户来编辑。 例如: * * * * * root echo "Hello,world from /etc/crontab" >> /tmp/Helloworld.txt 操作流程如下: a、vim /etc/crontab b、 在末尾添加 * * * * * root echo "Hello,world from /etc/crontab" >> /tmp/Helloworld.txt 每分钟输出Hello,world到/tmp/Helloworld.txt文件下。 用以下的方法启动、关闭这个cron服务: service cron status //查看crontab服务状态 service cron start //启动服务 service cron stop //关闭服务 service cron restart //重启服务 service cron reload //重新载入配置 crontab -e配置是针对某个用户的,而编辑/etc/crontab是针对系统的任务 查看调度任务 crontab -l //列出当前的所有调度任务 crontab -l -u jp //列出用户jp的所有调度任务 删除任务调度工作 crontab -r //删除所有任务调度工作 3.2 定时任务* * * * * echo "Hello world!" 中“*”的解释: minute - 从0到59的整数 hour - 从0到23的整数 day - 从1到31的整数 (必须是指定月份的有效日期) month - 从1到12的整数 (或如Jan或Feb简写的月份) dayofweek - 从0到7的整数,0或7用来描述周日 (或用Sun或Mon简写来表示) command - 需要执行的命令(可用as ls /proc >> /tmp/proc或 执行自定义脚本的命令) 除了数字还有几个特殊的符号:"*"、"/"和"-"、"," *代表所有的取值范围内的数字 "/"代表每的意思,"/5"表示每5个单位 "-"代表从某个数字到某个数字 ","分开几个离散的数字 例子: 15,30,45,59 * * * * echo "xgmtest....." 表示,每隔15分钟,执行一次打印命令 每天早上 6 点 0 6 * * * echo "Good morning." >> /tmp/test.txt //注意单纯echo,从屏幕上看不到任何输出,因为cron把任何输出都email到root的信箱了。 每两个小时(第一个为 15 ,指明没两个小时的第 15 min中执行一次) 15 */ 2 * * * echo "Have a break now." >> /tmp/test.txt 晚上 11 点到早上 8 点之间每两个小时和早上八点 0 23 -7 / 2 , 8 * * * echo "Have a good dream" >> /tmp/test.txt 每个月的 4 号和每个礼拜的礼拜一到礼拜三的早上 11 点 0 11 4 * 1 -3 command line 1 月 1 日早上 4 点 0 4 1 1 * command line 每小时(第一分钟)执行/etc/cron.hourly内的脚本 01 * * * * root run-parts /etc/cron.hourly 每天(凌晨 4 : 02 )执行/etc/cron.daily内的脚本 02 4 * * * root run-parts /etc/cron.daily 每星期(周日凌晨 4 : 22 )执行/etc/cron.weekly内的脚本 22 4 * * 0 root run-parts /etc/cron.weekly 每月( 1 号凌晨 4 : 42 )去执行/etc/cron.monthly内的脚本 42 4 1 * * root run-parts /etc/cron.monthly 注意: "run-parts" 这个参数了,如果去掉这个参数的话,后面就可以写要运行的某个脚本名,而不是文件夹名。 每天的下午 4 点、 5 点、 6 点的 5 min、 15 min、 25 min、 35 min、 45 min、 55 min时执行命令。 5 , 15 , 25 , 35 , 45 , 55 16 , 17 , 18 * * * command 每周一,三,五的下午 3 : 00 系统进入维护状态,重新启动系统。 00 15 * * 1 , 3 , 5 shutdown -r + 5 每小时的 10 分, 40 分执行用户目录下的innd/bbslin这个指令: 10 , 40 * * * * innd/bbslink 每小时的 1 分执行用户目录下的bin/account这个指令: 1 * * * * bin/account 每天早晨三点二十分执行用户目录下如下所示的两个指令(每个指令以;分隔): 203 * * * (/bin/rm -f expire.ls logins.bad;bin/expire$#@ 62 ;expire. 1 st) 每年的一月和四月, 4 号到 9 号的 3 点 12 分和 3 点 55 分执行/bin/rm -f expire. 1 st这个指令,并把结果添加在mm.txt这个文件之后(mm.txt文件位于用户自己的目录位置)。 12 , 553 4 -91 , 4 * /bin/rm -f expire. 1 st$#@ 62 ;$#@ 62 ;mm.txt 本节引用文章来源:https://blog.csdn.net/qq_30270931/article/details/79137486 3.3 开机任务可以在用户级别或者系统级别中添加该任务 3.3.1 用户级别@reboot echo "Hello,world!reboot from crontab -e" >> /tmp/Helloworld.txt 3.3.2 系统级别 @reboot root echo "Hello,world!reboot from /etc/crontab" >> /tmp/Helloworld.txt |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |