Becky
Becky is a command-line based backup software. It can periodically scan through your files, find any changes and subsequently backup the new files to a remote location. Only works on Linux.
Providers
Becky implements different providers that allow it to backup the data to many different locations or with different protocols. Right now, Becky supports these providers:
Local
- Simple backupper that copies the files to a different location on the same machine.
- Can be used to copy files to any local location, such as a mounted drive or just a different folder.
SSH
- Copies the data over SSH to a different machine.
- Requires an SSH key.
S3
- Copies the data to any S3-compliant object storage.
- Uses
s3cmdfor the file transfers.
Usage:
Creating a new backup:
becky --name new_backup create --provider local
This command creates a new backup named new_backup and uses the local provider as backupper.
The other provider options are remote (SSH) or s3.
Adding required parameters for providers:
becky --name new_backup add param --type provider --key <PARAM NAME> --value <PATH TO BACKUP FOLDER>
This will add a provider parameter called with the value
Adding required parameters for local provider:
Local provider will only require one parameter, the location of the folder where all the backups will be stored.
becky --name new_backup add param --type provider --key output_path --value /backups
Adding required parameters for SSH provider:
SSH provider requires 3 params:
- remote_addr - the IP (or name) of the server where one wants to copy the files
- remote_path - location on the remote server where to copy the files
- ssh_id_path - path to the ssh-key which will be used to access the server without password
becky --name new_backup add param --type provider --key remote_addr --value 192.168.1.2
becky --name new_backup add param --type provider --key remote_path --value /remote_backups
becky --name new_backup add param --type provider --key shh_id_path --value /home/test/.ssh/id_rsa
Adding required parameters for S3 provider:
S3 provider requires 5 params:
- access_key
- secret_key
- host
- host_bucket
- bucket_name
These should all be provided by the object storage provider.
Adding a location to be backed up:
becky --name new_backup add location --path <PATH TO IMPORTANT DATA>
This will add the path to the important data to be backed up.
Running the backup:
becky --name new_backup run
This will run the backup process for the new_backup backup.
Any files or folders as a location to backed up will be scanned. Any file that is new or has been modified since the last backup iteration will be backed up again.
Running the backup on schedule
becky cron --name new_backup --enable --schedule <CRONTAB FORMAT>
This will add a crontab job that will run the backup job on schedule.
The given schedule format must be in the same format as crontab, such as '* * * * *' etc.
Disable backup schedule
becky cron --name new_backup --disable
This will remove any crontab jobs from this backup, so it won't automaticallly be run again.
Restore backed up file
becky --name new_test restore --path <FULL PATH OF BACKED UP FILE> --restore_path <FOLDER WHERE TO BACKUP FILE> --timestamp <EPOCH TIMESTAMP>
This will restore the file to the restore folder at the given timestamp. The timestamp will specify which version of the file to restore.
Installation
Becky can be installed from PyPi, by running:
pip3 install Becky
Metadata
Release files for Becky 0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| Becky-0.7.tar.gz | 15.8 kB | Without provenance | Details for Becky-0.7.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| Becky-0.7-py3-none-any.whl | Python 3 | none | any | Details for Becky-0.7-py3-none-any.whl |
Total release size: 35.8 kB
Release files / Becky-0.7.tar.gz
| Download URL | Becky-0.7.tar.gz |
|---|---|
| Size | 15.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ef2a58b8b80895833732c2891f97752e1dab75aacaf20ed438ff647c2281158e
|
|
BLAKE2b-256 checksum How to use checksums |
43dbb270d430f7c821cd80edacddd2826a1b0758585c210dbb5d58011a0d97ae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.8.5
|
Release files / Becky-0.7-py3-none-any.whl
| Download URL | Becky-0.7-py3-none-any.whl |
|---|---|
| Size | 20.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0e53fd286e3eba15448f2e9227e26625ddb191488d2b5b93062bbcaf92799e6b
|
|
BLAKE2b-256 checksum How to use checksums |
1b35f1f71fdf3e20ec959407e393f36636d3a7f96735ede16d6da395cbcd4425
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.8.5
|
Security for Becky 0.7
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.