Tags

Voraussetzungen

  • Zwei leere Festplatten (z. B. /dev/sda und /dev/sdb)
  • Root-Zugriff
  • Debian 12 oder neuer

1. Vorbereitung: Platten löschen und partitionieren

wipefs -a /dev/sda
wipefs -a /dev/sdb

parted -s /dev/sda mklabel gpt
parted -s /dev/sda mkpart primary 0% 100%

parted -s /dev/sdb mklabel gpt
parted -s /dev/sdb mkpart primary 0% 100%

2. Btrfs-Dateisystem erstellen (vorerst ohne RAID1)

mkfs.btrfs -L RAID1 /dev/sdb1

3. Subvolume und Mount vorbereiten

mkdir -p /mnt/raid1
mount -o compress=zstd /dev/sdb1 /mnt/raid1
btrfs subvolume create /mnt/raid1/@
umount /mnt/raid1
mount -o compress=zstd,subvol=@ /dev/sdb1 /mnt/raid1

4. In /etc/fstab eintragen

blkid /dev/sdb1
# Dann z. B.:
UUID=<UUID> /mnt/raid1 btrfs defaults,compress=zstd,subvol=@ 0 0

5. Snapper installieren und konfigurieren

apt install snapper
snapper -c raid1 create-config /mnt/raid1

Bearbeite /etc/snapper/configs/raid1 (optional):

TIMELINE_CREATE="yes"
TIMELINE_CLEANUP="yes"
NUMBER_LIMIT="50"
ALLOW_USERS=""

Timer aktivieren:

systemctl enable --now snapper-timeline.timer
systemctl enable --now snapper-cleanup.timer

Test-Snapshot:

snapper -c raid1 create -d "Manueller Test"
snapper -c raid1 list

6. Zweite Platte hinzufügen

mkfs.btrfs /dev/sda1  # Nicht notwendig, falls Platte leer
btrfs device add /dev/sda1 /mnt/raid1

7. Btrfs auf RAID1 konvertieren

btrfs balance start -dconvert=raid1 -mconvert=raid1 /mnt/raid1

Status anzeigen:

btrfs balance status /mnt/raid1

8. Finaler Check

btrfs filesystem df /mnt/raid1
btrfs filesystem show /mnt/raid1

Du solltest Data, RAID1 und zwei Devices sehen.

Optional: Monatlicher Scrub

btrfs scrub start -Bd /mnt/raid1

Oder als systemd.timer für automatische Hintergrundprüfung.


Mit diesem Setup hast du ein modernes, ausfallsicheres Dateisystem mit Snapshot- und Selbstheilungsfähigkeit. Ideal für Datenarchivierung, Backups und langlebige Systeme.