135 lines
1.8 KiB
Markdown
135 lines
1.8 KiB
Markdown
# Update Manager
|
|
|
|
Simple tool to check for available updates on multiple Linux servers via SSH.
|
|
|
|
---
|
|
|
|
## 🚀 First Time Setup
|
|
|
|
### 1. Install script
|
|
|
|
```bash
|
|
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
|
|
```
|
|
|
|
---
|
|
|
|
### 2. Run for the first time
|
|
|
|
```bash
|
|
update-manager check
|
|
```
|
|
|
|
This will automatically create:
|
|
|
|
```
|
|
/opt/update-manager/hosts.conf
|
|
```
|
|
|
|
---
|
|
|
|
### 3. Edit hosts file
|
|
|
|
```bash
|
|
nano /opt/update-manager/hosts.conf
|
|
```
|
|
|
|
Example:
|
|
|
|
```bash
|
|
# name ip user
|
|
server1 192.168.1.10 user
|
|
server2 192.168.1.20 user
|
|
```
|
|
|
|
---
|
|
|
|
### 4. Setup SSH access (required)
|
|
|
|
From your main machine:
|
|
|
|
```bash
|
|
ssh-copy-id user@192.168.1.10
|
|
ssh-copy-id user@192.168.1.20
|
|
```
|
|
|
|
Passwordless SSH is required for the tool to work.
|
|
|
|
---
|
|
|
|
### 5. Run again
|
|
|
|
```bash
|
|
update-manager check
|
|
```
|
|
|
|
---
|
|
|
|
## ✅ Example output
|
|
|
|
```bash
|
|
===== server1 (192.168.1.10) =====
|
|
Up-to-date
|
|
|
|
===== server2 (192.168.1.20) =====
|
|
vim-common ...
|
|
```
|
|
|
|
---
|
|
|
|
## ⚠️ Requirements
|
|
|
|
* SSH access to all servers
|
|
* SSH keys configured (`ssh-copy-id`)
|
|
* Debian/Ubuntu-based systems
|
|
|
|
---
|
|
|
|
## 📁 Hosts file format
|
|
|
|
```
|
|
name ip user
|
|
```
|
|
|
|
Example:
|
|
|
|
```
|
|
web 192.168.1.10 ubuntu
|
|
db 192.168.1.20 root
|
|
```
|
|
|
|
---
|
|
|
|
## 🧠 Notes
|
|
|
|
* The hosts file is created automatically on first run
|
|
* Lines starting with `#` are ignored
|
|
* Empty lines are ignored
|
|
* Requires passwordless SSH access
|
|
|
|
🖥️ Terminal UI
|
|
|
|
You can also use the interactive terminal menu:
|
|
|
|
update-manager-ui
|
|
Features
|
|
|
|
Check all hosts
|
|
|
|
View hosts file
|
|
|
|
Edit hosts file
|
|
|
|
Add host
|
|
|
|
Remove host
|
|
|
|
Requirements
|
|
|
|
The UI uses whiptail. Install it if needed:
|
|
|
|
sudo apt update && sudo apt install whiptail -y
|