Package: virtualbox-guest-utils Version: 7.0.16-dfsg-2ubuntu1.1 Severity: normal Tags: patch
When a VirtualBox VM with auto-mounted shared folders (vboxsf) is started headless (--type headless), the guest hangs indefinitely during boot at "loading essential drivers" and never becomes accessible via SSH. The boot completes normally when the VirtualBox GUI is opened. ROOT CAUSE: /etc/init.d/virtualbox-guest-utils declares: # Required-Start: $remote_fs # Required-Stop: $remote_fs systemd translates $remote_fs to remote-fs.target. However, auto-mounted shared folders (type vboxsf) are classified by systemd as remote mounts and therefore become part of remote-fs.target. This creates a circular dependency: remote-fs.target → waits for home-pascal-templates.mount (type vboxsf) → requires vboxsf kernel module and VBoxService → virtualbox-guest-utils.service → waits for remote-fs.target ← DEADLOCK Confirmed via systemd-analyze critical-chain: graphical.target @24.588s └─multi-user.target @24.588s └─apport.service @24.088s +499ms └─remote-fs.target @24.085s └─remote-fs-pre.target @24.085s And systemd-analyze critical-chain virtualbox-guest-utils.service: virtualbox-guest-utils.service +10.516s └─basic.target @10.964s └─... └─local-fs.target @7.255s └─home-pascal-templates.mount @22.680s ← vboxsf mount └─local-fs-pre.target @2.239s The deadlock resolves non-deterministically when the VirtualBox GUI is open, because VBoxSVC initialization provides a different timing context. FIX: Change Required-Start and Required-Stop in /etc/init.d/virtualbox-guest-utils from $remote_fs to $local_fs: --- a/etc/init.d/virtualbox-guest-utils +++ b/etc/init.d/virtualbox-guest-utils @@ -5,8 +5,8 @@ # Provides: vboxguest virtualbox-guest-utils # Short-Description: VirtualBox Linux Additions -# Required-Start: $remote_fs -# Required-Stop: $remote_fs +# Required-Start: $local_fs +# Required-Stop: $local_fs VBoxService is itself responsible for mounting shared folders (vboxsf). It cannot depend on remote-fs.target which is only fulfilled after those same mounts complete. $local_fs is semantically correct: VBoxService only requires the local filesystem to be ready before it can start. SYSTEM INFORMATION: Linux claude-agent 6.8.0-106-generic #106-Ubuntu SMP PREEMPT_DYNAMIC Fri Mar 6 07:58:08 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux Host OS: Windows 11 VirtualBox version: 7.0.16 Guest OS: Ubuntu 24.04 (headless, no desktop environment) Shared folders: 3 auto-mounted folders (type vboxsf)

