可以在crontab中以root用户身份运行Bash文件吗?
我需要定期运行该文件,并且它必须是root 可能吗可以在crontab中以root用户身份运行Bash文件吗?,bash,crontab,Bash,Crontab,我需要定期运行该文件,并且它必须是root 可能吗 [root@file nutch-0.9]# locate crontab /etc/crontab /etc/sysconfig/crontab /usr/bin/crontab /usr/share/man/man1/crontab.1.gz /usr/share/man/man1p/crontab.1p.gz /usr/share/man/man5/crontab.5.gz /usr/share/vim/vim71/syntax/cron
[root@file nutch-0.9]# locate crontab
/etc/crontab
/etc/sysconfig/crontab
/usr/bin/crontab
/usr/share/man/man1/crontab.1.gz
/usr/share/man/man1p/crontab.1p.gz
/usr/share/man/man5/crontab.5.gz
/usr/share/vim/vim71/syntax/crontab.vim
[root@file nutch-0.9]#
是的,只需将其添加到根用户的;运行
crontab-e
命令
cron存储其文件的位置可能有点奇怪,因此使用crontab-e
命令可以确保它位于正确的位置,我相信它会检查语法。您可以这样做
crontab -e
作为root。我相信root的crontab中的所有条目都作为root运行。您可以让它调用Bash脚本作为操作,它应该做您想做的事情。一种方法(通过sudo):
只需指定
root
作为/etc/crontab
中条目的用户:
0 0 * * * root somecommand
或者,您也可以使用
crontab-e
作为root用户,将该命令添加到root用户的个人crontab中。无论如何,您都需要访问root用户帐户
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * command to be executed
如果您想在crontab中以root用户身份输入某些内容,只需登录到您的root帐户“crontab-e”,然后瞧…root crontab。您也可以尝试在serverfault上问这个问题。我列出了所有crontab文件,您的意思是我应该修改哪些文件?与其自己直接修改crontab文件,whatsisname建议您使用“crontab-e”命令,该命令将编辑正确的crontab。谢谢你,顺便说一句,你能告诉我其他crontab文件的用途吗?/usr/bin中的crontab文件是一个可执行文件,如果你键入“crontab-e”,它将打开一个编辑器。/usr/share/man下面的文件是你键入“man crontab”时得到的手动页面“/usr/share/vim*/sytax/crontab.vim是vim的特殊语法高亮显示(为crontab文件激活)。这对我不起作用。我收到消息/bin/sh:1root:notfound,这会导致cron将“root”解释为命令。在一些(较旧)版本的cron中,crontab中指定了一个用户。请参见是否应为
sudo crontab-e
@FreeMemory@Alper当您是root用户时,不需要sudo