-! WORK IN PROGRESS !-
!- The development of the version 3 (phar) is at a very early stage.
!- Neither tests nor feedback are currently useful.
!- As soon as the situation changes, I will inform you.
The specifications for version 3 are still in the concept phase.
Below you will find the readme for the old version 2.
-! WORK IN PROGRESS !-
!- The development of the version 3 (phar) is at a very early stage.
!- Neither tests nor feedback are currently useful.
!- As soon as the situation changes, I will inform you.
The specifications for version 3 are still in the concept phase.
Below you will find the readme for the old version 2.
Supporting | Features | License | Requirements | Installing | Getting started | Credits | Changelog | History
GitHub | Patreon | PayPal | Amazon
- full server backups
- server updates
- server cleanup
- backup individual folders to archive (tar, tar.gz)
- dump mysql/mariadb
- access rights adjustment (chmod)
- delete old backups and logs
- compression (optional)
- encrypt and decrypt backups (optional)
- synchronisation/replication from or to rsync/ftp/ftps/sftp
- logging (with levels) by output, log-file and mail
- automatic selfupdates
- custom and easy configuration
This software is distributed under the MIT license. Please read LICENSE for information.
- PHP 8.0.0 or higher
- fully supported OS: Debian, Rasbian, Ubuntu, Arch, Manjaro
- partially supported: other Linux, Mac OS, Windows
- complete requirements documented in Configuration.Default.jsonc
download latest Release
tar xvz -f x.x.x.tar.gz
rm x.x.x.tar.gz
copy Configuration.Default.jsonc to Configuration.jsonc and editing it.
using php-cli
php phpBAT.php
using cron: daily
crontab -e
0 2 * * * php /root/phpbat/phpBAT.php -cron
using php-cli: decrypt all encrypted backups
php phpBAT.php -d
using php-cli: decrypt a encrypted backup-file
php phpBAT.php -df file.enc
- https://github.com/splitbrain/php-archive
- https://github.com/ifsnop/mysqldump-php
- https://github.com/PHPMailer/PHPMailer
- https://github.com/phpseclib/phpseclib
- https://github.com/paragonie/constant_time_encoding
See CHANGELOG.
- originally written in 2018 as a private tool for my server
- complete rewritten (2.x) and published in 2021 on github