Command line operation is available on all supported desktop operating systems. Running SpiderOak Groups with --help
will give you a general overview. The output of the --help
command can also be found at the bottom of this article.
Beginning with version 6.0, paths to the executable are:
- Windows:
C:\Program Files\SpiderOak Groups\SpiderOakGroups.exe
- Mac OS X:
/Applications/SpiderOakGroups.app/Contents/MacOS/SpiderOakGroups
- Linux:
/usr/bin/SpiderOakGroups
Below are additional details on two options that an administrator may find especially useful.
--SETUP=SETUP_FILE
The --setup
option automates initial login of the client through the use of a JSON configuration file. At a minimum, the file should contain these options:
username
- The username of the account to be logged into.password
- The password of the account to be logged into. An auth token generated in the Management Console by the administrator can be used in place of the account password.device_name
- The name the device should be given within the SpiderOak Groups application.fingerprint
- The organization’s fingerprint (found in the Management Console).
Optional:
reinstall
- Should be set to true or false. The setting defaults to false if omitted. This should only be set to true if SpiderOak Groups is being reinstalled on a device it was installed on before with the exact same file structure. This option should not be used to recover files to a new device. In the event of a reinstall, thedevice_name
should be the name of an existing device that is being reinstalled.
When completed, the JSON file should look like this:
{ "username": "username", "password": "password", "reinstall": false, "device_name": "device name", "fingerprint": "org fingerprint" }
--POINT-IN-TIME <DATE/TIME>
As of version 6.1.2, point-in-time recovery of directories and their contents is supported by the SpiderOak Groups application. This feature, used in conjunction with --restore
, allows for the recovery of a directory as it appeared on a particular date and/or time.
The general syntax of the command (using Windows in this example) is:
SpiderOakGroups.exe --restore C:\DIRECTORY\TO\RESTORE --point-in-time YYYY-MM-DD/hh:mm
By default, the restored directory is placed in the SpiderOak Groups download directory, not in the original location. This prevents the possibility of data being erroneously overwritten. You may also combine --point-in-time
with one or more of the following options:
--output /TARGET/LOCATION
specifies where to download the directory to. If not specified, it will be downloaded to the default download directory.--device N
specifies the device number (not name) to download the directory from. If not specified, the directory will be downloaded from the current device.--verbose
will specify the files being downloaded.--simulate
will report what files would be downloaded, but will not actually download anything. By its nature this command is verbose, so there is no need to specify verbose when--simulate
is used.
Prior to using --point-in-time
, you may find it helpful to use --tree-changelog
to see what restore points are available. Note however that point in time restoration is not retroactive and can only restore points backed up since the installation of a SpiderOak Groups version that supports this feature (version 6.1.2 or later). For example, if you upgraded on February 1, 2016 to a version that supports point in time restoration, then you will not be able to restore to points prior to that date even if --tree-changelog
reports prior changes. Note also that the output of --tree-changelog
can be very large. It is recommended that you redirect the output of the command to a file so that it can be more easily worked with.
The --point-in-time
option also gives administrators access to files maintained through Purgehold. In order to access the held files the administrator must have previously enabled Purgehold for the user and, before using --point-in-time
, must run SpiderOak Groups with the --get-held-metadata
option. This command will download information related to any deleted files being maintained by Purgehold so that they can be restored.
--HELP
OUTPUT:
Usage: SpiderOak Groups basic command line usage: Options: --version show program's version number and exit -h, --help show this help message and exit -v, --verbose be verbose: show detailed status information as it happens --redirect=FILE Redirect console output to file -d NUMBER, --device=NUMBER operate on specified device id (default is the local device) -o DIR, --output=DIR Target dir to restore items to (default is normal download dir) --enable-schedule honor the set activity schedule, even in batchmode (normally the schedule is ignored in batchmode) --disable-schedule disable activity scheduling Operational Modes and Commands: --scan, --scan-only scan the filesystem for changes and report a summary --build, --scan-and-build-only scan the filesystem, and build all possible file system changes as shelved upload transactions, and exit without uploading them --sync like batchmode, but only backup/update synced folders --backup=TARGET ad hoc operation: backup whatever exists at TARGET in the filesystem and exit (ignores existing backup selection.) --restore=item Restore a folder, file, or version. Run "--restore help" for more info --batchmode like headless, but will exit when all available work is done --headless run in headless mode (without the graphical interface) --purge=item purge a folder, file (including historical versions) Information Commands: --userinfo, --user-info Show user and device info --shelved-x, --print-shelved-x Show information about each shelved upload transaction --space Show space usage information by category and by device --tree Show the hierarchy of stored backup folders --fulllist Show all folders and files stored on device --tree-changelog Show a log of how the hierarchy of stored backup folders has changed over time --journal-changelog=folder_or_journal Show the changelog of a given folder Backup Selection Manipulation Commands: --force Do in/exclusion even if the path doesn't exist --selection, --print-selection Show a list of selected and excluded backup items --reset-selection Reset selection (but preserve excluded files) --exclude-file=EXCLUDE_FILE Exclude the given file from the selection --include-file=INCLUDE_FILE Include the given file from the selection --exclude-dir=EXCLUDE_DIR Exclude the given directory from the selection --include-dir=INCLUDE_DIR Include the given directory from the selection Maintenance Commands: --rebuild-reference-database rebuild the SpiderOak Groups reference database (can take awhile) --billing print a secure web auto-login URL for billing info --destroy-shelved-x destroy each shelved upload transaction already in progress. --repair repair a local SpiderOak Groups installation --get-held-metadata retrieve metadata held by server according to policy --purge-historical-versions purge historical versions of a folder, file: "all": purge all historical versions of all files; ' "hM,dN,w": hourly for last M hours, daily for last N days, weekly thereafter (also accepts (m)onthly and (y)early); ' no option: hourly for last 24 hours, daily for last month, then weekly thereafter --purge-deleted-items=PURGE_DELETED_ITEMS purge deleted items older than N days --vacuum Vacuum SpiderOak Groups's local database (rebuilds indexs and reclaims local disk space) --list-orphan-external-files list parent_id's of unreferenced external block files --convert-to-hybrid-db convert SpiderOak Groups's local database to use external files --generate-previews generate missing image previews for the local device Dangerous/Support Commands: Caution: Do not use these commands unless advised by SpiderOak Groups support. They can damage your installation if used improperly. --apply-subscription-xact apply all transactions previously received from remote devices -- (not intended for general use -- this normally happens automatically) --empty-garbage-bin purge all deleted items on the current device --orphans=ACTION help, find, free orphans --request-diagnostic This is similar to asking the user to send us log files, in that it gives us access to meta-information about their account including file names and space usage. It does not however give us plain text access to any keys or actual data -- just metadata. Account Commands: --rename-device=NEWNAME Rename the specified device with name NEWNAME --bootstrap=ACCOUNT_DEFINITION_FILE Read a json definition file and use contents to create a new account (Deprecated - use --setup instead.) --setup=SETUP_FILE Read a json definition file and use contents to create a new account. See https://spideroak.com/faq/how_do_i_ set_up_a_new_user_from_the_commandline for more info, or use '--setup=-' to prompt for setup details. Share Commands: --share-password=SHARE_PASSWORD optional password for --create-share --list-shares List shares --create-share=CREATE_SHARE Create an xact with a new share. run 'help' for syntaxt --delete-share=DELETE_SHARE Create an xact deleting a share --share-single-file=TARGET share a single file, returning a URL Restore Options: --point-in-time=DATE Use this option together with --restore to restore data as stored at DATE. Format: YYYY-MM- DD[/HH:MM[:SS]] --simulate Use this option together with --restore to simulate the download and list the files to download