Linux-Mint

控制自動啟動的 /usr/bin/find 程序

  • December 12, 2016

根據所附的htop螢幕截圖,在我登錄 Mint Linux 17.3 大約五分鐘後,它會自動為**/usr/bin/findUSER nobody**啟動一個後台程序,此時該程序消耗了 84% 到 100% 的(虛擬機的)CPU。(那時我可以不使用 htop 就知道該程序已啟動,因為系統幾乎不響應使用者命令……)

在此處輸入圖像描述

我嘗試使用htop -> niceNI設置為16,但沒有明顯效果:/usr/bin/find程序繼續消耗基本上所有系統的 CPU 週期。我發現從這個過程中奪回控制權的唯一方法是殺死它。

我已經搜尋了管理此過程的方法,以便它(a)表現良好或(b)根本不啟動。我試過的 GUI 工具沒有列出失控的程序。所以我懷疑在某個地方必須編輯一個配置文件以使這個過程表現得更好,但我不知道要應用哪個文件或哪些編輯。

find過程作為任務的一部分執行,該updatedb任務更新數據庫locate以查找給定名稱(部分)的文件。它由anacron觸發,這是一項在電腦開啟時執行計劃任務的服務。Anacron對cron進行了補充,後者在預定義的時間執行任務:如果您的電腦打開,updatedb 任務將在每晚執行,如果昨晚沒有機會執行,則 anacron 執行它。

更新b是最苛刻的日常任務。它以較低的 I/O 優先級和較低的 CPU 優先級執行(較低的 CPU 優先級是10( NInice )列中的意思),但即便如此,它也可能具有破壞性。您可以完全禁用它。

sudo dpkg-divert --add --rename --local --divert /etc/cron.daily/locate.noauto /etc/cron.daily/locate

如果要更新數據庫,請sudo /etc/cron.daily/locate.noauto手動執行。

如果你有/etc/cron.daily/mlocate,同樣適用(這是不同的實現locate;兩者都可以安裝在同一台機器上)。

引用自:https://unix.stackexchange.com/questions/329683