Skip to content

Restore a Backup

Restore from a previously taken backup tarball — full system or selective categories. Use after major incidents or when migrating to a new host.

Destructive

Restore overwrites current configs and DB. ALWAYS take a fresh backup of the current state first if there's any chance you'll need to revert.

Before You Start

  • A backup file exists locally on the host or in a connected Filestore.
  • You've taken a fresh backup of the current state (in case you need to undo).
  • For full restore: schedule downtime — calls drop during the restore.

Steps

Restore from the GUI

  1. Go to System Admin → Backup & Restore.
  2. Click Restore tab.
  3. Pick the backup file:
    • From a Storage Location (Filestore-managed).
    • Upload from your local machine.
  4. Pick Items to Restore — full restore or select categories.
  5. Click Restore.
  6. Confirm.
  7. The system runs the restore (may take minutes for large backups).
  8. Click Apply Config when prompted.

Restore from CLI (advanced / migration)

For migrating to a new host:

# Place the backup tarball on the new host:
scp old-host:/var/spool/asterisk/backup/Daily_Full/*.tar.gz /tmp/

# Extract and restore via fwconsole:
fwconsole backup --restore /tmp/<backup-file>.tar.gz

# Reload after:
fwconsole reload
fwconsole restart

Verify

  • Spot-check Extensions, Inbound Routes, Trunks — do your familiar configs return?
  • Test inbound and outbound calls.
  • Check Reports → System Status for trunk registrations.
  • If voicemail was restored, check /var/spool/asterisk/voicemail/ for messages.

Restore Strategy by Scenario

  • Reverting a botched config change: restore only the affected category (e.g. just Asterisk configs, not voicemail).
  • Migrating to new hardware: full restore. Then update IP / FQDN if changed.
  • Recovering accidentally deleted extension: restore Voicemail + DB selectively, then manually re-add the extension if its config wasn't backed up since deletion.

Common Issues

  • Restore fails halfway. Disk full, MySQL access lost, or backup file corrupted. Check Backup History for the failed step.
  • Trunks fail after restore on new host. Carrier IP-allowlist still references old IP. Update with carrier.
  • Old voicemails reappear after restore. Expected — Restore puts files back as they were at backup time.
  • Module versions mismatch. Backup was from older FreePBX; restore on newer may need module reinstall. Run System Admin → Modules → Check Online → Update.
  • Apply Config errors after restore. Some modules need their cache rebuilt: fwconsole reload.