4

When I searched for a file called 60-evdev.hwdb using Nautilus for instance, although it took about half an hour, in the end it returned to say that it couldn't find such a file on my machine.

However when I ran a search with locate in Terminal it found it almost immediately and it was here:

-rw-r--r-- 1 root root 4891 May 12 10:39 /lib/udev/hwdb.d/60-evdev.hwdb

So why couldn't Nautilus find it? Does Nautilus filter out certain types of items or something? If so, is there any way to tweak or disable this filter? I should also be noted that if I go into the folder where I now know the file is with Nautilus it can see it there, just not find it through searching, but as it uses a real-time search it should really find it, shouldn't it?

I am running Ubuntu GNOME 16.04 with GNOME 3.20.

2
  • 1
    Where were you searching from? I'd be stunned if Nautilus searched the whole of / for anything the user asked.
    – muru
    Jun 25, 2016 at 17:47
  • @muru: I used the standard search facility when I went into the / directory. It took ages, but didn't find anything.
    – user364819
    Jun 25, 2016 at 18:42

1 Answer 1

4

Nautilus search ...

  1. if tracker is available it will show the results from that.

    From the link:

    Tracker provides the following:

    • Indexer for desktop search (for more details see this spec : https://wiki.ubuntu.com/IntegratedDesktopSearch)

    • Tag database for doing keyword tagging of any object

    • Extensible metadata database for apps like gedit and rhythmbox which need to add custom metadata to files

    • Database for first class objects allows using tracker's database for storage and implementation of First Class Objects and the Gnome 3.0 Model.

  2. if there is no tracker it uses find.

Check if trackerd is active. That would have Nautilus use option 1. The time you indicate would have me believe it used the 2nd option.

Possibility: you have trackerd active but it is not accurate. Though that does not explain why it took a 1/2 hour.


Nautilus found the file in less than a second for me (it instantly came back):

enter image description here

So I assume yours was using "find". You probably need to redo the search and check the process list for what it does when searching.


Using find also got it back within a second:

$ find / -name 60-evdev.hwdb -print |more 
find: ‘/var/lib/mysql-files’: Permission denied
find: ‘/var/lib/mysql’: Permission denied
/lib/udev/hwdb.d/60-evdev.hwdb
find: ‘/var/lib/udisks2’: Permission denied
find: ‘/var/lib/colord/.cache’: Permission denied
...

The link also provides a method on disabling tracker but your problem is probably that the tracker is not running.

Disabling tracker for globally (for all users)

Edit /etc/xdg/autostart/trackerd.desktop file with root priviledges (sudo vim, gksudo gedit ...). Add Hidden=true to the end of the file. Do the same for /etc/xdg/autostart/tracker-applet.desktop if you want


Disabling tracker for your user only. Enter the directory ~/.config/autostart, create it if it does not exist. Create a file named trackerd.desktop. Paste the following into the file, save and exit

[Desktop Entry]
Encoding=UTF-8
Name=Tracker
Hidden=true
3
  • trackerd.desktop does not seem to be in any of the autostart locations, should it be by default? So how exactly do I enable it? What should the .desktop file look like?
    – user364819
    Jun 25, 2016 at 18:50
  • I tested on both Nautilus and Nemo without tracker running - no find processes were running. Though Nautilus was much faster than Nemo in finding it
    – muru
    Jun 25, 2016 at 18:50
  • @ParanoidPanda but you want to find it don't you? then don't use the last bit :+) Make sure trackerd is running.
    – Rinzwind
    Jun 25, 2016 at 18:52

You must log in to answer this question.