--- /dev/null
+It is advisable to create a ZFS snapshot, to be sure that there are some
+checkpoint state:
+
+ # zfs snap storage@snap1
+ $ cd /storage/.zfs/snapshot/snap1
+
+Run the index procedure:
+
+ $ glocate -db /tmp/db -index
+
+After that, you can print all filenames:
+
+ $ glocate -db /tmp/db
+
+List them with sizes and mtimes in machine parseable format:
+
+ $ glocate -db /tmp/db -machine
+
+Or in human-friendly tree-like format:
+
+ $ glocate -db /tmp/db -tree
+
+You can limit the hierarchy with the -root:
+
+ $ glocate -db /tmp/db -root music
+ [just a music]
+
+And you can specify glob pattern for case-insensitive match for each
+element path, that is automatically wrapped with "*":
+
+ $ glocate -db /tmp/db -root music blasphemy | grep "/$"
+ music/Blasphemy-2001-Gods_Of_War_+_Blood_Upon_The_Altar/
+ music/Cryptopsy-1994-Blasphemy_Made_Flesh/
+ music/Infernal_Blasphemy-2005-Unleashed/
+ music/Ravenous-Assembled_In_Blasphemy/
+ music/Sect_Of_Execration-2002-Baptized_Through_Blasphemy/
+ music/Spectral_Blasphemy-2012-Blasphmemial_Catastrophic/
+
+If you changed you dataset(s) somehow, then you should create new
+snapshot and feed its diff to the command:
+
+ # zfs snap storage@snap2
+ # zfs diff -FH storage@snap2 |
+ glocate -db /tmp/db -update /storage/
+
+Argument to -update is the prefix stripped from each filename of
+diff's output.