From 71f751935367f610b048e46dec430d01f669ec3e Mon Sep 17 00:00:00 2001 From: zaphod-black Date: Sat, 1 Nov 2025 16:40:53 -0500 Subject: [PATCH] Add CHANGELOG and update README with new features MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Added: - CHANGELOG.md following Keep a Changelog format - Documented all changes from v1.0.0 to current unreleased version - README section explaining reconfiguration options - Enhanced troubleshooting section with connection test details The CHANGELOG documents: - Reconfiguration feature for existing installations - Connection test timeout and improved error messages - Installation method change from wget to git clone The README now clearly explains: - How to reconfigure existing installations - Connection-only vs full reconfiguration options - Use cases for quick connection updates - Connection test timeout behavior and error types 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- CHANGELOG.md | 46 ++++++++++++++++++++++++++++++++++++++++++++++ README.md | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 81 insertions(+) create mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..d47897a --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,46 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +### Added +- Intelligent reconfiguration options when PBS client is already installed + - Quick connection-only reconfiguration (server/credentials only) + - Full reconfiguration of all settings + - Reinstall option with reconfiguration + - Exit without changes option +- Connection test timeout (30 seconds) to prevent indefinite hanging +- Detailed error messages for connection failures + - Differentiates between timeout and authentication errors + - Provides specific troubleshooting steps based on error type + - Displays helpful diagnostic commands + +### Changed +- Installation instructions now use `git clone` instead of `wget` +- Connection test provides better user feedback during testing +- Script now detects existing configurations and offers appropriate options + +### Fixed +- Script no longer hangs indefinitely when PBS server is unreachable +- Connection test now properly handles timeout scenarios + +## [1.0.0] - 2025-11-01 + +### Added +- Initial release +- Auto-detection of Linux distribution (Ubuntu, Debian, Arch) +- Interactive configuration via console prompts +- Automatic encryption key generation with paper backup +- Systemd service and timer for automated backups +- Configurable retention policies +- Connection testing before finalization +- Immediate backup option after installation +- Support for file-level (.pxar) backups +- Support for block device (.img) backups +- Hybrid backup mode (daily files + weekly block device) +- Comprehensive error handling and logging +- Uninstaller script diff --git a/README.md b/README.md index 40e2432..056d7c2 100644 --- a/README.md +++ b/README.md @@ -47,6 +47,29 @@ chmod +x pbs-client-installer.sh sudo ./pbs-client-installer.sh ``` +### Reconfiguration + +If PBS client is already installed, the script will detect this and offer you options: + +**With existing configuration:** +- **Reconfigure connection only** - Quick update of PBS server IP/credentials only +- **Full reconfiguration** - Redo all settings (paths, schedules, retention, etc.) +- **Reinstall PBS client and reconfigure** - Complete reinstall +- **Exit without changes** + +**Without existing configuration:** +- **Configure PBS client** - Set up for the first time +- **Reinstall and configure** - Fresh installation +- **Exit without changes** + +The connection-only reconfiguration is perfect for: +- Switching to a different backup server +- Updating expired API tokens +- Changing authentication methods +- Updating datastore names + +All backup settings (paths, schedules, retention policies) are preserved. + ## Usage Example The script will interactively prompt you for: @@ -232,6 +255,18 @@ sudo cp /path/to/saved/encryption-key.json /root/.config/proxmox-backup/ ### Connection Test Fails +The installer tests the connection with a 30-second timeout. If it fails, you'll see specific error messages: + +**Timeout errors** (30+ seconds): +- PBS server is unreachable (check IP/hostname) +- Firewall blocking port (default: 8007) +- Network connectivity issues + +**Authentication errors** (immediate failure): +- Invalid credentials (username/password/token) +- Datastore does not exist on server +- User lacks permissions for the datastore + Check your PBS server is accessible: ```bash ping 192.168.1.181