update-manager/README.md

99 lines
2.4 KiB
Markdown

📚 Table of Contents
Features
Update Manager UI
Quick Install
SSH Setup
Configuration
Usage
File Structure
How it works
Requirements
Future ideas
License
Features
Check updates on multiple hosts
Run updates remotely over SSH
Simple config files
No agents required
Works with existing SSH setup
Update Manager UI
Update Manager CLI UI
Lightweight • No dependencies • Works over SSH
Quick Install
git clone https://github.com/YOUR-USER/update-manager.git
cd update-manager
sudo mkdir -p /opt/update-manager
sudo cp update-manager.sh /opt/update-manager/
sudo chmod +x /opt/update-manager/update-manager.sh
sudo ln -s /opt/update-manager/update-manager.sh /usr/local/bin/update-manager
SSH Setup (Required)
Update Manager uses SSH to connect to your hosts.
You must have SSH key-based authentication set up (no password prompts).
Generate SSH key (if not already done)
ssh-keygen -t ed25519
Copy key to hosts
ssh-copy-id user@192.168.1.10
ssh-copy-id user@192.168.1.20
ssh-copy-id user@192.168.1.30
Test connection
ssh user@192.168.1.10
You should be able to connect without entering a password.
⚠️ If SSH is not configured, the tool will fail or hang during execution.
Configuration
Copy config files
cp update-manager.conf.example update-manager.conf
cp hosts.conf.example hosts.conf
Edit hosts
nano hosts.conf
Example:
# name ip user
server1 192.168.1.10 user
server2 192.168.1.20 user
server3 192.168.1.30 user
Usage
Check updates
update-manager check
Run updates
update-manager update
File Structure
/opt/update-manager/
├── update-manager.sh
├── update-manager.conf
├── hosts.conf
How it works
Uses SSH to connect to each host
Runs apt commands remotely
No agents or services needed
Designed for simple and efficient operations
Requirements
SSH access to all hosts
SSH keys recommended (no password prompts)
Ubuntu/Debian-based systems
Future ideas
🔔 Notifications (ntfy / push alerts)
🌐 Web interface
📧 Email reporting
📜 Logging and audit trail
📊 Basic monitoring (status, last check, pending updates)
🧩 Plugin system (extensible modules)
🔐 Security & compliance checks
🤖 AI integration (Lanx AI)
License
This project is licensed under the GNU GPL v3 License.
See the LICENSE file for full details.
Author
Built with ❤️ for Lanx by NodeFox 🦊
Maintained by Eddie Nielsen
Feel free to contribute, suggest improvements or fork the project.