Dlaczego „nikt” nie zawsze uruchamia nowy program „znajdź”, który zawsze zużywa moją pamięć?


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                          
...

To zadanie zawsze zaczyna się automatycznie i zużywa moją pamięć. Nawet po killtym zacznie się kilka godzin później.

Co to za praca?

EDYTOWAĆ

Uwaga: pid różni się od powyższego, ponieważ zabiłem powyższy, poczekaj kilka godzin, a potem nadejdzie drugi.

$ 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)

Tak to wygląda w narzędziu graficznym:

wprowadź opis zdjęcia tutaj


1
Użyj pstree -psz PID tego zadania, aby zobaczyć, co go rozpoczęło.
muru

Zaktualizowałem nieco odpowiedź, aby sprawdzić, czy jest teraz bardziej przydatna.
muru

Odpowiedzi:


6

Jak widać z drzewa procesów, to polecenie jest uruchamiane przez updatedb, który aktualizuje bazę danych dla locatepolecenia. Polecenie locate przechowuje te dane, dzięki czemu może natychmiast dać wyniki w porównaniu z innymi środkami, takimi jak findsam. Odpowiednim zadaniem cron jest /etc/cron.daily/locate, jak widać z narzędzia GUI. Wygląda na to, że używasz locatezamiast mlocate. mlocatema lepiej radzić sobie z zasobooszczędnością . Spróbuj mlocatenajpierw zainstalować :

sudo apt-get install mlocate

Zobacz także: Czy mogę wyłączyć updatedb.mlocate?

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.