From 554eec97b0480adf72a4f0103ad13c582e7b624f Mon Sep 17 00:00:00 2001 From: rope Date: Wed, 23 Sep 2026 10:08:13 +0100 Subject: [PATCH] Drop recursive media chown and migration backup script Co-Authored-By: Claude Opus 5.5 --- backup-server.sh | 41 --------------------------------- readme.md | 3 +-- services/server-permissions.nix | 6 ----- 3 files changed, 1 insertion(+), 49 deletions(-) delete mode 100755 backup-server.sh diff --git a/backup-server.sh b/backup-server.sh deleted file mode 100755 index f3f2b9d..0000000 --- a/backup-server.sh +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -BACKUP_DIR="/mnt/disk4/server-backup-$(date +%Y%m%d)" -echo "Backing up to: $BACKUP_DIR" -mkdir -p "$BACKUP_DIR" - -# Stop services first to get clean copies -echo "Stopping services..." -sudo systemctl stop jellyfin sonarr radarr prowlarr bazarr qbittorrent-nox authelia-main 2>/dev/null || true -sleep 3 - -# Service databases and config -for dir in jellyfin sonarr radarr prowlarr bazarr qbittorrent authelia-main; do - if [ -d "/var/lib/$dir" ]; then - echo "Backing up /var/lib/$dir ..." - sudo mkdir -p "$BACKUP_DIR/var-lib/$dir" - sudo rsync -a "/var/lib/$dir/" "$BACKUP_DIR/var-lib/$dir/" - else - echo "Skipping /var/lib/$dir (not found)" - fi -done - -# Secrets -if [ -d "/var/secrets" ]; then - echo "Backing up /var/secrets ..." - sudo mkdir -p "$BACKUP_DIR/var-secrets" - sudo rsync -a "/var/secrets/" "$BACKUP_DIR/var-secrets/" -else - echo "Skipping /var/secrets (not found)" -fi - -echo "" -echo "Backup complete: $BACKUP_DIR" -echo "" -echo "Size: $(sudo du -sh "$BACKUP_DIR" | cut -f1)" -echo "" -echo "NOTE: Media files on /mnt/storage are NOT included — move the data disks to the new server directly." -echo "" -echo "Restarting services..." -sudo systemctl start jellyfin sonarr radarr prowlarr bazarr qbittorrent-nox authelia-main 2>/dev/null || true diff --git a/readme.md b/readme.md index 6a58116..894404d 100644 --- a/readme.md +++ b/readme.md @@ -66,7 +66,6 @@ Flake-based NixOS configuration for three machines, built and deployed directly │ └── users.nix # User accounts, SSH keys ├── templates # CSS templates recoloured by stylix.nix ├── walls # Wallpapers -├── backup-server.sh # One-shot mediaserver state backup (run manually) ├── ports.toml # WAN → LAN port forwards consumed by router.nix ├── common.nix # Shared config imported by all hosts ├── flake.lock # Auto-generated, updated daily by Forgejo Actions @@ -236,7 +235,7 @@ sudo chown authelia-main:authelia-main /var/lib/authelia-main/users_database.yml ## Migrating to a new server -When moving FredOS-Mediaserver to new hardware, back up these state directories from the old server (`backup-server.sh` automates most of it): +When moving FredOS-Mediaserver to new hardware, back up these state directories from the old server: ```bash # Service databases and config (stop services first) diff --git a/services/server-permissions.nix b/services/server-permissions.nix index 1dfe135..3f91367 100644 --- a/services/server-permissions.nix +++ b/services/server-permissions.nix @@ -12,17 +12,11 @@ let ]; directories = pkgs.writeText "media-directories.conf" '' d /mnt/storage/torrents/downloads 2775 qbittorrent media - - Z /mnt/storage/torrents/downloads 2775 qbittorrent media - d /mnt/storage/torrents/shows 2775 sonarr media - - Z /mnt/storage/torrents/shows 2775 sonarr media - d /mnt/storage/torrents/movies 2775 radarr media - - Z /mnt/storage/torrents/movies 2775 radarr media - d /mnt/storage/torrents/audiobooks 2775 fred media - - Z /mnt/storage/torrents/audiobooks 2775 fred media - d /mnt/storage/usenet/downloads 2775 sabnzbd media - - Z /mnt/storage/usenet/downloads 2775 sabnzbd media - d /mnt/storage/usenet/incomplete 2775 sabnzbd media - - Z /mnt/storage/usenet/incomplete 2775 sabnzbd media - ''; in {