各位,
find
由无人执行在每次新启动时自动运行(在早上我启动系统时)。我猜这与updatedb
.我怎样才能确认我的假设并阻止它自动执行。我的ps aux | grep find
输出如下:
~~> ps aux | grep find
root 4492 0.0 0.0 4288 748 ? SN 08:10 0:00 /bin/sh /usr/bin/updatedb.findutils
root 4500 0.0 0.0 4288 108 ? SN 08:10 0:00 /bin/sh /usr/bin/updatedb.findutils
root 4526 0.0 0.0 55444 2988 ? SN 08:10 0:00 su nobody -s /bin/sh -c /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
nobody 4538 0.0 0.0 4288 748 ? SNs 08:10 0:00 sh -c /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
nobody 4539 7.9 0.0 16844 2752 ? DN 08:10 0:06 /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
cathyserver 5223 0.0 0.0 13380 940 pts/1 S+ 08:12 0:00 grep find
第一印象是某个守护进程正在寻找/var /tmp /var/spool /alex /amd /afs /var/tmp
某些东西。我怎样才能找到哪个进程/守护进程执行这个?这是任何网络服务器吗?顺便说一句/alex /amd
,我的系统中没有任何目录。
答案1
确实是find
的一部分updatedb
,每天运行,由cron
守护进程触发。
您可以通过将find
进程列表中的参数与 中的配置进行比较来进行验证/etc/updatedb.conf
。
在 Debian Stretch 上,您可以在替代项和之间切换locate
及其相应命令:updatedb
mlocate
locate.findutils
sudo apt install mlocate locate
sudo update-alternatives --config locate
移动定位
cron
守护进程使用/etc/cron.daily/mlocate
.
要禁用每日运行,您可以卸载该软件包mlocate
或通过删除执行权来禁用其 cron 作业:
sudo chmod -x /etc/cron.daily/mlocate
要重新启用它:
sudo chmod +x /etc/cron.daily/mlocate
定位.findutils
cron
守护进程使用/etc/cron.daily/locate
.
要禁用每日运行,您可以卸载该软件包locate
或通过删除执行权来禁用其 cron 作业:
sudo chmod -x /etc/cron.daily/locate
要重新启用它:
sudo chmod +x /etc/cron.daily/locate
禁用/启用线路的来源:https://askubuntu.com/questions/268130/can-i-disable-updatedb-mlocate