I have an NTFS partition I use for storage, and I don't manage to have synapse searching into it.
For the moment, I have followed this advice, basically removing /media from PRUNEPATHS and running sudo updatedb
My updatedb.conf currently looks like this:
PRUNE_BIND_MOUNTS="yes"
# PRUNENAMES=".git .bzr .hg .svn"
# original
# PRUNEPATHS="/tmp /var/spool /media /home/.ecryptfs"
# PRUNEFS="NFS nfs nfs4 rpc_pipefs afs binfmt_misc proc smbfs autofs iso9660 ncpfs coda devpts ftpfs devfs mfs shfs sysfs cifs lustre tmpfs usbfs udf fuse.glusterfs fuse.sshfs curlftpfs ecryptfs fusesmb devtmpfs"
# modified
PRUNEPATHS="/tmp /var/spool /home/.ecryptfs"
PRUNEFS="rpc_pipefs afs binfmt_misc proc smbfs autofs iso9660 ncpfs coda devpts ftpfs devfs mfs shfs sysfs cifs lustre tmpfs usbfs udf fuse.glusterfs fuse.sshfs curlftpfs ecryptfs fusesmb devtmpfs"
Initially, I have not touched PRUNEFS.
Because it didn't work, I tried and remove NFS nfs nfs4, sudo updatedb took much longer, which was promising, but still synapse will not index the content of that partition, just the content of my main one.
Can somebody give me some ideas on how to fix it?
Thanks!
EDIT:
Following some testing, the full content of the partition appears when searching from Ubuntu's dashboard.
Only Synapse seems not to find it, but for one folder and its content. I compared permissions on the that folder and the others and they are all 777, so should be full accessible. I am quite confused honestly..
Best Answer
The solution mentioned in the question is not intended to make Synapse find directly any file on any partition by just typing its name, but to achieve this indirectly through
locate
; that is, to enablelocate
to have access to files on partitions that were not previously accessible — because excepted (via settings in the file/etc/updatedb.conf
) from being added to the databaseslocate
uses .Synapse operates file search in two ways: within entries of the Zeitgeist logs, and within those of
locate
. This type of search is implemented through specific plugins that are by default enabled in Synapse's Properties - Plugins. (If the Zeitgeist plugin is disabled, restarting the computer might be needed after (re)enabling the plugin in order for it to operate properly.) Folder search is based on a separate plugin.Zeitgeist results appear automatically:
(the same is the case for Folder Search)
But that is not the case for results of
locate
command. Results oflocate
appear only after selecting the last entry (the one with a question mark) in the list of normal search and pressing ENTER to run that command:For Synapse to show directly a file, it should be recorded in the Zeitgeist logs. But that will not happen until an event related to that file has taken place (like a movie being played, a document being opened), no matter the partition on which the file is located. Some differences between locations need to be mentioned though: see NOTE below.
Zeitgeist is not a file logger, but an activity (event) logger. (See here.)
The solution included in the question itself should make available for the
locate
process the databases that include files from a certain partition (which by default is excluded by the file/etc/updatedb.conf
), but those files will only be searched bylocate
(see second image above): only the ones already accessed will subsequently appear directly in Synapse (through Zeitgeist).Summing it up:
For a file to be directly shown in Synapse it should have been already accessed (e.g. opened).
*** NOTE: files created on certain privileged locations, like the Desktop, will appear directly. The same for $HOME folders.
For a file to be accessed through the
locate
command in Synapse it should not be on a partition excluded in/etc/updatedb.conf
, and, after being created, the commandsudo updatedb
is needed.File accessed through the file manager are added to the Zeitgeist log more quickly (or maybe are accessed more quickly within these logs) than when access through Synapse search (with
locate
). Once a file has been accessed from the file manager, and thus accessible later through a simple Synapse search, other files from the same location are accessible in Synapse through a simple search.Examples:
Creating a new file in
~/Documents
, Synapse cannot find it; runninglocate
in Synapse finds nothing. After runningsudo updatedb
Synapse doesn't show it directly, but running "locate" in Synapse finds the file. Opening the file, then searching again in Synapse: the file is shown directly.Creating a new file in
~/Desktop
, Synapse finds it directly.Creating a file new file on a second NTFS partition with the mount point
/media/username/DEPO
, none of the above works. After I open it, Synapse will show it directly. But if I want to find it without opening it (if it were a new file that I never opened) and try to uselocate
, it is not found, not even after runningsudo updatedb
. Editing the file/etc/updatedb.conf
as said in the question, restarting the computer and then runningsudo updatedb
will make the file accessible in Synapse throughlocate
.For the above to work for me, in the file
/etc/updatedb.conf
afterPRUNEPATHS=
the path/media
was removed, and now looks like so:locate
; if then I press ENTER to open it, or press TAB and select an application to open, and then search again in Synapse, nothing is found. If, after finding the file withlocate
, I press TAB, select to open the folder in the file manager, and open the file there, not only that file can be afterwards found in Synapse by just typing its name, but other files located within the same folder can be found in the same way also. (I think this is due to other plugins that involve Zeitgeist: Hybrid Search – complete Zeitgeist results by searching for similar files – and Related files– finds files related to other search results using Zeitgeist.)By the way, in my case removing
NFS nfs nfs4
afterPRUNEFS=
made Synapse take all CPU upon reboot and stuck my computer. I have changed that file back from a live session and proceeded as mentioned.