Skip to content

Instantly share code, notes, and snippets.

@vancluever
Last active August 22, 2024 07:44
Show Gist options
  • Save vancluever/d34b41eb77e6d077887c to your computer and use it in GitHub Desktop.
Save vancluever/d34b41eb77e6d077887c to your computer and use it in GitHub Desktop.
GNOME Tracker Disable

Disabling GNOME Tracker and Other Info

GNOME's tracker is a CPU and privacy hog. There's a pretty good case as to why it's neither useful nor necessary here: http://lduros.net/posts/tracker-sucks-thanks-tracker/

After discovering it chowing 2 cores, I decided to go about disabling it.

Directories

~/.cache/tracker
~/.local/share/tracker

After wiping and letting it do a fresh index on my almost new desktop, the total size of each of these directories was a whopping 3.9 GB!

Startup Files

On my Ubuntu GNOME setup, I found the following files:

$ ls  /etc/xdg/autostart/tracker-*
/etc/xdg/autostart/tracker-extract.desktop
/etc/xdg/autostart/tracker-miner-fs.desktop
/etc/xdg/autostart/tracker-store.desktop
/etc/xdg/autostart/tracker-miner-apps.desktop
/etc/xdg/autostart/tracker-miner-user-guides.desktop

You can disable these by adding Hidden=true to them. It's best done in your local .config directory because 1) you don't need sudo and 2) you are pretty much guaranteed that your changes won't be blown away by an update.

The tracker Binary

Running tracker will give you a vast array of tools to check on tracker and manage its processes.

$ tracker
usage: tracker [--version] [--help]
               <command> [<args>]

Available tracker commands are:
   daemon    Start, stop, pause and list processes responsible for indexing content
   info      Show information known about local files or items indexed
   index     Backup, restore, import and (re)index by MIME type or file name
   reset     Reset or remove index and revert configurations to defaults
   search    Search for content indexed or show content by type
   sparql    Query and update the index using SPARQL or search, list and tree the ontology
   sql       Query the database at the lowest level using SQL
   status    Show the indexing progress, content statistics and index state
   tag       Create, list or delete tags for indexed content

See 'tracker help <command>' to read about a specific subcommand.

Non-Invasive Disable Cheat Sheet

This disables everything but tracker-store, which even though it has a .desktop file, seems tenacious and starts up anyway. However, nothing gets indexed.

tracker daemon -t
cd ~/.config/autostart
cp -v /etc/xdg/autostart/tracker-*.desktop ./
for FILE in tracker-*.desktop; do echo Hidden=true >> $FILE; done
rm -rf ~/.cache/tracker ~/.local/share/tracker

Note that tracker daemon -t is for graceful termination. If you are having issues terminating processes or just want to take your frustration out, tracker daemon -k immediately kills all processes.

After this is done, tracker-store will still start on the next boot. However, nothing will be indexed. Your disk and CPU will be better for wear.

$ tracker status
Currently indexed: 0 files, 0 folders
Remaining space on database partition: 123 GB (78.9%)
All data miners are idle, indexing complete

Other References

@skuhl
Copy link

skuhl commented Jun 6, 2019

for FILE in `ls`; do echo Hidden=true >> $FILE; done

Should be changed to the following to prevent it from adding "Hidden=true" to the end of any files already existing in ~/.config/autostart :

for FILE in tracker-*.desktop; do echo Hidden=true >> $FILE; done

I really wish tracker would skip indexing files can't be indexed with minimal cpu or memory. I understand that the goal is to index everything, but I'd rather it skip some file that requires even just 512MB of memory or more than a second of 100% cpu usage (even if it legitimately those resources to index the file). Worse, there isn't any obvious user-facing feedback that tracker is the cause (short of top or system monitor) and/or which file is causing the problem. I think tracker would be nice if they sorted out these issues.

@vancluever
Copy link
Author

I can't believe that this is still being used! I've updated it with the oft mentioned fix to the pretty obvious oversight with the blind ls.

Again, I haven't touched or used this in years, and never messed with it on my most recent Fedora installs. YMMV.

@skuhl
Copy link

skuhl commented Jun 6, 2019

I think Ubuntu 19.04 was the first Ubuntu distribution to include tracker. This probably increased the number of tracker users in recent months and caused some of the interest in this. For me, there is(are) some file(s) that tracker occasionally touches that makes my machine crawl until the OOM killer decides to kill tracker. I don't know the tracker details, but it seems to regularly occur when I run a script which touches a lot of the files in my home directory.

@byroniac
Copy link

byroniac commented Jun 6, 2019

I've always been a GNOME guy, but I'm beginning to dislike GNOME in certain specifics if not in general, because of unnecessary (to me) tools like this (to be fair, these tools are appreciated and desired by some, apparently). I'm very thankful that this has been provided.

@zeus86
Copy link

zeus86 commented Jun 21, 2019

Thank you very much, this helped me out alot and saved me at least an hour of searching for this issue.

@zdyxry
Copy link

zdyxry commented Jul 5, 2019

Thanks.

@rohanshukla94
Copy link

rohanshukla94 commented Jul 18, 2019

@Joshfindit
Copy link

Interesting (possible new) quirk on a fresh install of Pop!_OS 19.10:
I have an sshfs automount (through fstab) drive with ~80000 files, and even if I let it finish (15-30min, resulting in Currently indexed: 108823 files, 28495 folders), it will completely drop all that metadata on the next reboot (resulting in Currently indexed: 149 files...)
Currently watching all the logs as well as /tmp/tracker-extract-files.1000/, but preliminary results are not promising.

@logix2
Copy link

logix2 commented May 1, 2020

Nowadays you can disable Tracker easier, by masking its systemd services, see here

@gaellafond
Copy link

gaellafond commented Jun 18, 2020

Ubuntu 20.04 user here. I tried all of these and still, the damn tracker was using 100% of a CPU core none stop. I look for over an hour, trying all the answers I could find. At the end, I had enough. I deleted the autostart files and rebooted the computer:
$ sudo rm /etc/xdg/autostart/tracker*
Still, the damn tracker process was sucking up my CPU. I can't uninstall the sucker since that would uninstall Ubuntu desktop binaries, so I deleted the tracker binaries and rebooted:
$ sudo rm /usr/libexec/tracker*
That did the trick. It's a radical solution, I know. I would not recommend anyone to do this, but it does work.

@alex4buba
Copy link

I am new to Linux, just moved here after 30+ years in Windows... Am afraid to follow things, maybe I will damage something...
Using KDE Plasma over Ubuntu 20.04 and am getting this error:

A start job for unit fwupd-refresh.service has finished with a failure.
The job identifier is 2337 and the job result is failed.

What should I do?
Thanks

@wachin
Copy link

wachin commented Nov 5, 2021

Thanks

@eevmanu
Copy link

eevmanu commented Mar 2, 2022

Nowadays you can disable Tracker easier, by masking its systemd services, see here

👍 , thx @logix2

Testing with the directories and it works (stop increasing the disk usage):

$ du -shc .cache/tracker/
380K	.cache/tracker/
380K	total

$ du -shc .local/share/tracker/
84K	.local/share/tracker/
84K	total

also, if you're confortable with terminal, I strongly recommend:

  • fzf to search patterns on filenames
  • ripgrep to search patterns over files content

@TadoTheMiner
Copy link

thanks for the files. Im on fedora and tracker command was not found. so I only deleted the .desktop files in xdg autostart

@cfgnunes
Copy link

Ubuntu 22.04 (workaround to disable Tracker3)

To disable Tracker3 on Ubuntu 22.04 and avoid updates:

sudo apt-mark hold tracker
sudo apt-mark hold tracker-extract
sudo apt-mark hold tracker-miner-fs

sudo chmod -x /usr/libexec/tracker-extract-3
sudo chmod -x /usr/libexec/tracker-miner-fs-3

tracker3 reset --filesystem --rss # Clean all database
tracker3 daemon --terminate

To undo:

sudo apt-mark unhold tracker
sudo apt-mark unhold tracker-extract
sudo apt-mark unhold tracker-miner-fs

sudo chmod +x /usr/libexec/tracker-extract-3
sudo chmod +x /usr/libexec/tracker-miner-fs-3

tracker3 daemon --start

This solution is a workaround. But it works.

If you want to check all settings of Tracker3 for the current user, run the command:

gsettings list-recursively | grep Tracker3

In this settings it is possible to enable or disable the Tracker3 for specific directories.

@fir3-1ce
Copy link

Ubuntu 22.04 (workaround to disable Tracker3)

To disable Tracker3 on Ubuntu 22.04 and avoid updates:

sudo apt-mark hold tracker
sudo apt-mark hold tracker-extract
sudo apt-mark hold tracker-miner-fs

sudo chmod -x /usr/libexec/tracker-extract-3
sudo chmod -x /usr/libexec/tracker-miner-fs-3

tracker3 reset --filesystem --rss # Clean all database
tracker3 daemon --terminate

To undo:

sudo apt-mark unhold tracker
sudo apt-mark unhold tracker-extract
sudo apt-mark unhold tracker-miner-fs

sudo chmod +x /usr/libexec/tracker-extract-3
sudo chmod +x /usr/libexec/tracker-miner-fs-3

tracker3 daemon --start

This solution is a workaround. But it works.

If you want to check all settings of Tracker3 for the current user, run the command:

gsettings list-recursively | grep Tracker3

In this settings it is possible to enable or disable the Tracker3 for specific directories.

This makes it so that Nautilus crashes if you attempt to search anything. Beware

@cfgnunes
Copy link

cfgnunes commented May 2, 2024

Hi, @fir3-1ce ! In fact... But I find another solution:

Step 1

systemctl --user mask tracker-extract-3.service tracker-miner-fs-3.service tracker-miner-rss-3.service tracker-writeback-3.service tracker-xdg-portal-3.service tracker-miner-fs-control-3.service

Step 2

tracker3 reset --filesystem --rss

Step 3
Reboot the system

References: https://ubuntuforums.org/showthread.php?t=2488303

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment