The s3qlctrl command


s3qlctrl [options] <action> <mountpoint> ...

where action may be either of flushcache, upload-meta, cachesize or log-metadata.


The s3qlctrl command performs various actions on the S3QL file system mounted in mountpoint.

s3qlctrl can only be called by the user that mounted the file system and (if the file system was mounted with --allow-other or --allow-root) the root user.

The following actions may be specified:

Flush file system cache, i.e. upload all changed file data to the backend. The command blocks until the cache has been flushed.
Flush, and then drop file system cache. The command blocks until the cache has been flushed and dropped.
Upload metadata to the backend. All file system operations will block while a snapshot of the metadata is prepared for upload.

Changes the cache size of the file system. This action requires an additional argument that specifies the new cache size in KiB, so the complete command line is:

s3qlctrl [options] cachesize <mountpoint> <new-cache-size>

Change the amount of information that is logged into ~/.s3ql/mount.log file. The complete syntax is:

s3qlctrl [options] log <mountpoint> <level> [<module> [<module> ...]]

here level is the desired new log level and may be either of debug, info or warn. One or more module may only be specified with the debug level and allow to restrict the debug output to just the listed modules.


The s3qlctrl command also accepts the following options, no matter what specific action is being invoked:

--log <target> Destination for log messages. Specify none for standard output or syslog for the system logging daemon. Anything else will be interpreted as a file name. Log files will be rotated when they reach 1 MiB, and at most 5 old log files will be kept. Default: None
--debug-modules <modules>
 Activate debugging output from specified modules (use commas to separate multiple modules). Debug messages will be written to the target specified by the --log option.
--debug Activate debugging output from all S3QL modules. Debug messages will be written to the target specified by the --log option.
--quiet be really quiet
--version just print program version and exit

Hint: run s3qlctrl <action> --help to get help on the additional arguments that the different actions take.

Exit Codes

s3qlctrl may terminate with the following exit codes:

0:Everything went well.
1:An unexpected error occured. This may indicate a bug in the program.
2:Invalid command line argument or configuration file key.

See Also

The S3QL homepage is at

The full S3QL documentation should also be installed somewhere on your system, common locations are /usr/share/doc/s3ql or /usr/local/doc/s3ql.