Linux Lite Forums
Software - Support => Other => Topic started by: Rosika on January 25, 2023, 09:27:58 AM
-
Hi all, :)
I just stumbled over some curious behaviour. The "locate" command doesnīt seem to include my home directory.
On my desktop I created a text-file "prov.txt", then ran "sudo updatedb" but
"locate prov.txt" didnīt return any results. :023:
The "find" command however doesnīt have any difficulties finding it.
Is it possible that the home directory is excluded by "locate"?
Many thanks in advance and many greetings.
Rosika :wave
-
Does it report older files in your home directory by any chance ?
If so check the date/time on the file in
ls -al /var/lib/mlocate/
-
Hi stevef:
Thanks for your reply.
Does it report older files in your home directory by any chance ?
No. locate doesnīt seem to find anything in my home directory.
I still punched in your command but just got this:
ls -al /var/lib/mlocate/
ls: cannot access '/var/lib/mlocate/': No such file or directory
Thatīs weird... :029:
Many greetings from Rosika :wave
-
OK. For me, locate does not exclude the home directory on my system, but can't find anything not in the database.
Try
locate --statistics
This should report your database location. Then check the date time on the file it is using.
-
Hi stevef:
So sorry. Canīt even do that:
locate --statistics
locate: unrecognized option '--statistics'
-
I dontīt know if it helps anything at all. Iīll give you the contents of updatedb.conf
cat /etc/updatedb.conf
PRUNE_BIND_MOUNTS="yes"
# PRUNENAMES=".git .bzr .hg .svn"
PRUNEPATHS="/tmp /var/spool /media /var/lib/os-prober /var/lib/ceph /home/.ecryptfs
/var/lib/schroot"
PRUNEFS="NFS afs autofs binfmt_misc ceph cgroup cgroup2 cifs coda configfs curlftpfs
debugfs devfs devpts devtmpfs ecryptfs ftpfs fuse.ceph fuse.cryfs fuse.encfs
fuse.glusterfs fuse.gvfsd-fuse fuse.mfs fuse.rclone fuse.rozofs fuse.sshfs fusectl
fusesmb hugetlbfs iso9660 lustre lustre_lite mfs mqueue ncpfs nfs nfs4 ocfs ocfs2 proc
pstore rpc_pipefs securityfs shfs smbfs sysfs tmpfs tracefs udev udf usbfs"
-
You may have plocate in LL6. What's date and time of the file plocate.db at
ls -al /var/lib/plocate/
-
Hi stevef, :)
thanks for your help.
You may have plocate in LL6
Yes, indeed LL 6.2 came with both installed:
dglob plocate; and dglob mlocate
plocate:amd64
mlocate:all
The output of the command you provided is:
ls -al /var/lib/plocate/
total 7000
drwxr-xr-x 2 root root 4096 Jan 25 16:20 .
drwxr-xr-x 80 root root 4096 Jan 19 17:41 ..
-rw-r--r-- 1 root root 183 Feb 17 2022 CACHEDIR.TAG
-rw-r----- 1 root plocate 7142630 Jan 25 16:20 plocate.db
So date and time of plocate.db is:
Jan 25 16:20
Well, I tried the command just yesterday...
Thanks again and many greetings
Rosika :wave
-
Rosika,
I'm not helping much. On the systems I have, mlocate (LL5) and plocate (LL6) both find files in the home directory (and any sub-directories) - subject to them being cached in the database. Is your disk btrfs ?
I found this which suggest some issues with mlocate and btrfs related to home directory
https://ask.fedoraproject.org/t/the-locate-command-doesnt-show-files-from-home/19470
-
Hi stevef, :)
thanks for the link.
In fact I stumbled over the same article yesterday but didnīt bother referring to it as it doesnīt seem to apply with my case.
To answer your question:
No, the files system for my LL installation is ext3 for root as well as for home.
So I think changing the respective line to
PRUNE_BIND_MOUNTS = "no"
wouldnīt be of help here. :023:
Curious though: the locate command does find files elsewhere. So generally it works alright. Itīs just the home partition which seems to be excluded.
Thanks anyway for your time and help.
Many greetings
Rosika :wave