This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
deb11:virtualboxvm [2022/09/24 11:30] – Bernard Condrau | deb11:virtualboxvm [2025/03/20 14:09] (current) – [Reboot (dead) vm] Bernard Condrau | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== VirtualBox VM ====== | ====== VirtualBox VM ====== | ||
===== Guest Additions ===== | ===== Guest Additions ===== | ||
- | * To upgrade the Guest Additions after upgrading the host version, download the guest additions pack, close all virtual machines, and start virtualbox | + | * To upgrade the Guest Additions after upgrading the VirtualBox |
- | * After installing the Guest Additions, close virtualbox | + | * After installing the Guest Additions, close VirtualBox |
- | ===== Guest Additions | + | ===== Install |
- | | + | |
- | | + | |
- | sudo apt install | + | sudo apt install dkms linux-headers-$(uname -r) build-essential</ |
- | | + | |
- | * More info: [[https:// | + | - Install |
- | + | - Restart your virtual machine in order to reload the kernel modules< | |
- | ===== Autostart | + | - If you want the VM to automatically |
- | There are several options to autostart (and autostop) virtual machines. For a server environment with a Debian host the 1. option through rc.local is preferrable. | + | - Uninstall the guest additions< |
- | - through rc.local | + | - Repeat steps 3-6 if the kernel or the VirtualBox |
- | - through X desktop | + | * [[https://kifarunix.com/install-virtualbox-guest-additions-on-debian-11/|Install VirtualBox Guest Additions on Debian 11]] |
- | - through VirtualBox command line | + | |
- | + | ||
- | ==== through rc.local ==== | + | |
- | === startup === | + | |
- | - install [[deb10: | + | |
- | - mount encrypted file systems through rc.local as explained in [[deb9: | + | |
- | - start vms through rc.local headless. Since rc.local runs as root you need to use runuser to start the vm as the user who created the vm. You may also chose to put the startvm code into a script and add execution of the script to rc.local:< | + | |
- | === shutdown === | + | |
- | - put a symlink to the following script into / | + | |
- | while [ " | + | |
- | do | + | |
- | echo waiting for VMs to shutdown | + | |
- | sleep 5 | + | |
- | done | + | |
- | </ | + | |
- | - allow < | + | |
- | < | + | |
- | - the scripts must be run as root so they can be executed through rc.local | + | |
- | - also, the server must be shut down with // | + | |
- | + | ||
- | === links === | + | |
- | * Debian [[deb10: | + | |
- | ==== through XFCE Desktop ==== | + | |
- | === startup === | + | |
- | * On the host, open **Settings -> Session and Startup**, then add a new task under **Application Autostart** with the following command:< | + | |
- | === shutdown === | + | |
- | * On the client, open **Settings -> Power Manager**, then set the desired action under "When power button is pressed" | + | |
- | + | ||
- | ==== through | + | |
- | - Configuration< | + | |
- | VBOXAUTOSTART_DB=/ | + | |
- | VBOXAUTOSTART_CONFIG=/ | + | |
- | + | ||
- | sudo vim / | + | |
- | default_policy = deny | + | |
- | # Create an entry for each user allowed to use autostart | + | |
- | username = { | + | |
- | allow = true | + | |
- | startup_delay = 10 | + | |
- | } | + | |
- | + | ||
- | sudo chgrp vboxusers /etc/vbox | + | |
- | sudo chmod 1775 /etc/vbox | + | |
- | sudo usermod -aG vboxusers username</ | + | |
- | - Choose VMs to automatically start and stop< | + | |
- | VBoxManage modifyvm < | + | |
- | VBoxManage modifyvm < | + | |
- | - Restart VirtualBox autostart service< | + | |
- | + | ||
- | ==== Start VM ==== | + | |
- | vboxmanage startvm MachineName | + | |
- | ==== Stop VM ==== | + | |
- | vboxmanage controlvm MachineName acpipowerbutton | + | |
- | In xfce desktop, make sure the action on Power Button is set in Settings --> Power Manager | + | |
- | + | ||
- | ==== Stop VM before powering down host through NUT ==== | + | |
- | Set different timeouts | + | |
- | + | ||
- | ==== Check running VMs ==== | + | |
- | One of the following commands: | + | |
- | VBoxManage list runningvms | + | |
- | vboxmanage list vms --long | grep -e " | + | |
- | + | ||
- | ==== Links ==== | + | |
- | * [[https:// | + | |
- | * [[https:// | + | |
- | * [[https:// | + | |
- | * [[http:// | + | |
- | + | ||
- | ===== Update VirtualBox ===== | + | |
- | * Make sure to update the same way you installed the previous version, either from the Oracle repository, | + | |
- | * If you followed my guide, check the VirtualBox version.revision.build (e.g. 6.1.16) | + | |
- | | + | |
- | sudo apt upgrade</ | + | |
- | | + | |
- | sudo apt install virtualbox-6.1</ | + | |
- | + | ||
- | ==== Links ==== | + | |
- | * [[https:// | + | |
- | ===== Manage VirtualBox through CLI ===== | + | |
- | ==== Extension Pack ==== | + | |
- | | + | |
- | | + | |
- | sudo vboxmanage extpack install Oracle_VM_VirtualBox_Extension_Pack-6.1.30.vbox-extpack</ | + | |
- | + | ||
- | ==== Run VM ==== | + | |
- | | + | |
- | + | ||
- | ==== Hold back upgrade ==== | + | |
- | * < | + | |
- | * < | + | |
- | ==== Links ==== | + | |
- | | + | |
- | * [[https:// | + | |
- | * [[https://linoxide.com/exclude-specific-package-apt-get-upgrade/|How to Exclude Specific Package from apt-get Upgrade]] | + | |
+ | ===== Reboot (dead) vm ===== | ||
+ | - '' | ||
+ | - '' | ||
+ | - '' | ||