Drive-In
Charly's Column – Rclone
Having a good backup is a matter of course for sys admin columnist Charly Kühnast, but devices could still fall victim to fire or theft some day. Because he has enough free space on Google Drive, he doesn't need to search long for a solution. The only thing missing is the right tool.
I never wanted to have to lament lost data, which is why I have functioning backups at home. Nevertheless, having an offshore backup seemed to be a good idea in case of a chain of ridiculous circumstances (i.e., absolute disaster). As an Android user, Google gives me 15GB of disk space, which I don't currently use. But the right tool is still missing: Rclone.
Completed binary packages for Linux, Windows, Mac OS, the BSDs, Plan 9, and Solaris can be downloaded from Rclone's website [1]. If you would prefer to build your own and you have a Go compiler on your system, you can proceed with the command
go get -u -v github.com/ncw/rclone
at the start. I launch the configuration of the storage back ends with rclone config
and, with n
, launch the path for New remote. I use mygdrive
for the name now requested for the remote connection. Figure 1 makes it clear that there should be something for everyone in the supported storage services – even generic FTP/SFTP to set up your own backup corner on a rented server or web space.
After choosing Google Drive and the automatic configuration, a browser opens so that I can let Rclone access my file storage on Google. This is the end of the configuration.
To check what I've saved on the remote side, the following command suffices:
rclone ls mygdrive:
The colon is mandatory. Because my drive is empty, there is no output. To test it, I copy my Apache config files into the drive:
rclone copy -L -v /etc/apache2/ mygdrive:backup
This takes a second, because Google has relatively aggressive rate limiting (about two files per second). I check straightaway whether the files have arrived in Google's web interface (Figure 2).
With History
Google provides a small versioning drive. If I upload changed Apache files again, the drive recognizes this and keep both files for a maximum of 30 days or 100 changes, whichever comes first. I now use the sync
sub-command instead of copy
:
rclone sync -L -v /etc/apache2/ mygdrive:backup
Rclone synchronizes the local and remote pages and only copies the files that have changed. Files that you delete locally meet the same fate on Google Drive – not vice versa. Rclone cannot manage to synchronize both sides like Rsync. However, I can encrypt files for storage by choosing Encrypt/Decrypt a remote in rclone config
.
Rclone is still in active development, so you can watch it closely at work.
Charly Kühnast
Charly Kühnast manages Unix systems in a data center in the Lower Rhine region of Germany. His responsibilities include ensuring the security and availability of firewalls and the DMZ.
Infos
- rclone: https://rclone.org/downloads/
Buy this article as PDF
(incl. VAT)