From 8f3bd49a51409e78f2d2391f228a0593ae9789ea Mon Sep 17 00:00:00 2001 From: zaphod-black Date: Sat, 1 Nov 2025 18:15:13 -0500 Subject: [PATCH] Improve defaults and add run backup now option MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit User Experience Improvements: 1. Changed Default Realm from "pbs" to "pam" - "pam" is the standard realm for root authentication - More intuitive for most users - Matches common Proxmox setup patterns 2. Changed Default Encryption from "yes" to "no" - Removes friction for quick testing and setup - Users can easily opt-in during configuration - Reduces complexity for basic backup scenarios - Advanced users still have the option available 3. Added "Run backup now" to Main Menu - New option 4 in the existing configuration menu - Allows immediate backup testing without reconfiguration - Starts backup service and offers to follow logs - Provides helpful commands if backup fails - Makes it easy to test backups after setup Changes: - pbs-client-installer.sh: - Line 265, 349: PBS_REALM default changed to "pam" - Line 462: ENABLE_ENCRYPTION default changed to "no" - Lines 895-939: Added option 4 "Run backup now" with log following - Shifted "Exit" from option 4 to option 5 CHANGELOG.md: - Documented all three changes in "Changed" section - Highlighted default changes in bold This makes the installer more user-friendly for the common case (root@pam authentication, no encryption for testing) while still supporting advanced configurations. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- CHANGELOG.md | 3 +++ pbs-client-installer.sh | 32 +++++++++++++++++++++++++++----- 2 files changed, 30 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d2a21dc..97fe533 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,6 +40,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Reduced authentication timeout from 30s to 15s - README now includes comprehensive step-by-step walkthrough - Prerequisites section expanded with detailed PBS server setup instructions +- **Default realm changed from "pbs" to "pam"** (more common for root authentication) +- **Default encryption setting changed from "yes" to "no"** (user can opt-in if needed) +- Main menu now includes "Run backup now" option for immediate backup testing ### Fixed - **CRITICAL**: SSL fingerprint prompt no longer causes authentication timeout diff --git a/pbs-client-installer.sh b/pbs-client-installer.sh index b047886..e7af36a 100755 --- a/pbs-client-installer.sh +++ b/pbs-client-installer.sh @@ -262,7 +262,7 @@ reconfigure_connection() { PBS_REPOSITORY="${PBS_USERNAME}@${PBS_REALM}@${PBS_SERVER}:${PBS_PORT}:${PBS_DATASTORE}" else PBS_USERNAME=$(prompt "Enter username" "backup") - PBS_REALM=$(prompt "Enter realm" "pbs") + PBS_REALM=$(prompt "Enter realm" "pam") PBS_TOKEN_NAME=$(prompt "Enter token name" "backup-token") PBS_TOKEN_SECRET=$(prompt_password "Enter token secret") PBS_REPOSITORY="${PBS_USERNAME}@${PBS_REALM}!${PBS_TOKEN_NAME}@${PBS_SERVER}:${PBS_PORT}:${PBS_DATASTORE}" @@ -346,7 +346,7 @@ interactive_config() { PBS_REPOSITORY="${PBS_USERNAME}@${PBS_REALM}@${PBS_SERVER}:${PBS_PORT}:${PBS_DATASTORE}" else PBS_USERNAME=$(prompt "Enter username" "backup") - PBS_REALM=$(prompt "Enter realm" "pbs") + PBS_REALM=$(prompt "Enter realm" "pam") PBS_TOKEN_NAME=$(prompt "Enter token name" "backup-token") PBS_TOKEN_SECRET=$(prompt_password "Enter token secret") PBS_REPOSITORY="${PBS_USERNAME}@${PBS_REALM}!${PBS_TOKEN_NAME}@${PBS_SERVER}:${PBS_PORT}:${PBS_DATASTORE}" @@ -459,7 +459,7 @@ interactive_config() { # Encryption echo - ENABLE_ENCRYPTION=$(prompt "Enable encryption? (yes/no)" "yes") + ENABLE_ENCRYPTION=$(prompt "Enable encryption? (yes/no)" "no") } # Create encryption key @@ -892,8 +892,9 @@ main() { echo " 1) Reconfigure connection only (server/credentials)" echo " 2) Full reconfiguration (all settings)" echo " 3) Reinstall PBS client and reconfigure" - echo " 4) Exit" - ACTION=$(prompt "Select option [1/2/3/4]" "1") + echo " 4) Run backup now" + echo " 5) Exit" + ACTION=$(prompt "Select option [1/2/3/4/5]" "1") case "$ACTION" in 1) @@ -917,6 +918,27 @@ main() { # Continue to interactive_config below ;; 4) + info "Running backup now..." + echo + if systemctl start pbs-backup.service; then + log "Backup job started" + echo + info "View backup progress with:" + echo " sudo journalctl -fu pbs-backup.service" + echo + + # Ask if they want to follow logs + FOLLOW_LOGS=$(prompt "Follow backup logs now? (yes/no)" "yes") + if [[ "$FOLLOW_LOGS" == "yes" ]]; then + journalctl -fu pbs-backup.service + fi + else + error "Failed to start backup job" + info "Check logs with: sudo journalctl -u pbs-backup.service" + fi + exit 0 + ;; + 5) info "Exiting without changes" exit 0 ;;