今天在测试机上
配置crontab时发现它没有
安装,所以赶紧安装一个.
CentOS 版本:5.7
操作步骤
1. 确认crontab是否安装:
执行 crontab 命令如果报 command not found,就表明没有安装
2. 安装 crontab
执行 yum install -y vixie-cron
3. 确认是否安装成功:
4. 看是否设置了开机自动启动
chkconfig --list crond
5. 启动crontab
service crond start
详细记录
[root@node16 eap_designer]# crontab -e
-bash: crontab: command not found
[root@node16 eap_designer]# yum install -y crontab
Loaded plugins: fastestmirror
Determining fastest mirrors
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
base | 1.1 kB 00:00
extras | 2.1 kB 00:00
extras/primary_db | 171 kB 00:00
updates | 1.9 kB 00:00
updates/primary_db | 464 kB 00:01
Setting up Install Process
No package crontab available.
Nothing to do
[root@node16 eap_designer]# yum install -y cron
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
Setting up Install Process
No package cron available.
Nothing to do
[root@node16 eap_designer]# yum install -y crond
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
Setting up Install Process
No package crond available.
Nothing to do
[root@node16 eap_designer]# yum install -y crontab
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
Setting up Install Process
No package crontab available.
Nothing to do
[root@node16 eap_designer]# yum install -y crontabs
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
Setting up Install Process
Package crontabs-1.10-8.noarch already installed and latest version
Nothing to do
[root@node16 eap_designer]# crontab
-bash: crontab: command not found
[root@node16 eap_designer]# cd
[root@node16 ~]#
[root@node16 ~]#
查了一下资料,才知道它不叫cron,crond,crontab,crontabs,它叫vixie-cron
[root@node16 ~]# yum install -y vixie-cron
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package vixie-cron.i386 4:4.1-77.el5_4.1 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
====================================================================================================================================
Package Arch Version Repository Size
====================================================================================================================================
Installing:
vixie-cron i386 4:4.1-77.el5_4.1 base 79 k
Transaction Summary
====================================================================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 79 k
Downloading Packages:
vixie-cron-4.1-77.el5_4.1.i386.rpm | 79 kB 00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : vixie-cron 1/1
Installed:
vixie-cron.i386 4:4.1-77.el5_4.1
Complete!
[root@node16 ~]# crontab -l
no crontab for root
[root@node16 ~]#
[root@node16 ~]# chkconfig --list crontab
在 crontab 服务中读取信息时出错:没有那个文件或目录
[root@node16 ~]# chkconfig --list cron
在 cron 服务中读取信息时出错:没有那个文件或目录
[root@node16 ~]# chkconfig --list
anacron 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
avahi-daemon 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
avahi-dnsconfd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
crond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
gpm 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
haldaemon 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
iscsi 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
iscsid 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
jexec 0:启用 1:启用 2:启用 3:启用 4:启用 5:启用 6:启用
kudzu 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
lvm2-monitor 0:关闭 1:启用 2:启用 3:启用 4:启用 5:启用 6:关闭
mcstrans 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
messagebus 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
multipathd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
mysql 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
netconsole 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
netfs 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
netplugd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
network 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
rawdevices 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
rdisc 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
restorecond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
sshd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
syslog 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
tcsd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
xfs 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
[root@node16 ~]# chkconfig --list crond
crond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
[root@node16 ~]# service crond
用法: /etc/init.d/crond {start|stop|status|reload|restart|condrestart}
[root@node16 ~]# service crond status
crond 已停
[root@node16 ~]#
[root@node16 ~]#
[root@node16 ~]# service crond start
启动 crond: [确定]
[root@node16 ~]# service crond status
crond (pid 16932) 正在运行...
CentOS 版本:5.7
操作步骤
1. 确认crontab是否安装:
执行 crontab 命令如果报 command not found,就表明没有安装
2. 安装 crontab
执行 yum install -y vixie-cron
3. 确认是否安装成功:
执行 crontab -e
4. 看是否设置了开机自动启动
chkconfig --list crond
5. 启动crontab
service crond start
详细记录
[root@node16 eap_designer]# crontab -e
-bash: crontab: command not found
[root@node16 eap_designer]# yum install -y crontab
Loaded plugins: fastestmirror
Determining fastest mirrors
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
base | 1.1 kB 00:00
extras | 2.1 kB 00:00
extras/primary_db | 171 kB 00:00
updates | 1.9 kB 00:00
updates/primary_db | 464 kB 00:01
Setting up Install Process
No package crontab available.
Nothing to do
[root@node16 eap_designer]# yum install -y cron
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
Setting up Install Process
No package cron available.
Nothing to do
[root@node16 eap_designer]# yum install -y crond
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
Setting up Install Process
No package crond available.
Nothing to do
[root@node16 eap_designer]# yum install -y crontab
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
Setting up Install Process
No package crontab available.
Nothing to do
[root@node16 eap_designer]# yum install -y crontabs
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
Setting up Install Process
Package crontabs-1.10-8.noarch already installed and latest version
Nothing to do
[root@node16 eap_designer]# crontab
-bash: crontab: command not found
[root@node16 eap_designer]# cd
[root@node16 ~]#
[root@node16 ~]#
查了一下资料,才知道它不叫cron,crond,crontab,crontabs,它叫vixie-cron
[root@node16 ~]# yum install -y vixie-cron
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: centos.ustc.edu.cn
* extras: centos.ustc.edu.cn
* updates: centos.ustc.edu.cn
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package vixie-cron.i386 4:4.1-77.el5_4.1 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
====================================================================================================================================
Package Arch Version Repository Size
====================================================================================================================================
Installing:
vixie-cron i386 4:4.1-77.el5_4.1 base 79 k
Transaction Summary
====================================================================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 79 k
Downloading Packages:
vixie-cron-4.1-77.el5_4.1.i386.rpm | 79 kB 00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : vixie-cron 1/1
Installed:
vixie-cron.i386 4:4.1-77.el5_4.1
Complete!
[root@node16 ~]# crontab -l
no crontab for root
[root@node16 ~]#
[root@node16 ~]# chkconfig --list crontab
在 crontab 服务中读取信息时出错:没有那个文件或目录
[root@node16 ~]# chkconfig --list cron
在 cron 服务中读取信息时出错:没有那个文件或目录
[root@node16 ~]# chkconfig --list
anacron 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
avahi-daemon 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
avahi-dnsconfd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
crond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
gpm 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
haldaemon 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
iscsi 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
iscsid 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
jexec 0:启用 1:启用 2:启用 3:启用 4:启用 5:启用 6:启用
kudzu 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
lvm2-monitor 0:关闭 1:启用 2:启用 3:启用 4:启用 5:启用 6:关闭
mcstrans 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
messagebus 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
multipathd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
mysql 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
netconsole 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
netfs 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
netplugd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
network 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
rawdevices 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
rdisc 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
restorecond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
sshd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
syslog 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
tcsd 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
xfs 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
[root@node16 ~]# chkconfig --list crond
crond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
[root@node16 ~]# service crond
用法: /etc/init.d/crond {start|stop|status|reload|restart|condrestart}
[root@node16 ~]# service crond status
crond 已停
[root@node16 ~]#
[root@node16 ~]#
[root@node16 ~]# service crond start
启动 crond: [确定]
[root@node16 ~]# service crond status
crond (pid 16932) 正在运行...
[root@node16 ~]#
完成了上面基础工作后,就来看看怎么使用crontab定时执行PHP脚本:
(1)我在/root下新建test.php文件,内容如下:
- <?php
- #!/usr/bin/php -q
- echo date('Y-m-d H:i:s')."from http://www.phpddt.com \n";
- ?>
说明:你可以用whereis php查找php执行文件位置。
在命令行输入php -q test.php 测试你写的PHP程序是否可以正常运行
(2)然后crontab -e编写如下shell:
- * * * * * /usr/bin/php -f /root/test.php >> test.log
说明:test.php必须为可执行文件:chmod +x test.php
测试结果很正常,截图如下:

当然你可以用使用crontab -e继续添加任务,在/var/spool/cron下你可以看到一个root文件。
可以看可以用tail -f /var/log/cron观察日志
也可用ps -aux | grep cron 查看所有的进程
可以看可以用tail -f /var/log/cron观察日志
也可用ps -aux | grep cron 查看所有的进程