我正在運行 Fedora 31,有時我會隨機獲得數十秒的高 CPU 時間,例如每隔十分鐘左右,這是由sendmail
.
到目前為止我還無法找出原因。
您能幫我找出根本原因以及如何預防嗎?目前我不知道有任何服務/作業可以執行該進程。它也會在電腦空閒狀態下發生。
這是我迄今為止的觀察:
當CPU使用率很高時我可以ps faux | grep sendmail
ps faux | grep sendmail
/usr/bin/bash /usr/sbin/sendmail -FCronDaemon -i -odi -oem -oi -t -f <username>
過程which sendmail
$ which sendmail
/usr/sbin/sendmail
$ ls -la /usr/sbin/sendmail
lrwxrwxrwx 1 root root 21 Mar 3 11:14 /usr/sbin/sendmail -> /etc/alternatives/mta
$ ls -la /etc/alternatives/mta
lrwxrwxrwx 1 root root 22 Mar 3 11:14 /etc/alternatives/mta -> /usr/bin/esmtp-wrapper
$ ls -la /usr/bin/esmtp-wrapper
-rwxr-xr-x 1 root root 3378 Jul 25 2019 /usr/bin/esmtp-wrapper
$ ls -la /usr/bin/esmtp-wrapper
我試著看看mail
$ mail
No mail for <username>
裡面的所有文件var/spool/mail/
都是空的,/var/log/maillog
都是空的。
有任何想法嗎?
答案1
/usr/bin/bash /usr/sbin/sendmail -FCronDaemon -i -odi -oem -oi -t -f <username>
<username>
可能正在執行一個 cron 作業。也許它大約每十分鐘運行一次,並且每次都會消耗大量 CPU。
cron
這個 sendmail 進程看起來像是透過電子郵件發送 cron 作業的輸出而啟動的。產生的電子郵件通常會傳送至/var/mail/<username>
,但 cron 作業可以將其導向到某個可能的遠端電子郵件地址。
的輸出是什麼crontab -l -u <username>
?