Automated script to convert a fresh Debian 13 (Trixie) installation into a fully functional Proxmox VE hypervisor with proper network bridge configuration.
This script makes significant changes to your system:
- Modifies network configuration
- Changes kernel
- Installs hypervisor components
- Reconfigures network interfaces
ALWAYS create a backup before running this script!
- β Automatic Debian 13 detection
- β FQDN configuration
- β Proxmox VE repository setup (no-subscription)
- β Automatic network interface detection
- β Bridge (vmbr0) creation with interface enslavement
- β IP configuration migration
- β NetworkManager/systemd-networkd handling
- β Postfix configuration
- β Optional Debian kernel removal
- β Post-installation network testing tools
- β Automatic backup of configurations
- β Recovery scripts included
- Fresh Debian 13 (Trixie) installation
- Root access
- Active internet connection
- Static IP address (recommended)
- Valid FQDN or ability to set one
- CPU: 64-bit processor with virtualization support (Intel VT-x/AMD-V)
- RAM: 2 GB minimum (4 GB+ recommended)
- Disk: 20 GB minimum
- Network: Static IP recommended
wget https://raw.githubusercontent.com/MrMasterbay/proxmox-from-scratch/main/little-goblin.sh
# or
curl -O https://raw.githubusercontent.com/MrMasterbay/proxmox-from-scratch/main/little-goblin.shchmod +x little-goblin.shsudo ./little-goblin.shThe script will guide you through:
- FQDN configuration
- Network interface detection
- IP configuration confirmation
- Kernel removal option
- Reboot confirmation
After reboot, access the web interface at:
https://YOUR-IP-ADDRESS:8006
Default credentials:
- Username:
root - Password: Your root password
# Check Debian version
cat /etc/debian_version
# Should show: trixie/sid or 13.x
# Check network configuration
ip addr show
ip route
# Verify internet connectivity
ping -c 3 google.com
# Check hostname
hostname -fThe script will:
- Detect your primary network interface (e.g.,
eth0,ens18) - Read current IP configuration
- Create bridge
vmbr0 - Enslave physical interface to bridge
- Transfer IP configuration to bridge
Before:
eth0: 192.168.1.100/24
After:
eth0: no IP (enslaved to vmbr0)
vmbr0: 192.168.1.100/24 (bridge with eth0 as slave)
root@debian:~# ./little-goblin.sh
[STEP] Checking Debian version...
[INFO] Debian 13 (Trixie) detected
[STEP] Checking hostname configuration...
[WARN] No complete FQDN found!
Enter FQDN (e.g. pve.example.com): pve.homelab.local
[INFO] Hostname set to pve.homelab.local
[STEP] Detecting network configuration...
[INFO] Primary interface: ens18
[INFO] Current configuration:
Interface: ens18
IP Address: 192.168.1.100/24
Gateway: 192.168.1.1
DNS: 192.168.1.1
Use this configuration for vmbr0? (yes/no): yes
[STEP] Updating system...
[STEP] Installing prerequisites...
[STEP] Adding Proxmox VE repository...
[STEP] Installing Proxmox VE (this may take several minutes)...
[STEP] Configuring network bridge (vmbr0)...
[INFO] Interface ens18 will be enslaved to vmbr0
Remove Debian kernel and keep only Proxmox kernel? (yes/no): yes
[INFO] Installation completed!
[INFO] Proxmox VE Web Interface: https://192.168.1.100:8006
Reboot now? (yes/no): yesAfter reboot, run the included test script:
/root/proxmox-network-test.shThis will check:
- Bridge status
- Enslaved interfaces
- Routing
- Gateway connectivity
- DNS resolution
# Check bridge configuration
brctl show vmbr0
# Verify interface enslavement
cat /sys/class/net/ens18/master
# Should output: vmbr0
# Check IP addresses
ip addr show vmbr0 # Should have your IP
ip addr show ens18 # Should NOT have an IP
# Test connectivity
ping -c 3 8.8.8.8# Check Proxmox services
systemctl status pve-cluster
systemctl status pvedaemon
systemctl status pveproxy
# Check Proxmox version
pveversionOption 1: Use Recovery Script
/root/proxmox-network-recovery.shOption 2: Manual Recovery via Console/IPMI
# List available backups
ls -la /etc/network/interfaces.backup.*
# Restore backup
cp /etc/network/interfaces.backup.YYYYMMDD_HHMMSS /etc/network/interfaces
# Restart network
systemctl restart networking
# Or reboot
rebootOption 3: Manual Bridge Configuration
# Bring down bridge
ip link set vmbr0 down
# Reconfigure interface
ip addr add 192.168.1.100/24 dev ens18
ip link set ens18 up
ip route add default via 192.168.1.1# Check if services are running
systemctl status pveproxy
systemctl status pvedaemon
# Check firewall (if enabled)
iptables -L -n
# Check if port 8006 is listening
netstat -tlnp | grep 8006
# Restart Proxmox services
systemctl restart pveproxy# Check bridge ports
ls /sys/class/net/vmbr0/brif/
# Manually add interface to bridge
ip link set ens18 master vmbr0
# Or reconfigure via interfaces file
ifreload -a# Check resolv.conf
cat /etc/resolv.conf
# Add DNS manually to /etc/network/interfaces
# Under vmbr0 section:
dns-nameservers 8.8.8.8 8.8.4.4
# Restart networking
systemctl restart networking| Error | Solution |
|---|---|
Interface already a bridge |
Choose a different physical interface |
No IP address found |
Configure static IP before running script |
FQDN resolution fails |
Check /etc/hosts and DNS configuration |
Repository not found |
Check internet connection and try again |
Package conflicts |
Run apt-get dist-upgrade first |
The script creates several files:
| File | Purpose |
|---|---|
/etc/network/interfaces |
New network configuration |
/etc/network/interfaces.backup.* |
Backup of original config |
/etc/hosts.backup |
Backup of hosts file |
/root/proxmox-network-test.sh |
Network testing script |
/root/proxmox-network-recovery.sh |
Quick recovery script |
/etc/apt/sources.list.d/pve-install-repo.list |
Proxmox repository |
-
Change root password
passwd
-
Configure Proxmox firewall (via web interface)
- Datacenter β Firewall β Enable
-
Set up 2FA (optional)
- Datacenter β Permissions β Two Factor
-
Create non-root users
- Datacenter β Permissions β Users
-
Consider subscription for production use
- Removes repository nag
- Provides enterprise support
- Access to tested repositories
This script uses the no-subscription repository:
deb http://download.proxmox.com/debian/pve trixie pve-no-subscription
For production environments, consider purchasing a subscription:
deb https://enterprise.proxmox.com/debian/pve trixie pve-enterprise
- Initial release
- Automatic network detection
- Bridge configuration with interface enslavement
- Recovery scripts
- Post-installation testing tools
This project is licensed under the MIT License - see the LICENSE file for details.
- Proxmox VE Team for excellent virtualization platform
- Debian Project for stable base system
- Community contributors and testers
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Proxmox Forum: forum.proxmox.com
- Proxmox Wiki: pve.proxmox.com/wiki
This script is provided "as is" without warranty of any kind. Always backup your system before making significant changes. The authors are not responsible for any data loss or system issues resulting from the use of this script.
- Proxmox VE Documentation
- Proxmox VE Administration Guide
- Debian Network Configuration
- Linux Bridge Configuration
Made with β€οΈ for the homelab community
Star β this repository if you find it useful!