2

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..

  • I forgot to add, the partition in question is mounted automatically at startup. – Aldo Nov 9 '14 at 19:53
  • Mounted how? For example gvfs mounts by default have drwx------ permissions, so are not accessible to root. – steeldriver Nov 9 '14 at 20:07
  • The partition is media/username/Data2 I have added in fstab a line UUID=0C0B1E /media/username/Data2/ ntfs-3g auto,user,rw 0 0 I didn't change permissions for the directory in any way though. I understand I could have also created a directory to mount in media, for instance /media/Data2/ and then changed permissions with chmod -R 777 , as suggested here: askubuntu.com/questions/547528/… Can I solve by changing permissions to /data/username/Data2/ then? – Aldo Nov 9 '14 at 20:43
  • I just checked, the folder has the following permissions: drwxrwxrwx 1 root root 36864 giu 27 23:18 Data2 – Aldo Nov 9 '14 at 20:54
  • OK in that case it seems unlikely to be a permissions issue – steeldriver Nov 9 '14 at 22:04
0

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 enable locate 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 databases locate uses .

Synapse operates file search in two ways: within entries of the Zeitgeist logs, and within those of locate. This types 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:

enter image description here

(the same is the case for Folder Search)

But that is not the case for results of locate command. Results of locate 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:

enter image description here

For Synapse to show directly a file, that 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 by locate (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 command sudo 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; running locate in Synapse finds nothing. After running sudo 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 use locate, it is not found, not even after running sudo updatedb. Editing the file /etc/updatedb.conf as said in the question, restarting the computer and then running sudo updatedb will make the file accessible in Synapse through locate.

For the above to work for me, in the file /etc/updatedb.conf after PRUNEPATHS= the path /media was removed, and now looks like so:

PRUNE_BIND_MOUNTS="yes"
# PRUNENAMES=".git .bzr .hg .svn"
PRUNEPATHS="/tmp /var/spool /var/lib/os-prober /var/lib/ceph /home/.ecryptfs /var/lib/schroot"
PRUNEFS="NFS nfs nfs4 rpc_pipefs afs binfmt_misc proc smbfs autofs iso9660 ncpfs coda devpts ftpfs devfs devtmpfs fuse.mfs shfs sysfs cifs lustre tmpfs usbfs udf fuse.glusterfs fuse.sshfs curlftpfs ceph fuse.ceph fuse.rozofs ecryptfs fusesmb"
  • Searching for a podcast on the secondary partition by typing first letters of its name, Synapse finds nothing, but it finds it with 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 with locate, 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 after PRUNEFS= 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.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.