Update README.md
This commit is contained in:
parent
fbd823adba
commit
35bb72fc00
1 changed files with 80 additions and 1 deletions
81
README.md
81
README.md
|
@ -1 +1,80 @@
|
|||
Readme
|
||||
# Proxmox Debian VM Bootstrap Wizard
|
||||
|
||||
A simple, interactive bootstrap for freshly cloned Debian VMs on Proxmox.
|
||||
It uses a two‑stage approach:
|
||||
|
||||
1. **Bootstrap script** (stored as `setup.sh` on your VM template)
|
||||
- Prompts for root if needed
|
||||
- Downloads and runs the latest interactive wizard
|
||||
2. **Remote setup wizard** (pulled from Git)
|
||||
- Menu‑driven (`whiptail`) configuration: updates, sudo, hostname, SSH keys, aliases, neofetch, CIFS mounts, etc.
|
||||
|
||||
---
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Debian‑based VM template
|
||||
- Network access to `git.jordanwages.com`
|
||||
- `whiptail` (auto‑installed if missing)
|
||||
- Either `curl` or `wget`
|
||||
|
||||
---
|
||||
|
||||
## Installation
|
||||
|
||||
1. **Copy & rename**
|
||||
On your Debian template, place the **bootstrap** script as `/root/setup.sh`:
|
||||
```bash
|
||||
chmod +x /root/setup.sh
|
||||
|
||||
2. **Provision a new VM**
|
||||
Clone from your template and boot it. Then run:
|
||||
|
||||
```bash
|
||||
sudo /root/setup.sh
|
||||
```
|
||||
|
||||
* If you’re not root, you’ll be prompted (via `whiptail`) for the root password.
|
||||
* The script fetches and executes the latest remote wizard.
|
||||
|
||||
3. **Follow the wizard**
|
||||
Use the on‑screen menus to:
|
||||
|
||||
* Grant passwordless `sudo` to selected users
|
||||
* Apply system updates
|
||||
* Set a new hostname
|
||||
* Add SSH keys for root & your primary user
|
||||
* Install core & optional utilities (`htop`, `jq`, `git`, etc.)
|
||||
* Configure CIFS mounts for your NAS shares
|
||||
|
||||
---
|
||||
|
||||
## Customization
|
||||
|
||||
* **Default SSH key**
|
||||
Edit the `DEFAULT_SSH_KEY` variable in the remote `setup.sh` to your own public key.
|
||||
|
||||
* **Optional packages**
|
||||
Tweak the `TOOLS=(…)` array in the remote script to add or remove utilities.
|
||||
|
||||
* **CIFS shares**
|
||||
Adjust the `CIFS_HOSTS=(…)` array to match your NAS hostnames.
|
||||
|
||||
---
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
* **Fetch failures**
|
||||
Ensure network connectivity and that `curl` or `wget` is installed.
|
||||
|
||||
* **Rerunning**
|
||||
Simply invoke:
|
||||
|
||||
```bash
|
||||
sudo /root/setup.sh
|
||||
```
|
||||
|
||||
again to repeat the wizard.
|
||||
|
||||
* **Manually inspect**
|
||||
If a step errors out, inspect the console output for hints.
|
||||
|
|
Loading…
Reference in a new issue