Using Backup Manager on Bare Metal Servers

The Backup Manager client allows you to create automated backups on bare metal dedicated servers. This guide covers installation, configuration, and restoration commands for managing your server backups.

Note: Troubleshooting Bare Metal Servers is outside the scope of InMotion Hosting support. Please consult your operating system documentation for any issues.

Operating System Requirements

Before installing the Backup Manager client, verify that your server meets the following requirements:

  • Python 3.6 or higher (if compiled from source, OpenSSL support is required)
  • A cron daemon that can read /etc/cron.d/
  • OpenSSL
  • curl
  • bash
  • libc/glibc (musl is not supported)
  • Init system: SysV, systemd, or upstart
  • If MySQL is installed, /root/.my.cnf should be configured for the default settings to work

Supported Operating Systems

The Backup Manager client has been tested on the following distributions:

DistributionFamilyPython VersionSupported
Ubuntu 22.04 LTS JammyDebian3.10Yes
Ubuntu 20.04 LTS FocalDebian3.8Yes
Debian 12 BookwormDebian3.11Yes
Debian 11 BullseyeDebian3.9Yes
Debian 10 BusterDebian3.7Yes
AlmaLinux 9RedHat3.9Yes
AlmaLinux 8RedHat3.6Yes
CentOS 7RedHat3.6Yes
OpenSUSE Leap 15.5SUSE3.6Yes
CentOS 6RedHat2.6No (GCC and Python are too old)
Alpine 3.18.63.11No (Alpine uses musl)

Installing Backup Manager

Follow these steps to install the Backup Manager client on your bare metal server.

Step 1: Install wget

Run the appropriate command as the root user for your distribution.

Debian and Ubuntu:

apt-get -y install wget

RedHat, Fedora, and AlmaLinux:

yum -y install wget

Step 2: Run the Installation Script

Execute the following commands as root:

sudo su -
cd /root
wget -O bakmgr-setup.sh https://repo-ded.inmotionhosting.com/pypi/bakmgr-setup.txt
chmod +x bakmgr-setup.sh
./bakmgr-setup.sh --host $(hostname -s)
rm -f bakmgr-setup.sh

Important: The hostname must match your AMP machine name. If your server’s hostname has been modified, specify the server ID directly (e.g., ded1234) after --host instead of using $(hostname -s).

Log File Locations

The Backup Manager client writes logs to the following locations:

  • Main log: /var/log/bakmgr.log
  • Dashboard log (SysV systems): /var/log/bakmgr-dash.log
  • Dashboard log (systemd/upstart): syslog

Available Scripts

The installation provides several management scripts:

ScriptPurpose
/usr/bin/bakmgrCLI tool for validating configurations and restoring data (symlinked to /opt/bakmgr/bin/bakmgr). Also accessible via /usr/bin/backup. Use -h on each subcommand for help.
/opt/bakmgr/bin/cronExecuted by cron to create scheduled backups
/opt/bakmgr/bin/bakmgr-setupRuns during initial setup and after updates
/opt/bakmgr/bin/bakmgr-updateProvides automatic updates via cron
/opt/bakmgr/bin/bakmgr-uninstallRemoves Backup Manager (preserves /etc/bakmgr/.auth.json and /usr/bin/restic)

Configuration Files

Configuration files are stored in the following locations:

  • /etc/bakmgr/bakmgr.yaml: Controls what gets included in backups. While this file can be edited manually, using the Dashboard UI is recommended.
  • /etc/bakmgr/.auth.json: Stores API credentials after the client registers with the backup authority server. This file should not require manual modification.

Using the Dashboard UI

The Backup Manager includes a web-based dashboard for managing your backups.

Accessing the Dashboard

The dashboard runs on TCP port 4001. Access it using your server’s hostname:

https://ded1234.inmotionhosting.com:4001

Replace ded1234 with your server’s hostname.

Note: You may need to open port 4001 in your server’s firewall to access the dashboard.

SSL Certificate Configuration

The dashboard uses a self-signed SSL certificate by default. To install a custom SSL certificate, place your files in these locations:

  • SSL Certificate: /etc/bakmgr/dash.crt
  • Private Key: /etc/bakmgr/dash.key
  • CA Bundle (optional): /etc/bakmgr/dash.cabundle

After replacing the certificate files, restart the bakmgr service:

systemctl restart bakmgr

Restoring Data via CLI

The Backup Manager provides command-line tools for restoring files and databases.

Restore Files

Use the restore-files command to restore files or directories:

bakmgr restore-files /path/to/file

Replace /path/to/file with the path to the file or directory you want to restore.

Restore MySQL Databases

Use the restore-mysql command to export a MySQL database backup:

bakmgr restore-mysql /path/to/export/database.sql

Replace /path/to/export/database.sql with the desired export location and filename.

Restore PostgreSQL Databases

Use the restore-pgsql command for PostgreSQL databases:

bakmgr restore-pgsql /path/to/export/database.sql

Getting Help

Each restore command includes detailed help documentation:

bakmgr restore-files -h
bakmgr restore-mysql -h
bakmgr restore-pgsql -h

Note: If multiple backups exist for the requested type, you will be prompted to select which backup to restore from.

Tip: Use the --latest option to automatically select the most recent backup without being prompted:

bakmgr restore-files --latest /path/to/file

Related Articles

Share this Article
Carrie Smaha
Carrie Smaha Senior Manager Marketing Operations

Carrie Smaha is a Senior Marketing Operations leader with over 20 years of experience in digital strategy, web development, and IT project management. She specializes in go-to-market programs and SaaS solutions for WordPress and VPS Hosting, working closely with technical teams and customers to deliver high-performance, scalable platforms. At InMotion Hosting, she drives product marketing initiatives that blend strategic insight with technical depth.

More Articles by Carrie

Leave a Reply