== Connecting to the Host QEMU
First, use **cse-admin** and password K19 to ssh to the **host QEMU** (e.g. `ecc-a-qemu01.rd.unr.edu`) machine.
The qemu number can be calculated: (computer number + 1) / 2.
Example: A-07 would be (7+1)/2 = 4 = QEMU04.
A-08 would be (8+1)/2 = 4 = QEMU04.
==Waking up a VM
When the monitor of the VM is off, you can ssh to the host machine to see if the host machine is not turn off accidentally.
If the host machine is on(which means that you can ssh to it), you can check the status of the corresponding VM by :
Use `systemctl status hmux@ecc-a-(machine number)` to check the status of the vms.
Use `uptime` to check how long the machine have been running.
``` lang=bash
# systemctl status hmux@ecc-(Lab)-(Machine Number)
$ systemctl status hmux@ecc-a-09
```
To wake up the vm
``` lang=bash
# socat - UNIX-CONNECT:/var/run/qemu/ecc-(Lab)-(Machine Number)/monitor
$ socat - UNIX-CONNECT:/var/run/qemu/ecc-a-09/monitor
```
IMPORTANT: In socat, do not just quit using the {key q} or type in `quit` because that will completely shutdown the virtual machine. Use {key Ctrl C} to exit the current session.
==VM is not responding
1. If the VM is stuck on preparing windows login in screen, do `Crtl`+`Alt`+`Delete` and hit `Cancel` after. This should allow the VM to directly display the user desktop.
2. Try to **Stop** Vms:
``` lang=bash
# systemctl stop hmux@ecc-(Lab)-(Machine Number)
$ systemctl stop hmux@ecc-a-01
```
3. If Stop Does Not Work, Use **Socat**
To gently shutdown the vm, first login to the host machine and connect to the monitor file as root
``` lang=bash
$ socat - UNIX-CONNECT:/var/run/qemu/ecc-a-${COMP_NUMBER}/monitor
# Once connected to the monitor, type quit to shutdown gracefully
$ quit
```
3. If Stop and Socat Do Not Work, **Kill the Proccess**
If the machine is still not responding, a more forceful command will be required. First, find the process id of the rogue VM
``` lang=bash
$ ps aux | grep qemu
```
This will output the processes being run with qemu, one of which should be the machine that is causing issues. Once the correct pid is found, kill the process by typing
``` lang=bash
$ sudo kill ${pid}
```
==To Start Vms
``` lang=bash
# systemctl start hmux@ecc-(Lab)-(Machine Number)
$ systemctl start hmux@ecc-a-01
```
==Qemu Host not responding to start command
If the virtual machines are not responding after the the host restarted, use the unbind script with the following command with root.
``` lang=bash
$ /var/qemu/unbind.sh
```
NOTE: ecc-a-qemu04.rd.unr.edu would mostly encounter this issue.
==Create a new Virtual Machine
1. ssh to the host machine
2. get root access by entering `$ sudo su`
3. `$ cd /var/tmp`
4. `$ ls` to make sure `win10.iso` and `virtio.iso` are within the directory
5. Remove the old volume
``` lang=bash
# lvremove (volume group)/(Vm name)
$ lvremove vg0/ecc-a-17
```
6. Create a new blank volume:
``` lang=bash
# lvcreate (Size) -n (Vm name ) (volume group)
$ lvcreate -L300G -n ecc-a-17 vg0
```