What's changed: Initial version (topic 2.04, subtopics 2.04.1–2.04.6)
4.2Backup and Restore
Learn backup fundamentals (full, differential, and incremental), representative backup software (Amanda, Bacula, Bareos, BackupPC), media (tape, HDD, optical), and the commands used to perform backups (dd, tar, mt, rsync).
The last line of defense against failure, mistakes, and disaster is the backup. Designing what to back up, how often, on what medium, and how to restore is an operations responsibility—misunderstanding the tradeoffs leads to recovery taking far longer than planned.
4.2.1Backup strategies and media
- Full backup = the entire target saved every time (simplest restore; largest size and time). Differential backup = only changes since the last full (restore needs full + latest differential, two pieces). Incremental backup = only changes since the last backup of any kind (smallest size; restore needs full + every incremental in sequence).
- Backups are taken at the file level, block level, or as a full disk image—the choice depends on the target and how fast restore must be.
- Media: tape (high capacity, cheap, good for long-term archival), HDD (fast, random access), optical media (portable, low capacity). Tape devices are referenced as /dev/st* (rewinding) and /dev/nst* (non-rewinding).
4.2.2Backup software and execution commands
- Integrated backup suites: Amanda (client/server, supports diverse media), Bacula (enterprise-grade, catalog-managed), Bareos (a fork of Bacula), and BackupPC (disk-based deduplicating backup with a web UI).
- Low-level standalone tools: dd (block-level full copy, image creation), tar (file-level archiving), mt (tape drive control: rewind, fast-forward, eject), and rsync (efficient differential-transfer sync, also used for remote backups).
The most common contrast: differential = changes since the last full (restore needs two pieces), incremental = changes since the last backup of any kind (restore needs the full plus every incremental). Also standard: /dev/st* (rewinding) vs /dev/nst* (non-rewinding) tape devices, and that mt is dedicated to tape control. Remember rsync suits network-based backup thanks to differential transfer.
Weighing the tradeoffs clarifies the choice. In a daily backup design, the incremental approach minimizes each run's transfer size and time, but restoring requires the full backup plus every incremental up to the failure date, applied in order—losing even one incremental breaks the restore. The differential approach grows in size day by day, but restore needs only the full plus the latest differential, which is why sites prioritizing simple restore procedures and RTO (recovery time objective) prefer it. In tape operations, a typical pattern is writing multiple archives sequentially to one tape using /dev/nst0 (non-rewinding) during a backup job, then explicitly rewinding with mt -f /dev/nst0 rewind after all jobs finish. dd copies sector by sector without regard for the filesystem, making it suited to whole-partition disaster-recovery images, but it copies free space along with used space, costing time and capacity. rsync, by contrast, can transfer only changed blocks, which is why it is used for periodic sync-style backups to remote sites and as the internal transfer method for disk-based products like BackupPC.
| Strategy | Baseline | Needed for restore |
|---|---|---|
| Full | None (everything, every time) | That one full backup |
| Differential | Since the last full | Full + the latest differential |
| Incremental | Since the last backup (any kind) | Full + every incremental, in order |
Trap: "incremental backup always stores changes since the full backup" is wrong—that describes a differential backup. Incremental stores only changes since the last backup of any kind (full or incremental). Also, "/dev/st* is the non-rewinding device" is wrong—/dev/nst* is the non-rewinding one.
4.2.3Section summary
- Distinguish full / differential (since full) / incremental (since last) by baseline and how many backups restore requires
- Software: Amanda, Bacula, Bareos, BackupPC; commands: dd (block copy), tar (file archive), mt (tape control), rsync (differential transfer)
Sign in to track progress — Log in.
Quick check
(just a quick review)Q1. For daily backups, you want to minimize each day's transfer volume, and you accept that restoring will require applying the full backup plus every subsequent backup in order. Which strategy should you adopt?
Q2. You want to write several backup archives sequentially to one tape and rewind explicitly only after all jobs finish. Which device file should you use during the jobs, and which command performs the rewind?
Q3. You want to back up files by periodically syncing them to a remote site, transferring only changed blocks to save bandwidth. Which command achieves this?
Keep track of your progress
The full study guide is free to read. Sign up free to practice with the question bank, track what you have read, review your mistakes, and highlight passages.

