Skip to main content

Becky backupper

Project description

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 s3cmd for 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 . Different providers will require their own parameters.

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Becky-0.7.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

Becky-0.7-py3-none-any.whl (20.1 kB view details)

Uploaded Python 3

File details

Details for the file Becky-0.7.tar.gz.

File metadata

  • Download URL: Becky-0.7.tar.gz
  • Upload date:
  • Size: 15.8 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for Becky-0.7.tar.gz
Algorithm Hash digest
SHA256 ef2a58b8b80895833732c2891f97752e1dab75aacaf20ed438ff647c2281158e
MD5 99a0b096338b260c374459b209322152
BLAKE2b-256 43dbb270d430f7c821cd80edacddd2826a1b0758585c210dbb5d58011a0d97ae

See more details on using hashes here.

File details

Details for the file Becky-0.7-py3-none-any.whl.

File metadata

  • Download URL: Becky-0.7-py3-none-any.whl
  • Upload date:
  • Size: 20.1 kB
  • Tags: Python 3
  • Uploaded using 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

File hashes

Hashes for Becky-0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 0e53fd286e3eba15448f2e9227e26625ddb191488d2b5b93062bbcaf92799e6b
MD5 e654b84dfe1c4a1617dc5c8544f69e80
BLAKE2b-256 1b35f1f71fdf3e20ec959407e393f36636d3a7f96735ede16d6da395cbcd4425

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page