- takes care about rclone application version check and upgrade
- keeps track of rclone run status and execution results
- enables creation/editing/removing of tasks
- lets task directly starting on demand
- add tasks to cron for scheduling
- lets perform single rclone commands and output directly to the WebGUI page (refer to the Single Command screenshots at the bottom of this post)
- works currently with x64 architecture (can be amended on demand)
- works on all plattforms (embedded, full)
- does not need jail or pkg install
- add pages to XigmaNAS WebGUI extensions
- includes extension maintenance (update & removal) without the need to work with the system console or shell CLI
INSTALLATION AND CONFIGURATION
Prior to the installation perform a backup of the XigmaNAS configuration via SYSTEM > BACKUP/RESTORE > Download configuration.
This extension can be easily installed with the OneButtonInstaller.
Update the extensions list manually prior to the installation if the switch Update extensions list automatically is not checked in OneButtonInstaller.
After successfull installation proceed to Extensions > Rclone Rclone is now available to run (could be used also on the CLI, type rclone to see the available commands and options).
One can change now the path and file name of the rclone config file inside the extension to another location/share if one don't want to use it in the path /Your/Extension/Path/rclone/ (option Configuration File in the extension) and push 'Save' to store the setting.
For rclone CLI usage always use the additional parameters --config /mnt/DATA/extensions/rclone/rclone.conf and eventually --log-file /mnt/DATA/extensions/rclone/rclone.log.
Next step would be to
- define one (or more) remotes - I attached the app RcloneBrowser (RCB) for MS Windows 64bit as well as the rclone Windows executable 64bit in /Your/Extension/Path/rclone/RcloneBrowser.
One could run it directly from the server or copy the whole directory to a folder on your client PC and run it from there, no installation is required.
Executables for Linux and macOS as well as installation instructions can be found at the RCB Github pages
Running RCB for the first time it is required to setup the path to the Windows executable in the above mentioned directory and the rclone config file at your XigmaNAS server which can be found directly in /Your/Extension/Path/rclone/rclone.conf -> in RCB > Files > Preferences.
Save the settings with OK and on the RCB main screen at the bottom hit Config to define your remotes.
The process for this is really straight forward and in the Rclone documentation described for many supported cloud services.
For some cloud services a browser window on your local machine will open to confirm to give access for Rclone to the service.
After the definition of the remote(s) one could browse the remotes in RCB and perfom up/downloads etc but now we would define some tasks on the XigmaNAS server - therefore refresh the RClone extension page and the defined remote(s) should appear under Extensions > Rclone > Configuration > Defined Remotes.
- Under Add Task provide a Name, Source, Destination, backup Mode and eventually additional Parameters - hit Save button to store the Definition.
- Now we are ready to execute the task directly from the task list with Execute (the task will run in the background, status shows running and after finishing display the datetime of the last successful run or show failed if there were problems during execution - output will be written to rclone.log in the extension directory).
- With Schedule to cron the appropriate commands will be written to the cron table to perform an execution of the task every night at 1:00 - change the cron job directly under System > Advanced > Cron to your needs (run daily/weekly etc ...).
RCLONE LOG VIEW
For users of the extension Extended GUI - to show the rclone log under Diagnostics > Log > Rclone one can use the sample code below, copy and paste to the file defined in Extensions > Extended GUI > Tools > User Defined Files > Logs.
Pls obey to change the 'logfile' path to the appropriate file path used for your rclone extension -> /mnt/Your/Extensions/Path/rclone/rclone.log
Code: Select all
[ 'visible' => true, 'desc' => gtext('Rclone'), 'logfile' => "/mnt/DATA/extensions/rclone/rclone.log", 'filename' => 'rclone.log', 'type' => 'plain', "size" => '32768', 'pattern' => '/^(\S+\s+\S+)\s+(\S+)\s+(\S+)\s+(.*)$/', 'columns' => [ ['title' => gtext('Date & Time'),'width' => '10%','hdrclass' => 'lhell','class' => 'lcell','param' => 'style="white-space: nowrap;"','pmid' => 1], ['title' => gtext('Level'),'width' => '5%','hdrclass' => 'lhell','class' => 'lcell','param' => 'style="white-space: nowrap;"','pmid' => 2], ['title' => gtext('Event'),'hdrclass' => 'lhebl','class' => 'lcebl','param' => '','pmid' => 4] ]],
Output in Diagnostic > Log > Rclone
To get a one-line condensed output of the rclone stats (when used the -v or -vv flag) in the log file one can append the flag --stats-one-line to the task - compare with the previous screenshot
Rclone is on Launchpad - if someone wants to contribute please go to Rclone on Launchpad for translation!
This extension is provided AS-IS, I'm NOT responsible for any data loss or damage caused by the use of it, use it solely at your own risk.
Version 1.1 - 2018.11.16
minor GUI improvements
N: add 'mount' and 'check' commands to command dropdown
N: add task name to PID in Status for identification if more tasks are running simultaneously,
to see the names for already defined tasks they must be loaded to edit and just saved once again
N: add 'about' command (button) to 'Defined Remotes'
N: add 'Single Command' feature to perform on demand calls with output directly to the GUI page,
uses the 'Additional Parameters / Single Command' combined input field
N: add Greek translation
N: add Spanish translation
N: add Swedish translation
C: update German translation
Version 1.0 - 2018.11.05
further GUI improvements
N: add German translation
Version 0.2 - 2018.11.03
several GUI improvements
N: allow task editing
C: delete appropriate cron tab entries on task remove
F: browser button overlapped next field in some cases
Version 0.1 - 2018.10.30
N: ... new feature
C: ... changes
F: ... bug fix
About defined remotes
Single Comand line
Output of Single Command
Currently the definition of remotes needs some extra work, there are efforts to create a rclone GUI in the rclone community - this is in a very early state but could solve some of the caveats for headless servers like XigmaNAS ...
Any feedback is highly appreciated!