On Windows, autostart functionality consist of two components.
The first component is a configuration file where the
administrator can both set a delayed start for the VMs and
temporarily disable autostarting for a particular user. The
configuration file should be located in a folder accessible by
all required users but it should have permissions allowing only
reading by everyone but administrators. The configuration file
contains several options. The
# Default policy is to deny starting a VM, the other option is "allow". default_policy = deny # Bob is allowed to start virtual machines but starting them # will be delayed for 10 seconds bob = { allow = true startup_delay = 10 } # Alice is not allowed to start virtual machines, useful to exclude certain users # if the default policy is set to allow. alice = { allow = false }
The user name can be specified using the following forms:
"user", "domain\user", ".\user" and "user@domain". An
administrator must add the
The second component of autostart functionality is a Windows service. Every instance of this works on behalf of a particular user using their credentials.
To enable autostarting for a particular user, a member of the administrators group must run the following command:
VBoxAutostartSvc install --user=user [--password-file=password_file ]
The password file should contain the password followed by a line break. The rest of the file is ignored. The user will be asked for a password if the password file is not specified.
To disable autostarting for particular user, a member of the administrators group must run the following command:
VBoxAutostartSvc delete --user=user
If a user has changed their password then a member of the administrators group must either reinstall the service or change the service credentials using Windows Service Manager. Due to Windows security policies, the autostart service cannot be installed for users with empty passwords.
Finally, the user should define which VMs should be started at boot. The user should run the following command for every VM they want to start at boot:
VBoxManage modifyvmVM name or UUID --autostart-enabled on
The user can remove a particular VM from the VMs starting at boot by running the following command:
VBoxManage modifyvmVM name or UUID --autostart-enabled off
On Windows hosts, starting VMs by using the autostart service might cause some issues, as
the virtual machines are starting within the same session as VBoxSVC. For more information
see