¿Por qué 'nadie' siempre inicia un nuevo programa 'find' que siempre consume mi memoria?

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

Este trabajo siempre se inicia automáticamente y consume mi memoria. Incluso después de killeso, comenzará varias horas después.

¿Qué es ese trabajo?

EDITAR

Nota: el pid es diferente del anterior porque maté al anterior, espere varias horas y luego llega el segundo.

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

Así es como se ve en una herramienta gráfica:

ingrese la descripción de la imagen aquí

Colmillo Yishu
fuente
1
Úselo pstree -pscon el PID de ese trabajo para ver qué lo inició.
muru
Actualicé un poco la respuesta, mira si es más útil ahora.
muru

Respuestas:

6

Como puede ver en el árbol de procesos, este comando se ejecuta updatedb, lo que actualiza la base de datos para el locatecomando. El comando de localización almacena estos datos para que pueda dar resultados casi instantáneamente en comparación con otros medios como él findmismo. El trabajo cron relevante es /etc/cron.daily/locate, como se puede ver en la herramienta GUI. Parece que estás usando en locatelugar de mlocate. mlocatese supone que debe hacer un mejor trabajo de ser eficiente en recursos . Intente instalar mlocateprimero:

sudo apt-get install mlocate

Consulte también: ¿Puedo deshabilitar updatedb.mlocate?

muru
fuente