The index server program (“indexsrv”) indexes file content and metadata. It is started by the HELIOS Service Controller (“srvsrv”; see HELIOS Base manual) or, for administrative purposes, it can be called manually as a program, e.g. to recreate or update the index database (re-indexing).
indexsrv -r <dir> [options] (re-index a directory) indexsrv -c <file> (re-index a single file) indexsrv -O <volume> [options] (optimizes index database) indexsrv -b <volume> <cmd ...> (locks volume for backup) indexsrv -h (help info)
The directory <dir> or file <file> must be part of a HELIOS volume for which indexing is activated.
Update index database for all files in the
specified directory and its subdirectories. Without specifying the -f
option, files are only
re-indexed if they have been modified since the last indexing process
(compare -s
option).
Update index
data base for a file <file>
. The file is re-indexed
irrespective of the modification date.
Optimizes the internal data structures of
the index database for <volume>
. This needs to be done
from time to time or the database may grow unlimited. <volume>
may be * to optimize all indexed volumes. Depending on the shell,
you probably need to enclose it in ticks ('*') to
protect it from shell expansion.
Stops updates to the
index database for <volume>
and executes a command or script.
When the script exits, normal index database operation is resumed. This
mode is useful to backup index databases.
Similiar to the UNIX “xargs” program, a {}
pattern in the
arguments is replaced with the path of the index database file.
-r
option:Delete all existing index data before re-indexing. Forces a complete rebuild of the index database.
This is mandatory after issuing the rebuild -f
command
because the file IDs may have changed.
List of comma-separated suffixes. Re-index all files with these suffixes, irrespective of the modification date. This option is useful if the indexing plug-in for a content type has been updated.
Sets the maximum number of simultaneous re-indexing processes. This option overrides the MaxProc preference.
Non-interactive mode. Errors create syslogs and the
exit code is not 0
.
List the directories that are currently being parsed.
List the files and directories that are currently being indexed.
Set the indexing plug-in run time-out (in seconds). This option overrides the RunTime preference.
Set the indexing plug-in term time (in seconds). This option overrides the TermTime preference.
# /usr/local/helios/sbin/indexsrv -r /demovol
This is mandatory after issuing the rebuild -f
command
because the file IDs may have changed.
# /usr/local/helios/sbin/indexsrv -f -r /demovol
Restrict CPU load by allowing only two simultaneously running indexing processes.
# /usr/local/helios/sbin/indexsrv -p 2 -r /demovol
# /usr/local/helios/sbin/indexsrv -v -s jpg -r /demovol
Back up index server database without stopping the server. The integrity of the index server database is preserved.
# indexsrv -b /demovol cp {} /Backups/DB/Index_DB
Different file types need different handling for meaningful database index data.
So they are processed by specific HELIOS indexing modules: “oiindexer”, “txtindexer”, “annotationindexer”, “pdfindexer”, “officeindexer”, “mediaindexer”, “zipindexer”, and “indesignindexer”. Some attributes (file name, modification date and finder comment) are indexed for all files and folders.
Third-parties can create custom modules using the HELIOS SDK. For details see www.helios.de/web/EN/support/sdk.html
The “oiindexer” module (“HELIOSDIR/lib/oiindexer.so”) is used for all image files that are supported by HELIOS. It parses the EXIF, IPTC and XMP metadata in image files and sets the corresponding attributes in the database.
The “txtindexer” module (“HELIOSDIR/lib/txtindexer.so”) stores a full-text index of text documents in the database. By default, “txtindexer” is used for “.txt”, “.c” and “.h” files. This can be controlled with the Suffixes preference. “txtindexer” can be configured to omit a list of “skip words” from the index, see the FilterDB preference.
The “annotationindexer” module (“HELIOSDIR/lib/annotationindexer.so”) is used for parsing files with an “.annotation” suffix. These files are created by the HELIOS WebShare annotation feature. It evaluates author, project title, file status and due date information.
The “pdfindexer”1 module (“HELIOSDIR/lib/pdfindexer.so”) stores a full-text and form field index of PDF documents in the database.
If PDF HandShake is installed during full-text indexing, indexing quality and speed are improved.
The “officeindexer”1 module (“HELIOSDIR/lib/officeindexer.so”) is used to generate a full-text index of Office and OpenOffice documents. It also imports a limited number of document metadata. It is also used for a number of other documents that are not natively supported at this time.
The “mediaindexer” module (“HELIOSDIR/lib/mediaindexer.so”) is used to parse “mp3”, “wma”, “wmv”, “m4p”, “m4a”, “aax”, and “mov” metadata in media files and sets the corresponding attributes in the database.
The “indesignindexer” module (“HELIOSDIR/lib/indesignindexer.so”) is used to generate an index of XMP metadata in InDesign documents.
The “zipindexer” module (“HELIOSDIR/lib/zipindexer.so”) collects all names of the files contained in the Zip archive in the full-text database.
The file “HELIOSDIR/var/conf/indexsuffixmap” can be used to assign a content type and an item kind for files for which no suitable indexing module is available. Each line of this text file has the structure
suffix, kMDItemContentType, kMDItemKind
and comment lines (starting with #
) are ignored.
# Index Server suffix map html, public.html, HTML document ps, com.adobe.postscript, PostScript