Setting up Rclone's Web GUI

Setting up Rclone's Web GUI

Introduction

Almost one year ago, I wrote this post detailing how to install and configure Rclone for use with Google Drive.  I have been running that setup for over two years now with no issue but have found that I would occasionally wish Rclone had a web GUI for monitoring and performing basic tasks.

Fortunately, such feature appears to exist but is still in the early stages of development. Assuming you already have Rclone installed, you can set up the GUI fairly easily.  Today's post will cover exactly how to do that.

Installation

To start, you will need to access the machine that is currently running Rclone.  For my purposes, I am using an Ubuntu VM.

Once this prerequisite is met, you can now issue the following command:

rclone rcd --rc-web-gui --rc-addr <ip>:5572 --rc-user <user_name> --rc-pass <password>

Note: You might also want to append --rc-web-gui-no-open-browser to the end of this command if you're running this on a headless server, like I am.

To break this command down a bit more, <ip> will need to be replaced with the IP address of the host that is running Rclone.  As stated previously, I am utilizing Rclone on a headless instance of Ubuntu server, so I will provide the IP of that VM.

Next, for <user_name> and <password>, you will need to establish a username and password that you would like to use when accessing the GUI of Rclone.  It is important to note that --rc-user and --rc-pass are not optional flags for this command and must be configured.

Once the command has been run, you will be able to navigate to your specified IP and port combo be presented with your Rclone GUI:

The annoyance I ended up running into was that the rclone rcd --rc-web-gui must constantly be running and, after initially running the command, you Ctrl + C out, your Rclone GUI will cease to exist.  

To counter this, one could run the command in the background or set up a screen session but I preferred to use a systemd service to have my Rclone GUI start up automatically each time I boot up the VM.

Configuring Sytemd

Now that we've established that Rclone's GUI will run, it is time to ensure it is always running in the background so that we don't have to manually run the command each time we want to access the GUI.

To do so, first navigate to /etc/systemd/system and use a text editor of your choice to create a file named rclone_gui.service.  Within this file, paste the following contents:

[Unit]
Description=rclone GUI
After=networking.service

[Service]
Type=simple
ExecStart=rclone rcd --rc-web-gui --rc-addr <ip>:5572 --rc-user <user_name> --rc-pass <password> --rc-web-gui-no-open-browser
Restart=always
RestartSec=10

[Install]
WantedBy=default.target

You will need to ensure that your ExecStart command mirrors what you were previously using to initialize the Rclone GUI.  My example includes the --rc-web-gui-no-open-browser flag, which you may want to remove, depending on your use case.  

Once that has been done, simply run systemctl enable rclone_gui.service to enable your systemd service, and then systemctl start rclone_gui.service.

Running systemctl status rclone_gui.service will provide output for you and will indicate whether your service has started successfully or not.

Conclusion

With that, you should now have a GUI for Rclone!  I have found that having a GUI for Rclone is a nice convenience to have.

I hope you found this guide helpful. If you did, consider adding my site to your RSS reader using the following URL:

https://tcude.net/rss