Add CHANGELOG and update README with new features

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 <noreply@anthropic.com>
This commit is contained in:
zaphod-black 2025-11-01 16:40:53 -05:00
parent fde5a9edf2
commit 71f7519353
2 changed files with 81 additions and 0 deletions

46
CHANGELOG.md Normal file
View file

@ -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

View file

@ -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