linux任务计划cron
linux任务计划cron

1.crontab命令任务计划配置文件
[root@bogon ~]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed [root@bogon ~]#
2.编辑计划任务crontab -e
[root@bogon ~]# crontab -e
3. 每天三点执行并把正确的和错误的输出到123.log文件中 0 3 * * * /bin/bash /usr/loacl/sbin/123.sh >/tmp/123.log 2>/tmp/123.log,如果是追加将>改成>>会将每天的输出以追加的方式写入文件
4.一号到十号的三点执行0 3 1-10 * * /bin/bash /usr/loacl/sbin/123.sh >/tmp/123.log 2>/tmp/123.log
5.一号到十号的每两个月(能被2整除的月份)三点执行0 3 1-10 */2 * /bin/bash /usr/loacl/sbin/123.sh >/tmp/123.log 2>/tmp/123.log
6.一号到十号的每两个月(能被2整除的月份)的周二和周五三点执行0 3 1-10 */2 2,5 /bin/bash /usr/loacl/sbin/123.sh >/tmp/123.log 2>/tmp/123.log
7.启动并查看crond服务
[root@sunyujun01 ~]# systemctl start crond [root@sunyujun01 ~]# ps aux|grep crond root 1393 0.0 0.0 124144 508 ? Ss 09:44 0:00 /usr/sbin/crond -n root 16427 0.0 0.0 112672 972 pts/2 R+ 11:55 0:00 grep --color=auto crond [root@sunyujun01 ~]#
8.也可以用systemctl status crond命令查看crond启动状态
[root@sunyujun01 ~]# systemctl status crond
● crond.service - Command Scheduler
   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
   Active: active (running) since 三 2018-01-24 09:44:22 CST; 3h 26min ago
 Main PID: 1393 (crond)
   CGroup: /system.slice/crond.service
           └─1393 /usr/sbin/crond -n
1月 24 09:44:22 localhost.localdomain systemd[1]: Started Command Scheduler.
1月 24 09:44:22 localhost.localdomain systemd[1]: Starting Command Scheduler...
1月 24 09:44:23 localhost.localdomain crond[1393]: (CRON) INFO (Syslog will ...
1月 24 09:44:23 localhost.localdomain crond[1393]: (CRON) INFO (RANDOM_DELAY...
1月 24 09:44:23 localhost.localdomain crond[1393]: (CRON) INFO (running with...
Hint: Some lines were ellipsized, use -l to show in full.
[root@sunyujun01 ~]# 
9.停掉crond
[root@sunyujun01 ~]# systemctl stop crond
10.如果脚步中的命令没有执行,可能是命令没有加入到crond变量里面,也可以直接写绝对路径

11.这个文件的内容是crontab -l列出来的计划任务列表,如果备份的话直接拷贝这个文件就行
[root@sunyujun01 ~]# cat /var/spool/cron/root
12.crontab -r 删除
chkconfig工具

1.chkconfig --list查看使用chkconfig工具的服务
[root@sunyujun01 ~]# chkconfig --list
注意:该输出结果只显示 SysV 服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。 
      如果您想列出 systemd 服务,请执行 'systemctl list-unit-files'。
      欲查看对特定 target 启用的服务请执行
      'systemctl list-dependencies [target]'。
mysql           0:关    1:关    2:开    3:开    4:开    5:开    6:关
netconsole      0:关    1:关    2:关    3:关    4:关    5:关    6:关
network         0:关    1:关    2:开    3:开    4:开    5:开    6:关
nginx           0:关    1:关    2:开    3:开    4:开    5:开    6:关
php-fpm         0:关    1:关    2:开    3:开    4:开    5:开    6:关
[root@sunyujun01 ~]# 
2.对应的服务都在/etc/init.d/目录下
[root@sunyujun01 ~]# ls /etc/init.d/ functions mysql netconsole network nginx php-fpm README [root@sunyujun01 ~]#
3.关闭network服务 chkconfig network off
[root@sunyujun01 ~]# chkconfig network off
[root@sunyujun01 ~]# chkconfig --list
注意:该输出结果只显示 SysV 服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。 
      如果您想列出 systemd 服务,请执行 'systemctl list-unit-files'。
      欲查看对特定 target 启用的服务请执行
      'systemctl list-dependencies [target]'。
mysql           0:关    1:关    2:开    3:开    4:开    5:开    6:关
netconsole      0:关    1:关    2:关    3:关    4:关    5:关    6:关
network         0:关    1:关    2:关    3:关    4:关    5:关    6:关
nginx           0:关    1:关    2:开    3:开    4:开    5:开    6:关
php-fpm         0:关    1:关    2:开    3:开    4:开    5:开    6:关
[root@sunyujun01 ~]# 
4.network的6个级别都变成关闭状态了
5.重新启动network
0 停机 1 单用户模式 2 多用户,没有 NFS 3 完全多用户模式 4 没有用到 5 图形界面 6 重新启动 S s Single user mode
[root@sunyujun01 ~]# chkconfig network on
[root@sunyujun01 ~]# chkconfig --list    
注意:该输出结果只显示 SysV 服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。 
      如果您想列出 systemd 服务,请执行 'systemctl list-unit-files'。
      欲查看对特定 target 启用的服务请执行
      'systemctl list-dependencies [target]'。
mysql           0:关    1:关    2:开    3:开    4:开    5:开    6:关
netconsole      0:关    1:关    2:关    3:关    4:关    5:关    6:关
network         0:关    1:关    2:开    3:开    4:开    5:开    6:关
nginx           0:关    1:关    2:开    3:开    4:开    5:开    6:关
php-fpm         0:关    1:关    2:开    3:开    4:开    5:开    6:关
[root@sunyujun01 ~]# 
6.在centos7之前的版本可以通过编辑文件定义系统级别
[root@sunyujun01 ~]# vim /etc/inittab
7. 设定某个运行级别开关
[root@sunyujun01 ~]# chkconfig --level 3 network off
8.也可以写多个345
[root@sunyujun01 ~]# chkconfig --level 345 network off
9.将123服务添加到服务中
[root@sunyujun01 init.d]# cp network 123^C
[root@sunyujun01 init.d]# ls -l
总用量 60
-rwxr-xr-x  1 root root  6630 1月  24 14:17 123
-rw-r--r--. 1 root root 13948 9月  16 2015 functions
-rwxr-xr-x. 1 root root 10880 2月  10 2017 mysql
-rwxr-xr-x. 1 root root  2989 9月  16 2015 netconsole
-rwxr-xr-x. 1 root root  6630 9月  16 2015 network
-rwxr-xr-x. 1 root root  2652 2月  10 2017 nginx
-rwxr-xr-x. 1 root root  2401 2月  10 2017 php-fpm
-rw-r--r--. 1 root root  1160 11月 22 2016 README
[root@sunyujun01 init.d]# chkconfig --list
注意:该输出结果只显示 SysV 服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。 
      如果您想列出 systemd 服务,请执行 'systemctl list-unit-files'。
      欲查看对特定 target 启用的服务请执行
      'systemctl list-dependencies [target]'。
mysql           0:关    1:关    2:开    3:开    4:开    5:开    6:关
netconsole      0:关    1:关    2:关    3:关    4:关    5:关    6:关
network         0:关    1:关    2:开    3:开    4:开    5:开    6:关
nginx           0:关    1:关    2:开    3:开    4:开    5:开    6:关
php-fpm         0:关    1:关    2:开    3:开    4:开    5:开    6:关
[root@sunyujun01 init.d]# chkconfig --add 123
[root@sunyujun01 init.d]# chkconfig --list
注意:该输出结果只显示 SysV 服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。 
      如果您想列出 systemd 服务,请执行 'systemctl list-unit-files'。
      欲查看对特定 target 启用的服务请执行
      'systemctl list-dependencies [target]'。
123             0:关    1:关    2:开    3:开    4:开    5:开    6:关
mysql           0:关    1:关    2:开    3:开    4:开    5:开    6:关
netconsole      0:关    1:关    2:关    3:关    4:关    5:关    6:关
network         0:关    1:关    2:开    3:开    4:开    5:开    6:关
nginx           0:关    1:关    2:开    3:开    4:开    5:开    6:关
php-fpm         0:关    1:关    2:开    3:开    4:开    5:开    6:关
[root@sunyujun01 init.d]# 
10.删除一个服务
[root@sunyujun01 init.d]# chkconfig --del 123 [root@sunyujun01 init.d]#
systemd管理服务
 
1.列出所有service服务,如果想列出所有用systemctl list-unit-files
[root@sunyujun01 init.d]# systemctl list-units -all --type=service
unit介绍
1.7个运行级别一一对应的软连接
[root@sunyujun01 system]# ls -l runlevel* lrwxrwxrwx. 1 root root 15 2月 10 2017 runlevel0.target -> poweroff.target lrwxrwxrwx. 1 root root 13 2月 10 2017 runlevel1.target -> rescue.target lrwxrwxrwx. 1 root root 17 2月 10 2017 runlevel2.target -> multi-user.target lrwxrwxrwx. 1 root root 17 2月 10 2017 runlevel3.target -> multi-user.target lrwxrwxrwx. 1 root root 17 2月 10 2017 runlevel4.target -> multi-user.target lrwxrwxrwx. 1 root root 16 2月 10 2017 runlevel5.target -> graphical.target lrwxrwxrwx. 1 root root 13 2月 10 2017 runlevel6.target -> reboot.target

target介绍(一个target是多个unit的组合)

 
                    
                     
                    
                 
                    
                

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号