2017-04-05 96 views
7

我注意到当我输入sudo crontab -e时,我没有看到我的cron命令,但是当我只有crontab -e时,有我的命令。“sudo crontab -e”和“crontab -e”之间的linux差异

2是否有区别?如果有,我应该在哪里放置我的cron命令,它应该在sudo中还是没有sudo?

谢谢!

+0

我认为这属于http://unix.stackexchange.com/,因为它与编程无关。 – Skynet

+0

@Skynet哦,我明白了。所以这是其他人倒下的原因? :( – PinoyStackOverflower

+0

我猜。但经过一点研究后,我发现这个问题其实是这个问题的重复:http://serverfault.com/questions/817499/when-to-use-sudo-with-crontab (并且顺便也有一个downvote) – Skynet

回答

8

2是否有区别?

是的的确,它们是不同的。 与sudo crontab -e不同的是,这些命令与root用户的凭证一起计划。以便sudo的cron表中的命令以root用户身份执行。

但随着crontab -e,命令将安排与谁是登录的普通用户。

我应该在哪里把我的cron命令,它应该是在须藤或不须藤?

那么,答案取决于你想要运行的命令的类型。
如果需要命令sudo访问,那么应该使用sudo crontab -e
否则,如果cron命令不需要任何特殊权限,则使用crontab -e


如果以太网网络接口eth0应禁用或以特定的时间启用,那么你将由于上述命令需要特殊权限(须藤)使用命令
ifconfig eth0 upifconfig eth0 down
,这些命令应该添加到sudo's cron选项卡

其他任何需要最小权限或没有权限从中删除文件的命令像$ rm /tmp/somefile这样的目录使用普通用户的crontab。

+1

感谢您提供非常丰富的答案! – PinoyStackOverflower

+0

@PinoyStackOverflower欢迎。很高兴我能够回答:) –