欢迎光临
专业Linux运维二十年

CentOS下使用yum命令安装计划任务程序crontab的方法

 概述

利用“任务计划”,可以将任何脚本、程序或文档安排在某个最方便的时间运行。通俗的讲就是定时执行某个脚本、程序。

常见用途

定时关机

定时检查更新

定时对系统配置、数据库、日志进行备份

定时清理垃圾文件

检测是否已安装

?
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,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

脚本之家
赞(0) 打赏
未经允许不得转载:Linux老运维 » CentOS下使用yum命令安装计划任务程序crontab的方法

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫