Skip to content
Snippets Groups Projects
README.md 1.72 KiB
Newer Older
Recolic's avatar
Recolic committed
# Super-Simple QEMU manager script

> Designed for single user desktop / home server.
Recolic's avatar
Recolic committed

Recolic's avatar
Recolic committed
Turn your server/desktop to DigitalOcean / Linode / Vultr with a super-simple script.
Recolic's avatar
Recolic committed

Recolic's avatar
Recolic committed
- Easy setup: No dependency, no libvirt, no user/group/pool config.

- Easy configuration: Simple list your VMs in config file.

- Easy management: Everything in one single directory.

- Easy customization: Just a naive bash script. Everyone knows how to customize.
Recolic's avatar
Recolic committed

Recolic's avatar
.  
Recolic committed
## Dependency
Recolic's avatar
Recolic committed

Recolic's avatar
Recolic committed
qemu, bash, sed

Recolic's avatar
Recolic committed
Any of: aria2c / wget / curl
Recolic's avatar
Recolic committed

Recolic's avatar
Recolic committed
> ArchLinux user: simply run `pacman -S cdrkit qemu-system-x86 qemu-base edk2-ovmf aria2`
Recolic's avatar
Recolic committed

## Usage

Recolic's avatar
Recolic committed
1. Download this repo to anywhere.
2. Modify `init.settings` and `runtime.settings`.
3. Add `* * * * * cd /path/to/my/repo && flock -n /tmp/.vmm.lockfile ./cron-callback.sh` into your crontab.
Recolic's avatar
Recolic committed

Recolic's avatar
Recolic committed
## Supported cloudimg

Recolic's avatar
Recolic committed
|||
| ---              | ---                              |
|Ubuntu 2204 LTS   |`focal-server-cloudimg-amd64.img` |
|Arch Linux Rolling|`Arch-Linux-x86_64-cloudimg.qcow2`|
Recolic's avatar
Recolic committed

## Supported back image

**Warning**: This is unofficial back image built by myself. It has preset username and password. **USE IT AT YOUR OWN RISK!!!**.

|||
| ---               | ---                              |
|Windows 10 Pro 22H2|`win10pro-22h2-virtio-uefi.qcow2` |
|Tiny10 Minimal 21H2|`win10-tiny10-virtio-uefi.qcow2`  |

Recolic's avatar
Recolic committed
## FAQ
Recolic's avatar
Recolic committed

Recolic's avatar
Recolic committed
### SSH not working for my new VM

Please wait for at least 3 minutes and try again. cloud-init is slow.

### My desired OS is not supported yet...
Recolic's avatar
Recolic committed

You can still create a VM in other way (like plain qemu), and put the disk image into `data/vm/VM_NAME/disk.img`. Everything will work perfectly.
Recolic's avatar
Recolic committed

Recolic's avatar
.  
Recolic committed
Or you can also use an existing qcow2 image as base image. Put it into `data/base/` and use it in init.settings.

Recolic's avatar
Recolic committed
## Thanks

ChatGPT