bashvm Guide

Complete documentation for setting up and using bashvm

Getting Started
Initial Installation

Follow these commands to install bashvm

apt install git -y
git clone https://github.com/babywhale321/bashvm.git
cd bashvm/
bash bashvm-installer.sh
bash bashvm.sh
Creating a Storage Pool

A storage pool is where your ISO and disk images will reside on

Storage Pool Screenshot
Creating a Storage Volume

The storage volume is where the actual VM will reside on

Storage Volume Screenshot
Creating a Network

Choosing a macvtap network will be directly attached to the host interface

Where a NAT network will be a private subnet behind the host interface

Network Screenshot
Creating a New VM

See the example below about creating a new VM

VM Screenshot
Automated VM Creation

Creating an automated VM will use the default network and pool ("/var/lib/libvirt/images")

Automated VM Screenshot
Virtual Machines
Creating a New VM

See the example below about creating a new VM

VM Screenshot
Automated VM Creation

Creating an automated VM will use the default network and pool ("/var/lib/libvirt/images")

Automated VM Screenshot
Storage Pools
Creating a Storage Pool

A storage pool is where your ISO and disk images will reside on

Storage Pool Screenshot
Creating a Storage Volume

The storage volume is where the actual VM will reside on

Storage Volume Screenshot
Networking
Creating a Network

Choosing a macvtap network will be directly attached to the host interface

Where a NAT network will be a private subnet behind the host interface

Network Screenshot
DHCPv6 Configuration

An example configuration, for manual setup

DHCPv6 Configuration Screenshot

An auto setup will try to make an educated guess about the necessary information

Auto Setup Screenshot
DHCP Reservation

For IPv4 you will need to know the vm name, mac address, network name and the new IPv4 to assign

For IPv6 you will need to know the vm name, network name and the new IPv6 to assign

DHCP Reservation Screenshot
Port Forwarding
Creating Port Forwarding Rules

These rules are optional but will forward 1 ssh + 20 ports

Port Forwarding Rules Screenshot
VNC / Console
Adding / Removing VNC

When accessing through VNC there is no user / password

See example below for adding or removing vnc access

VNC Screenshot
Console Access

Manually created vm's will not have console access by default

On the vm os you can either use the console service or grub entry as followed

systemctl service

systemctl enable --now [email protected]

Console Access Screenshot

grub entry "/etc/default/grub"

GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,115200n8"

Grub Entry Screenshot