概述
利用“任务计划”,可以将任何脚本、程序或文档安排在某个最方便的时间运行。通俗的讲就是定时执行某个脚本、程序。
常见用途
定时关机
定时检查更新
定时对系统配置、数据库、日志进行备份
定时清理垃圾文件
检测是否已安装
1
2
|
# crontab - bash : crontab : command not found |
执行 crontab 命令如果报 command not found,就表明没有安装.
开始安装
1
2
3
4
|
# yum -y install vixie-cron 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进程:
1
|
#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
|
# yum -y install vixie-cron Loaded plugins: fastestmirror, refresh-packagekit, security Determining fastest mirrors * base: mirrors.btte.net * extras: mirrors.sina.cn * updates: mirrors.sina.cn base | 3.7 kB 00:00 extras | 3.4 kB 00:00 extras /primary_db | 32 kB 00:00 updates | 3.4 kB 00:00 updates /primary_db | 1.9 MB 00: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-1.4.4-15.el6.x86_64 --> Processing Dependency: /usr/sbin/sendmail for package: cronie-1.4.4-15.el6.x86_64 --> Running transaction check ---> Package cronie-anacron.x86_64 0:1.4.4-15.el6 will be installed --> Processing Dependency: crontabs for package: cronie-anacron-1.4.4-15.el6.x86_64 ---> Package sendmail.x86_64 0:8.14.4-9.el6 will be installed --> Processing Dependency: procmail for package: sendmail-8.14.4-9.el6.x86_64 --> Running transaction check ---> Package crontabs.noarch 0:1.10-33.el6 will be installed ---> Package procmail.x86_64 0:3.22-25.1.el6_5.1 will be installed --> Finished Dependency Resolution Dependencies Resolved =============================================================================================================================================================================================== Package Arch Version Repository Size =============================================================================================================================================================================================== Installing: cronie x86_64 1.4.4-15.el6 base 74 k Installing for dependencies: cronie-anacron x86_64 1.4.4-15.el6 base 31 k crontabs noarch 1.10-33.el6 base 10 k procmail x86_64 3.22-25.1.el6_5.1 base 162 k sendmail x86_64 8.14.4-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-1.4.4-15.el6.x86_64.rpm | 74 kB 00:00 (2 /5 ): cronie-anacron-1.4.4-15.el6.x86_64.rpm | 31 kB 00:00 (3 /5 ): crontabs-1.10-33.el6.noarch.rpm | 10 kB 00:00 (4 /5 ): procmail-3.22-25.1.el6_5.1.x86_64.rpm | 162 kB 00:00 (5 /5 ): sendmail-8.14.4-9.el6.x86_64.rpm | 716 kB 00:00 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 1.3 MB /s | 994 kB 00:00 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : procmail-3.22-25.1.el6_5.1.x86_64 1 /5 Installing : sendmail-8.14.4-9.el6.x86_64 2 /5 Installing : cronie-1.4.4-15.el6.x86_64 3 /5 Installing : crontabs-1.10-33.el6.noarch 4 /5 Installing : cronie-anacron-1.4.4-15.el6.x86_64 5 /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-1.10-33.el6.noarch 1 /5 Verifying : cronie-anacron-1.4.4-15.el6.x86_64 2 /5 Verifying : sendmail-8.14.4-9.el6.x86_64 3 /5 Verifying : cronie-1.4.4-15.el6.x86_64 4 /5 Verifying : procmail-3.22-25.1.el6_5.1.x86_64 5 /5 Installed: cronie.x86_64 0:1.4.4 15.el6 Dependency Installed: cronie-anacron.x86_64 0:1.4.4-15.el6 crontabs.noarch 0:1.10-33.el6 procmail.x86_64 0:3.22-25.1.el6_5.1 sendmail.x86_64 0:8.14.4-9.el6 Complete! |
查看命令帮助
crontab 并不支持-h或–help之类的选项,不过还是可以通过它查看命令帮助
1
2
3
4
5
6
7
8
9
10
11
|
# crontab -h 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 user's crontab ) -l (list user's crontab ) -r (delete user'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
服务状态控制
1
2
3
4
5
|
/sbin/service crond start // 启动服务 /sbin/service crond stop // 关闭服务 /sbin/service crond restart // 重启服务 /sbin/service crond reload // 重新载入配置 /sbin/service crond status // 查看状态 |
或者使用
1
2
3
4
5
|
# 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这个服务已经在进程里面了,我们就可以用这个服务了。
总结
以上所述是小编给大家介绍的CentOS下使用yum命令安装计划任务程序crontab,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://blog.csdn.net/testcs_dn/article/details/48780971