crontab 中的指定特定的用户身份来运行相关的命令或者脚本
2014-03-27 12:20
519 查看
点击打开链接
设置cron有两种方法
(
当启动linux时,它运行为一个后台进程。它每分钟检查一次相应的配置文件来了解是否有事件需要得到运行。
有两组cron配置文件。一组由一个全局配置文件(/etc/crontab)来控制,另一组基于个别用户使用crontab命令所创建的配置文件。
)
1、使用crontab命令
crontab -u //指定某个用户的cron服务
crontab -l //列出某个用户的cron服务的详细内容
crontab -r //删除某个用户的cron服务
crontab -e //编辑某个用户的cron服务
crontab -e这个命令,哪个用户使用了它,那么系统就会用那个用户身份执行相关的命令或者脚本。
所以http://hi.baidu.com/du_liang/blog/item/895bb8dd520c4eaccd1166e5.html文中的*/5 * * * * /sbin/service iptables stop 这样写可以,但*/5 * * * * root /sbin/service iptables stop 却不行...,因为会把root当成命令来看,可用tail /var/log/cron中的日志对比一下
2、系统的 cron 任务
cron 守护进程在搜索 /var/spool/cron 目录下用户的 crontab 文件的同时, 还将搜索 /e tc/crontab 文件,这个文件是系统安装时设置好的自动安排的进程任务的crontab 文件。这为系统管理员安排 cron 任务提供了方便。
CentOS 默认的 /etc/crontab 文件的内容为:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
/etc/cron.daily、/etc/cron.m onthly、/etc/cron.weekly 和 /etc/cron.hourly 是四个目录,分别放置系统每天、每个月、每周和每个小时要执行的任务的脚本文件。
run-parts 命令的作用是运行指定目录下的所有可执行文件(包括程序或脚本)。
crontab 文件中的每一行格式为:
minute hour day-of-month month-of-year day-of-week [username] commands
简化些:
* * * * * [username] commands
其中username(以它的身份执行)是可选的,commands是每次都必须指定的字段。前面的5个日期字段如果不指定可以*号代替。
注:run-parts参数表示,执行后面目录中的所有可执行文件,如果单独执行某个脚本的话,是不需要增加run-parts参数的。]
所以要指定cron的用户执行身份的话,是在/etc/crontab中,而不是用crontab命令。
相关:
/var/spool/cron/ 该目录下存放所有用户的cron服务
/var/log/cron 记录cron运行的日志信息。
设置cron有两种方法
(
当启动linux时,它运行为一个后台进程。它每分钟检查一次相应的配置文件来了解是否有事件需要得到运行。
有两组cron配置文件。一组由一个全局配置文件(/etc/crontab)来控制,另一组基于个别用户使用crontab命令所创建的配置文件。
)
1、使用crontab命令
crontab -u //指定某个用户的cron服务
crontab -l //列出某个用户的cron服务的详细内容
crontab -r //删除某个用户的cron服务
crontab -e //编辑某个用户的cron服务
crontab -e这个命令,哪个用户使用了它,那么系统就会用那个用户身份执行相关的命令或者脚本。
所以http://hi.baidu.com/du_liang/blog/item/895bb8dd520c4eaccd1166e5.html文中的*/5 * * * * /sbin/service iptables stop 这样写可以,但*/5 * * * * root /sbin/service iptables stop 却不行...,因为会把root当成命令来看,可用tail /var/log/cron中的日志对比一下
2、系统的 cron 任务
cron 守护进程在搜索 /var/spool/cron 目录下用户的 crontab 文件的同时, 还将搜索 /e tc/crontab 文件,这个文件是系统安装时设置好的自动安排的进程任务的crontab 文件。这为系统管理员安排 cron 任务提供了方便。
CentOS 默认的 /etc/crontab 文件的内容为:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
/etc/cron.daily、/etc/cron.m onthly、/etc/cron.weekly 和 /etc/cron.hourly 是四个目录,分别放置系统每天、每个月、每周和每个小时要执行的任务的脚本文件。
run-parts 命令的作用是运行指定目录下的所有可执行文件(包括程序或脚本)。
crontab 文件中的每一行格式为:
minute hour day-of-month month-of-year day-of-week [username] commands
简化些:
* * * * * [username] commands
其中username(以它的身份执行)是可选的,commands是每次都必须指定的字段。前面的5个日期字段如果不指定可以*号代替。
注:run-parts参数表示,执行后面目录中的所有可执行文件,如果单独执行某个脚本的话,是不需要增加run-parts参数的。]
所以要指定cron的用户执行身份的话,是在/etc/crontab中,而不是用crontab命令。
相关:
/var/spool/cron/ 该目录下存放所有用户的cron服务
/var/log/cron 记录cron运行的日志信息。
相关文章推荐
- 以特定的用户身份运行某个程序命令
- Runas命令:能让域用户/普通User用户以管理员身份运行指定程序
- Runas命令:能让域用户/普通User用户以管理员身份运行指定程序。
- Runas命令能让域用户/普通User用户以管理员身份运行指定程序
- linux 定时运行命令脚本---crontab
- linux定时运行命令脚本——crontab
- linux定时运行命令脚本crontab
- 手动运行脚本执行正常而放入crontab调用hadoop命令没有执行成功
- shell 脚本 指定用户执行命令
- linux定时运行命令脚本 (crontab详解)
- 以root用户身份在jenkins中运行shell命令
- 除了/etc/init.d/加启动脚本 或者在/etc/rc.local中加启动命令,还可以通过crontab来完成服务器重启后自动启动服务的操作
- linux定时运行命令脚本——crontab
- 如何实现使得一个普通用户以root身份运行命令
- linux下指定特定用户执行命令
- linux下查看用户登入系统相关命令及编写脚本(七)
- Centos 7关于rc.local脚本命令开机不执行及指定用户启动的解决方法
- linux定时运行命令脚本——crontab
- 如何实现使得一个普通用户以root身份运行命令和如何使用sudo命令?