Guide

Getting Started
Inital installing
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.


Creating a Storage Volume

The storage volume is where the actual vm will reside on.


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.


Creating a VM

See the example below about creating a new vm.


Creating a VM (Automated)

Creating a automated vm will use the default network, and will use the default pool "/var/lib/libvirt/images"



Virtual Machines
Creating a new / exsisting vm

See the example below about creating a new or exsisting vm.


Creating a VM (Automated)

Creating a automated vm will use the default network, and will use the default pool "/var/lib/libvirt/images"



Storage Pools
Creating a Storage Pool

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


Creating a Storage Volume

The storage volume is where the actual vm will reside on.



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.


DHCPv6 configuration

An example configuration, For manual setup

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


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



Port Forwarding
Creating port forwarding rules

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



VNC / Console
Adding / Removing VNC

When accessing through VNC there is no user / password

See example below for adding or removing vnc access


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]


grub entry "/etc/default/grub"

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