15.9. Using GVFS Metadata
GVFS
has its metadata storage implemented as a set of simple key/value pairs information bound to a particular file. Thus, there is a tool for a user or application to save small data designed for runtime information such as icon position, last-played location, position in a document, emblems, notes, and so on.
Whenever a file or directory is moved, metadata is moved accordingly so that it stays connected to the respective file.
GVFS
stores all metadata privately so it is available only on the machine. However, GVFS
mounts and removable media are tracked as well.
Note
Removable media are now mounted in the
/run/media/
instead of the /media
directory.
To view and manipulate with metadata, you can use:
- the
gvfs-info
command; - the
gvfs-set-attribute
command; - or any other native GIO way of working with attributes.
In the following example, a custom metadata attribute is set. Notice the differences between particular
gvfs-info
calls and data persistence after a move or rename (note the gvfs-info
command output):
Example 15.5. Setting Custom Metadata Attribute
$ touch /tmp/myfile $ gvfs-info -a 'metadata::*' /tmp/myfile attributes: $ gvfs-set-attribute -t string /tmp/myfile 'metadata::mynote' 'Please remember to delete this file!' $ gvfs-info -a 'metadata::*' /tmp/myfile attributes: metadata::mynote: Please remember to delete this file! $ gvfs-move /tmp/myfile /tmp/newfile $ gvfs-info -a 'metadata::*' /tmp/newfile attributes: metadata::mynote: Please remember to delete this file!