68 lines
3.7 KiB
Markdown
68 lines
3.7 KiB
Markdown
# Phase 0: Full System Backup (CRITICAL)
|
|
|
|
**Objective:** To create a complete, offline, and verified backup of all critical data from both the Ubuntu and Windows operating systems before beginning the migration process.
|
|
|
|
**Do not proceed to any other phase until this phase is 100% complete.** Data loss is irreversible.
|
|
|
|
## Instructions for Backup Operator (Human or AI)
|
|
|
|
### 1. Identify Backup Target
|
|
|
|
- **Requirement:** You will need an external storage device (e.g., a USB hard drive or NAS) with enough free space to hold all the data you intend to back up.
|
|
- **Recommendation:** This drive should be dedicated to the backup and stored offline (disconnected from the computer) once the backup is complete.
|
|
|
|
### 2. Backup Ubuntu Data
|
|
|
|
Your personal files are the top priority. System files can be reinstalled by the new OS.
|
|
|
|
- **Primary Tool:** `rsync` is the recommended tool for its efficiency and ability to preserve permissions and metadata.
|
|
- **Source Directories:** The most common locations for user data on Linux are within the `/home/<username>` directory. You must identify and back up, at a minimum:
|
|
- `/home/<username>/Documents`
|
|
- `/home/<username>/Pictures`
|
|
- `/home/<username>/Music`
|
|
- `/home/<username>/Videos`
|
|
- `/home/<username>/Desktop`
|
|
- `/home/<username>/Downloads`
|
|
- `/home/<username>/dotfiles` (as mentioned in the main plan)
|
|
- Any other project or data directories inside your home folder (e.g., `/home/<username>/dev`, `/home/<username>/workspaces`).
|
|
- **Docker Data:**
|
|
- Stop all running containers: `docker stop $(docker ps -aq)`
|
|
- Identify Docker's data directory, typically `/var/lib/docker`. This contains volumes, images, and container configurations. Back this entire directory up.
|
|
- **Server Configurations:**
|
|
- Snapcast config: Locate and back up the configuration files (e.g., `/etc/snapserver.conf`, `/etc/snapclient.conf`).
|
|
- Other server configs (Apache, Node.js services): Back up relevant files from `/etc/` and any service data files.
|
|
|
|
**Example `rsync` Command:**
|
|
```bash
|
|
# Replace <username>, <external_drive_mount_point>, and <backup_folder_name>
|
|
# The -a flag archives, -v is verbose, -h is human-readable, --progress shows progress.
|
|
rsync -avh --progress /home/<username>/Documents /<external_drive_mount_point>/<backup_folder_name>/
|
|
```
|
|
*Run this for each source directory.*
|
|
|
|
### 3. Backup Windows Data
|
|
|
|
- **Method:** Boot into your Windows 10 operating system.
|
|
- **Source Directories:** Connect your external backup drive. Manually copy the entire contents of your user folders to the backup drive. These are typically located at:
|
|
- `C:\Users\<YourUsername>\Documents`
|
|
- `C:\Users\<YourUsername>\Pictures`
|
|
- `C:\Users\<YourUsername>\Music`
|
|
- `C:\Users\<YourUsername>\Videos`
|
|
- `C:\Users<YourUsername>\Desktop`
|
|
- `C:\Users<YourUsername>\Downloads`
|
|
- **Thoroughness:** Be meticulous. Ensure you copy all personal data. Do not worry about program files or the Windows directory itself.
|
|
|
|
### 4. Verification
|
|
|
|
A backup is not a backup until it is verified.
|
|
|
|
- **Procedure:** After the copy process is complete for both operating systems, safely eject and reconnect the external drive.
|
|
- **Spot Check:** Browse the directories on the backup drive. Open a few files of different types (documents, images, music files) from both the Ubuntu and Windows backups to ensure they are not corrupted and are fully readable.
|
|
- **Compare Sizes:** Use a disk usage tool (like `du -sh` on Linux or checking folder properties on Windows) to compare the size of a few source directories with their backed-up counterparts. They should be identical.
|
|
|
|
### 5. Completion
|
|
|
|
- Once verified, disconnect the external backup drive.
|
|
- Store it in a safe, separate physical location.
|
|
- You may now proceed to Phase 1.
|