Rullst AcademyRullst Academy/Lesson
From application to release with Rullst · Lesson 09 / 12

Save a moment you can recover

Git stores source. A database backup stores a state of the missions. They are different pieces of recovery.

Learning paths30 min

Let's discover together

  1. 1

    Return to the local process and missions.db. Create two fictional missions and record their titles. Stop the process for this first simple rehearsal. Tests also verify a snapshot with an active connection.

  2. 2

    Choose backup-01.db, which must not already exist. Run backup and verify below. The command uses SQLite VACUUM INTO and checks integrity, schema version and expected columns. It is not a blind file copy.

  3. 3

    If the command fails, do not treat an existing destination as success: an incomplete copy may remain. Read the error and choose another new name for the next rehearsal; never overwrite an unidentified backup.

  4. 4

    Restart the original and add a third mission. The earlier backup represents the two-mission moment; it does not follow later changes. The next lesson checks restored contents.

  5. 5

    A same-disk copy supports rehearsal but does not protect against disk loss. For real data, define retention, restricted access and an independent copy according to need. Do not send real databases to GitHub.

From reasoning to execution

The core path runs on your computer with fictional data. Podman, Quadlet and Caddy are optional extensions; no domain purchase or cloud subscription is needed. This lab is not ready for public writes.

Read the steps before running anything. The commands below are a reference; README.md explains your OS syntax and LAB.md contains the sequence. The site does not run these commands for you.

cargo run --locked -- backup missions.db backup-01.db
cargo run --locked -- verify backup-01.db
My evidence record

Record time, fictional source, new destination, verify result and expected content. Explain what would be lost if the disk holding original and copy failed.

Separate prediction, execution and observed result. Record “not executed” when the environment is missing. Site progress does not validate real deployment or grant professional certification.

My files and GitHub

Official links and next step

✦
YOUR MISSION

Create and verify a consistent copy at a new destination.

Now it's your turn

Discovery workshop

Decide using evidence

The backup was made with 2 missions. You then added a third only to the original.
Build your answers and check when you are ready.
A moment to understand

The backup file exists but the command failed. Is it validated?

I need a hint

Existence, integrity and recoverability are different checks. A snapshot represents a moment; restoration confirms what it preserved.

Loading your journey…

Take it with you

Record time, fictional source, new destination, verify result and expected content. Explain what would be lost if the disk holding original and copy failed.

At your own pace

My files and GitHub

Every lesson can become your own record: code, notes or a practice plan. Saving a file to GitHub is optional and does not change your XP.

Student guide

The editor and downloads open when this lesson is available to your account. Check access below or return to the track map.

Checking your access to this lesson…

Rullstpetbot

AI can make mistakes. Check the lesson material.