2012-03-25 28 views
2

我有我在繼承的服務器上定期運行的神祕進程。我的第一個想法是crontab是罪魁禍首。我用從給定this question以下命令通過kyle burton不屬於用戶的克朗職位?

for user in $(cut -f1 -d: /etc/passwd); do echo $user; crontab -u $user -l; done 

,發現大部分但不是全部。不知何故,似乎有不屬於任何用戶的cron進程,我無法看到這個命令。

我有兩個問題:一個cron作業可以存在,而不屬於任何用戶(例如,如果你只是創建一個文件並調用「crontab文件」將該文件與調用該命令的用戶相關聯嗎?而不是安裝在crontab中的一個文件?),第二,如果是這樣,我怎麼看到每個當前安裝的cron將運行的文件。謝謝。

編輯:我發現我的問題。一個非root用戶的舊crontab有一些被註釋掉的指令,所以我沒有看它們。但是,即使當指令被註釋掉了(至少在我的系統),除非在crontab已重新啓動與

/etc/init.d/cron restart 

的變化將不會生效。我正在查看過時的說明,但上面的代碼顯示所有cron作業確實有效。對不起,我的困惑。

+1

這可能是更好的unix.stackexchange.com – 2012-03-25 19:25:18

+0

似乎什麼是正確的問題類型已經隨着時間的推移而改變。我正在考慮將它移到unix SE上,但是你認爲應該是SO的問題類型,它不屬於程序員的SE,服務器管理員SE或UNIX SE? – hackartist 2012-03-25 19:46:42

+0

在這種情況下,它不是一個問題,如果問題適用於SO或不(或可能)(http://stackoverflow.com/faq)),但在unix.se上,您有一個更專注於回答問題的人羣,你很可能會得到更好的答案。 – 2012-03-25 19:59:17

回答

1

這可能是一個很大的問題,但是您的www dir中可能存在一個文件,該文件與在外部服務器上運行的cronjob匹配。

+0

我想到了這一點,並檢查日誌只是爲了安全起見,但我也知道正在運行的代碼只能在內部調用,所以我約99%確定它是在此服務器上運行的cron作業 – hackartist 2012-03-25 19:29:41

2

在Linux系統上最新版本的cron除了具有用戶cron文件(包括root)之外,還有存放在/ etc/crontab中的'system'crontabs - 通常設置爲運行/ etc/cron中的任何腳本。 [每小時|每天|每週|每月|每年]