'nobody'が常に私のメモリを消費する新しい `find`プログラムを常に起動するのはなぜですか?


8
$ ps -elf | grep
...
0 D nobody   27320 27319  2  90  10 - 353471 sleep_ 07:54 ?       00:02:19 /usr/bin/find / -ignore_readdir_race ( -fstype NFS -o -fstype nfs -o -fstype nfs4 -o -fstype afs -o -fstype binfmt_misc -o -fstype proc -o -fstype smbfs -o -fstype autofs -o -fstype iso9660 -o -fstype ncpfs -o -fstype coda -o -fstype devpts -o -fstype ftpfs -o -fstype devfs -o -fstype mfs -o -fstype shfs -o -fstype sysfs -o -fstype cifs -o -fstype lustre_lite -o -fstype tmpfs -o -fstype usbfs -o -fstype udf -o -fstype ocfs2 -o -type d -regex \(^/tmp$\)\|\(^/usr/tmp$\)\|\(^/var/tmp$\)\|\(^/afs$\)\|\(^/amd$\)\|\(^/alex$\)\|\(^/var/spool$\)\|\(^/sfs$\)\|\(^/media$\)\|\(^/var/lib/schroot/mount$\) ) -prune -o -print0                          
...

このジョブは常に自動的に開始され、私のメモリを消費します。私がkillそれをした後でも、それは数時間後に始まります。

その仕事は何ですか?

編集

注:pidは上記のものとは異なります。私は上記のものを殺し、数時間待ってから2番目のものが来るからです。

$ pstree -psl
|-anacron(25920)---sh(25929)---run-parts(25930)---locate(26343)---updatedb.findut(26348)-+-frcode(26358)
|                                                                                        |-sort(26357)
|                                                                                        `-updatedb.findut(26356)---su(26387)---sh(26402)---find(26403)

これは、グラフィカルツールで次のように表示されます。

ここに画像の説明を入力してください


1
pstree -psそのジョブのPIDと一緒に使用して、ジョブの開始点を確認します。
muru、2014

私は答えを少し更新しました、今それがより有用であるかどうかを確認してください。
muru 2014

回答:


6

プロセスツリーからわかるように、このコマンドはによって実行されupdatedblocateコマンドのデータベースを更新します。Locateコマンドはこのデータを保存するため、それfind自体などの他の手段と比較して、ほぼ瞬時に結果を得ることができます。/etc/cron.daily/locateGUIツールからわかるように、関連するcronジョブはです。のlocate代わりに使用しているようですmlocateリソース効率mlocateが良いというより良い仕事をすることになっています。だからmlocate最初にインストールしてみてください:

sudo apt-get install mlocate

参照:updatedb.mlocateを無効にできますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.