This release is a pre-release and may not be stable for production use.
Winbackup
A python package to back up user files on Windows to 7z archives. Useful for offsite or cloud backups and backups can be optionally encrypted with AES256. Archives can be Optionally split archives into smaller archives for easier management. As well as user files can backup Plex Media Server, Hyper-V Virtual Machines and VirtualBox Virtual Machines.
- embeds 7z to perform compression
- saves lists of installed programs and drivers
- optional AES256 encryption
- Archives produced are full backups - no incremental backups at present
- Archives saved in the format - host_user_yyyy-mm-dd_folder.7z
- Tested on Windows 10, Python 3.7+ (not compatible with macOS or Linux)
Installation
Installation is from a package on GitHub Releases or from pip with pip install winbackup
Usage
Interactive CLI:
winbackup D:/backup_path
Run from configuration file:
winbackup -c ./winbackup_config.yaml
Create configuration file
Can also be run using a configuration file. To generate a blank configuration file use winbackup -C
or winbackup --create-configfile. This config file must be modified before use with valid paths or will raise an exception whe run.
To generate a configuration file interactively run winbackup -i or winbackup --interactive-config. This file can be run without modification for later use.
Full CLI options
Available CLI options.
| Flag | Option | Desc |
|---|---|---|
-a |
--all |
Run backup with all possible backup targets selected |
-c |
--configfile |
Run backup from a supplied yaml config file |
-C |
--create-configfile |
Create a default configuration file template. Will need modified before being run. |
-h |
--help |
Displays help information |
-i |
--interactive-config |
Generate a configuration file interactively, can be run directly after generation |
-q |
--quiet |
Minimal terminal output |
-v |
--verbose |
Sets logging to debug. Only affects log file not stdout. |
-V |
--version |
Print version info. |
-y |
--autoconfirm |
Autoconfirm prompts |
| Tests |
To run unitests
python -m unittest discover tests -v
python -m pytest tests -v
Build Packages
python -m build
About
Creation date: 2021
Modified date: 03-05-2022
Dependencies: colorama, tqdm, Send2trash, humanize, PyYAML
Licence
This code is licensed under the GNU GPLv3 Licence. Included dependencies and code are covered by their own licence - check project pages for details.
- For finding windows paths there is a section of code in configsaver from https://gist.github.com/mkropat/7550097 covered under the MIT Licence copyright mkropat
- 7z - covered by the L-GPL licence available here
- winfetch - under MIT Licence
Copyright (C) 2021-2022 Joe Campbell
GNU GENERAL PUBLIC LICENSE (GPLv3)
This program is free software: you can redistribute it and / or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY
without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see < https: // www.gnu.org/licenses/>.
Metadata
Release files for winbackup 0.2.0b0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| winbackup-0.2.0b0.tar.gz | 1.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| winbackup-0.2.0b0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.2 MB
Release files / winbackup-0.2.0b0.tar.gz
| Download URL | winbackup-0.2.0b0.tar.gz |
|---|---|
| Size | 1.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
818382373573767f4ef69acde221475176c5dcbc1e7d03007f1c3a682de677d0
|
|
BLAKE2b-256 checksum How to use checksums |
1c6765cdf0fff109fdff695b9247cb68ea96f856adf5b27b1051d417ebd375c9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.9.13
|
Release files / winbackup-0.2.0b0-py3-none-any.whl
| Download URL | winbackup-0.2.0b0-py3-none-any.whl |
|---|---|
| Size | 1.1 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e99459576622685ab410f3fa7bc52e42fff0bf9ce10cd6790e3459831cd787a3
|
|
BLAKE2b-256 checksum How to use checksums |
dac3472975380e2cf6f6825d0f95e9d3f3e96475667bb80d0d2f0c02949a279c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.9.13
|