LiveOS & Disaster Recovery
1 The Concept: Total Reproducibility
OviOS is architected for extreme portability. Unlike traditional operating systems where configuration is scattered across the filesystem, OviOS centralizes all system settings within its metadata-driven design. This means a full system rebuild — or a pivot from a disk-based install to a RAM-based Live OS — takes seconds.
Key Architecture Principles
Metadata-Centric Storage
Settings for LUNs, replication, NFS, and SMB are stored as metadata directly within the storage pools, LUNs, and volumes — not on the OS disk.
Centralized OS Config
All core system parameters are held in a single primary configuration file that can be backed up, transferred, and restored in one operation.
Decoupled Design
Configuration is completely decoupled from the installation media. Rebuild a crashed system or boot entirely from RAM by restoring one backup archive.
Because your data and metadata live on the ZFS pools — not the OS disk — a failed system disk never means lost data. You reinstall, restore, and you're back.
2 First Run: Initial Setup
When booting the appliance for the first time, refer to the Admin Manual for initial pool creation.
Why is skip.import Enabled by Default?
On the first run, the option skip.import is set to 1 (on). This prevents the system from attempting to auto-import ZFS pools before the user has defined the environment, ensuring a clean state for initial configuration.
Once your pools are created and you want automatic import on subsequent boots, set it to off:
options skip.import 0
3 Backing Up Configuration
Before a failure occurs, you must maintain a current backup of your system state. OviOS configuration backups are compact .tar.gz archives that capture everything needed to fully rebuild the system.
Configuration Tuning
- Files to Sync: By default, network settings may not be included. If your replication destination requires a different network stack, leave this off. To include network config, add
networktooptions files.to.sync. - Target Pool: Ensure
system.backup.poolis defined when usingsync-configso backups are written to the correct pool.
options system.backup.pool # check which pool backups go to
options system.backup.pool osb # set backup pool to 'osb'
Backup Methods
| Method | Command / Action |
|---|---|
| CLIManual | sync-config bo |
| CLIScheduled (Cron) | Add /bin/os sync-config bo to your crontab via edit-cron |
| APICURL | curl -k https://oviosadm:ovios@ovios-storage:8443/api/v1/sys/backup |
| Web UI | Navigate to OviOS Web Monitoring → click Backup Config |
Creating and Restoring a Backup via CLI
# Verify your backup pool is set
ovios-shell ➤ options system.backup.pool
option system.backup.pool osb
# Create a backup archive
ovios-shell ➤ sync-config bo
Backup archive created: /ovios/osb/osbackup/osbackup-20260506_205325.tar.gz
# Restore from the latest backup
ovios-shell ➤ sync-config restore
Verifying archive: /ovios/osb/osbackup/osbackup-20260506_205325.tar.gz
[RESTORING] Applying system configuration...
[SUCCESS] Restore finished. Reloading systemd...
Configuration restored from backup successfully.
Schedule sync-config bo in cron to run automatically after configuration changes. Combine with options autosync.enable on for continuous protection.
4 Restoring Configuration
Use these steps for a new installation, a system disk replacement, or when restarting in RAM mode. The process is the same in all cases.
Pre-Restoration: Mount the Backup Pool
If your backup resides on a storage pool (rather than external media), you must manually mount the pool before restoring:
options skip.import 0 # allow ZFS pool import
service zfs start # import and mount pools
Restoration via CLI
🔄 Full Recovery Sequence
-
Restore the configuration archive. Point to the backup path on the imported pool:
sync-config restore <path_to_backup.tar.gz> -
Restore all pool metadata, LUN topology, and ACLs:
restore all -
Restart all enabled services (iSCSI, NFS, SMB):
services reset
Restoration via API or Web UI
For uploading a backup file to a fresh RAM instance from a remote machine:
-
Enable web access on the new instance:
options ovios-web.enable on -
Upload backup via CURL:
curl -k -XPOST https://oviosadm:ovios@ovios-storage:8443/api/v1/sys/restore \ -F config_file=@/path/to/backup.tar.gz -
Upload via Web UI: Navigate to OviOS Web Monitoring → use the Restore Config button to upload your local
.tar.gzfile.
Authentication Note: If the restored backup contains a different password than the default, the Web UI will log you out immediately upon restore. Re-login using your original credentials from the backup.
5 Finalization & Verification
After restoration, apply the pool metadata and restart the full service stack to bring the system to its desired state.
The Finalize Commands
| Command | What It Does |
|---|---|
restore all |
Reads pool flags, performs LUN consistency checks, and recreates the full iSCSI target topology and ACLs. This step is critical. |
services reset |
Restarts all services (iSCSI, NFS, SMB) that are marked as enabled in the restored configuration. |
Verifying the Restored System
ovios hc # full health check — verify all services and pools are online
Troubleshooting: iSCSI Portal
If the iSCSI service fails to start after a restore, check your portal binding. If options iscsi.portal is bound to an IP address that no longer exists on the current hardware or instance, reset it to the current valid IP:
options iscsi.portal # check current portal binding
options iscsi.portal 192.168.10.20 # update to current interface IP
6 Success & Next Steps
At this stage, your LUNs, NFS shares, and SMB shares should be fully accessible. The system is now running in its desired state — regardless of whether it was booted from a disk or entirely from RAM.
Regularly backup your configuration and test restoration procedures before you actually need them. A backup you've never tested is a backup you can't trust.
Recommended Ongoing Practices
- Enable
options autosync.enable onso configuration is always current - Schedule
sync-config boin cron for periodic explicit snapshots of system state - Store a copy of your latest backup archive on external media or a separate pool
- Run
ovios hcafter any configuration change to confirm system health - Document your
iscsi.portalIP and backup pool name — you'll need them during recovery