2017-04-05 98 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歡迎。很高興我能夠回答:) –