Gbacky is a easy-to-use offsite backup utility for Debian-based Linux systems (read: Linux Mint and Ubuntu) that syncs your files to an encrypted VeraCrypt vault and then stores the vault on your Google Drive.
For simplicity and speed of a repetitious task, Gbacky runs automatically when the program is started.
Gbacky requires the VeraCrypt program and an existing VeraCrypt vault in your home directory.. Since the entire vault will be copied each time the program is run, it is best to keep the size of the vault to a minimum, relative to the size of the files you are backing up.
Gbacky does not directly synchronize to Google Drive. Your Veracrypt vault will remain on your local filesystem and a copy will be written to Google Drive.
For end users:
- Download the
.debfile from this page (link to be added). - Install the package. You can usually do this by double-clicking the file or by running the following command in a terminal from the directory where you downloaded the file:
This command will automatically install Gbacky and all of its required dependencies, except Veracrypt.
sudo apt install ./gbacky_*.deb - Install VeraCrypt (if you haven't already). Gbacky depends on VeraCrypt, but to ensure you get the latest version, it is recommended you install it directly from the official website: https://veracrypt.io/
- create a VeraCrypt vault. (as mentioned above, avoid making it excessively large).
- run it The .deb file should have created an icon in your startup menu. The first time you run Gbacky, it will automatically open the settings window.
The first time you launch Gbacky, the Settings window will open automatically, as it needs to be configured. These are the most important options:
- VeraCrypt Vault: Select an existing VeraCrypt vault file. Gbacky does not create vaults for you.
- Password: Enter the password for your VeraCrypt vault. You can use the "Test" button to verify the password is correct.
- To Backup: Click "Add Directories..." to select the files and folders you want to back up. These will be synced into the vault.
- GDrive Path: Gbacky will try to "Detect..." your Google Drive mount point automatically. This is typically a path like
/run/user/1000/gvfs/google-drive:host=.... (untested: If the program finds multiple Google Drives, it should prompt you. If not, you'll have to add the path manually.) - GDrive Folder: Specify a folder name within your Google Drive where the vault file will be stored (e.g.,
Backups). - System Password Option: By default, Gbacky will ask for your
sudopassword each time it runs(as per Veracrypt). You can uncheck "Always ask for system password" to create a secure, passwordlesssudorule specifically for VeraCrypt, allowing for fully automated backups.
Click Save, and you're ready to go.
- Main Screen: The main window shows the status of the current backup. The backup will run automatically on startup.
- Mount / Unmount: When the program is idle, you can quickly mount and unmount your Veracrypt vault for easy access.
- Empty Vault: This will delete the contents of the mounted vault. Useful for reclaiming space after you've removed directories from your backup list.
- Settings: Click the gear icon at any time to modify your configuration. (or CTRL-S)
To uninstall the program (without removing configuration), run the following command in a terminal:
bash sudo apt remove gbacky
To remove the configuration, delete the files manually from ~/.config/Gbacky.
Release version of Gbacky has only been tested on my system, Linux Mint 21.3
If you wish to run the application from the source code:
Ensure you have the following packages installed:
sudo apt install python3-pyside2.qtcore python3-pyside2.qtgui python3-pyside2.qtwidgets python3-keyring python3-secretstorage gir1.2-gtk-3.0 libglib2.0-bin rsync veracryptClone the repository and run the main script:
git clone <repository_url>
cd gbacky
python3 Gbacky.pyif you run Gbacky from your own directory, it will use a separate configuration file, et al, stored as Gbacky-dev. This will allow you to continute to use Gbacky even while you're making those sweet improvements we all know it needs so badly.
To share your own version of Gbacky, the package_deb.py script will prepare the necessary file structure (update it to include any additional files you created).
- Run the packaging script:
python3 package_deb.py
- Build the
.debfile usingdpkg-deb:(Replacedpkg-deb --build gbacky_VERSION_amd64
VERSIONwith the current version number).
This program was developed by Brett James with the use of Gemini, and with some additional contributions from Claude Code.
This project is licensed under the AGPL 3.0 License. See the LICENSE file for details.