Nightly copies of files and databases without hammering the VPS. The rootmanage.com backup engine stays current from upstream. Pick your OS below for install, run, timer, and restore (one site or many).
Easy install
Four separate programs. Installing one does not replace another. Sign in with an Active plan to see your live key, or copy it from the dashboard.
Only one OS at a time. Commands below are for Backup only.
--single-transaction if mysqldump exists.SFTP: host, port (Hetzner Storage Box often 23), user, password, folder. S3: endpoint, region, bucket, access key, secret, prefix.
After Backup is installed, pick OS again for restore (one site or many).
Pick your OS / panel — every working command for that type
Real install token: Dashboard → Backups. Guide sample uses YOUR_ANON_KEY / YOUR_TOKEN.
WHM / cPanel on AlmaLinux or CloudLinux. Paths are /home/ACCOUNT.
WHM → Terminal, or SSH as root. Do not type sudo.
curl -fsSL https://rootmanage.com/agent/install-backup.sh | bash -s -- --url https://rootmanage.com --key YOUR_ANON_KEY --token YOUR_TOKEN
/usr/bin/rootmanage-backup --version /usr/bin/rootmanage-backup --install-engines /usr/bin/rootmanage-backup --run /usr/bin/rootmanage-backup --self-update systemctl status rootmanage-backup.timer rootmanage-backup.service --no-pager systemctl list-timers rootmanage-backup.timer --no-pager journalctl -u rootmanage-backup.service -n 80 --no-pager tail -n 80 /var/log/rootmanage-backup.log
--run dumps MySQL/Postgres first, then files. Low CPU. 02:00 IST is the timer.
export RESTIC_PASSWORD='YOUR_ENCRYPTION_PASSWORD' export RESTIC_REPOSITORY='sftp:USER@HOST:FOLDER' export SSHPASS='SFTP_PASSWORD' export ROOTMANAGE_BACKUP_SFTP='sshpass -e ssh -o StrictHostKeyChecking=accept-new -p 23 USER@HOST -s sftp'
export RESTIC_PASSWORD='YOUR_ENCRYPTION_PASSWORD' export AWS_ACCESS_KEY_ID='KEY' export AWS_SECRET_ACCESS_KEY='SECRET' export RESTIC_REPOSITORY='s3:https://s3.wasabisys.com/BUCKET/PREFIX'
export RESTIC_PASSWORD='YOUR_ENCRYPTION_PASSWORD' export RESTIC_REPOSITORY='sftp:USER@HOST:FOLDER' export SSHPASS='SFTP_PASSWORD' export ROOTMANAGE_BACKUP_SFTP='sshpass -e ssh -o StrictHostKeyChecking=accept-new -p 23 USER@HOST -s sftp' mkdir -p /restore nice -n 19 /usr/bin/rootmanage-backup snapshots nice -n 19 /usr/bin/rootmanage-backup restore SNAPSHOT_ID --target /restore \ --include /home/ACCOUNT \ --include /var/lib/rootmanage/dumps # When ready, copy files onto the live path: rsync -a /restore/home/ACCOUNT/ /home/ACCOUNT/ # One MySQL database from the all-databases dump: sed -n '/^-- Current Database: `DBNAME`/,/^-- Current Database:/p' \ /restore/var/lib/rootmanage/dumps/mysql-all.sql > /tmp/one-db.sql mysql DBNAME < /tmp/one-db.sql
export RESTIC_PASSWORD='YOUR_ENCRYPTION_PASSWORD' export RESTIC_REPOSITORY='sftp:USER@HOST:FOLDER' export SSHPASS='SFTP_PASSWORD' export ROOTMANAGE_BACKUP_SFTP='sshpass -e ssh -o StrictHostKeyChecking=accept-new -p 23 USER@HOST -s sftp' mkdir -p /restore nice -n 19 /usr/bin/rootmanage-backup restore SNAPSHOT_ID --target /restore \ --include /home/account1 \ --include /home/account2 \ --include /home/account3 \ --include /var/lib/rootmanage/dumps
export RESTIC_PASSWORD='YOUR_ENCRYPTION_PASSWORD' export RESTIC_REPOSITORY='sftp:USER@HOST:FOLDER' export SSHPASS='SFTP_PASSWORD' export ROOTMANAGE_BACKUP_SFTP='sshpass -e ssh -o StrictHostKeyChecking=accept-new -p 23 USER@HOST -s sftp' mkdir -p /restore nice -n 19 /usr/bin/rootmanage-backup restore SNAPSHOT_ID --target /restore \ --include /home \ --include /etc \ --include /var/lib/rootmanage/dumps
Replace SNAPSHOT_ID with the id from rootmanage-backup snapshots or the Backups log. Use latest only if you are sure. Never import SQL onto production without a freeze window.
Open Backups · Health agent · Health install · Metrics guide · LiteHouse