概述
利用“任务计划”,可以将任何脚本、程序或文档安排在某个最方便的时间运行。通俗的讲就是定时执行某个脚本、程序。
常见用途
定时关机
定时检查更新
定时对系统配置、数据库、日志进行备份
定时清理垃圾文件
检测是否已安装
-bash: crontab:
command not found
执行 crontab 命令如果报 command not found,就表明没有安装.
开始安装
1
2
3
4
Loaded plugins: fastestmirror,refresh-packagekit,security
Existing lock /var/
run/yum.pid: another
copy is running as pid
25960.
Another app
is currently holding
the yum lock; waiting
for it to exit...
可能是系统自动升级正在运行,yum在锁定状态中。
可以通过强制关掉yum进程:
#rm -f /var/run/yum.pid
然后就可以使用yum了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
# yum -y install vixie-cron
Loaded plugins: fastestmirror,security
Determining fastest mirrors
* base: mirrors
.btte.net
* extras: mirrors
.sina.cn
* updates: mirrors
.cn
base |
3.7 kB
00:
00
extras |
3.4 kB
00
extras/primary_db |
32 kB
00
updates |
00
updates/primary_db |
1.9 MB
07
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package cronie
.x86_64
0:
1.4.4-
15.el6 will be installed
--> Processing Dependency: dailyjobs for package: cronie-
15.el6
.x86_64
--> Processing Dependency: /usr/sbin/sendmail for package: cronie-
.x86_64
--> Running transaction check
---> Package cronie-anacron
15.el6 will be installed
--> Processing Dependency: crontabs for package: cronie-anacron-
.x86_64
---> Package sendmail
8.149.el6 will be installed
--> Processing Dependency: procmail for package: sendmail-
9.el6
.x86_64
--> Running transaction check
---> Package crontabs
.noarch 1.10-
33.el6 will be installed
---> Package procmail
3.22-
25.1.el6_5
.1 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
===============================================================================================================================================================================================
Package Arch Version Repository Size
===============================================================================================================================================================================================
Installing:
cronie x86_64
15.el6 base
74 k
Installing for dependencies:
cronie-anacron x86_64
31 k
crontabs noarch
33.el6 base
10 k
procmail x86_64
.1 base
162 k
sendmail x86_64
9.el6 base
716 k
Transaction Summary
===============================================================================================================================================================================================
Install
5 Package(s)
Total download size:
994 k
Installed size:
2.1 M
Downloading Packages:
(
1/
5): cronie-
.x86_64
.rpm |
74 kB
00
(
2/
5): cronie-anacron-
.rpm |
31 kB
3/
5): crontabs-
33.el6
.noarch.rpm |
10 kB
4/
5): procmail-
.1.rpm |
162 kB
5/
5): sendmail-
.rpm |
716 kB
00
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total
1.3 MB/s |
994 kB
00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : procmail-
.x86_64
5
Installing : sendmail-
.x86_64
5
Installing : cronie-
.x86_64
5
Installing : crontabs-
.noarch 5
Installing : cronie-anacron-
.x86_64
5
ERROR:dbus
.proxies:Introspect error on :
1.2513:/org/freedesktop/PackageKit: dbus
.exceptions.DBusException: org
.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply,the message bus security policy blocked the reply,the reply timeout expired,
or the network connection was broken.
Unable to send message to PackageKit
Verifying : crontabs-
5
Verifying : cronie-anacron-
5
Verifying : sendmail-
5
Verifying : cronie-
5
Verifying : procmail-
5
Installed:
cronie
15.el6
Dependency Installed:
cronie-anacron
15.el6 crontabs
33.el6 procmail
.1 sendmail
9.el6
Complete!
查看命令帮助
crontab 并不支持-h或–help之类的选项,不过还是可以通过它查看命令帮助
1
2
3
4
5
6
7
8
9
10
11
crontab:无效选项 -- h
crontab: usage error: unrecognized option
usage: crontab [-u user] file
crontab [-u user] [ -e | -l | -r ]
(default operation
is replace,per
1003.2)
-e (edit use
r's crontab) -l (list user's crontab)
-r (delete use
r's crontab) -i (prompt before deleting user's crontab)
-s (selinux context)
也可以使用 info crontab 命令查看详细的帮助信息。
cron服务提供crontab命令来设定cron服务的,以下是这个命令的一些参数与说明:
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除没个用户的cron服务
crontab -e //编辑某个用户的cron服务
比如说root查看自己的cron设置:crontab -u root -l
再例如,root想删除fred的cron设置:crontab -u fred -r
在编辑cron服务时,编辑的内容有一些格式和约定,输入:crontab -u root -e
进入vi编辑模式,编辑的内容一定要符合下面的格式:/1* * * ls >> /tmp/ls.txt
服务状态控制
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
/sbin/service crond status //查看状态
或者使用
# service crond start
# service crond stop
# service crond restart
# service crond reload
# service crond status
开机启动
你也可以将这个服务在系统启动的时候自动启动:
在/etc/rc.d/rc.local这个脚本的末尾加上:
1
/sbin/service crond
start
现在Cron这个服务已经在进程里面了,我们就可以用这个服务了。
原文链接:https://www.f2er.com/centos/377443.html