lima-vm/lima · error
failed to request start via autostart manager: %w
Error message
failed to request start via autostart manager: %w
What it means
When the instance IS registered with an autostart manager (and the host agent should not run in the foreground), Lima delegates launching to the manager via autostart.RequestStart (e.g. kickstartctl/systemctl start). If that request fails, start aborts with this wrapped error.
Source
Thrown at pkg/instance/start.go:313
haCmd.SysProcAttr = executil.BackgroundSysProcAttr
haCmd.Stdout = haStdoutW
haCmd.Stderr = haStderrW
if launchHostAgentForeground {
if isRegisteredToAutoStart {
logrus.Warn("The instance is registered to start at login, but the --foreground option was given, so starting the instance directly")
}
haCmd.SysProcAttr = executil.ForegroundSysProcAttr
if err := execHostAgentForeground(limactl, haCmd); err != nil {
return err
}
} else if err := haCmd.Start(); err != nil {
return err
}
} else if err = autostart.RequestStart(ctx, inst); err != nil {
return fmt.Errorf("failed to request start via autostart manager: %w", err)
}
if err := waitHostAgentStart(ctx, haPIDPath, haStderrPath); err != nil {
return err
}
watchErrCh := make(chan error)
go func() {
watchErrCh <- watchHostAgentEvents(ctx, inst, haStdoutPath, haStderrPath, begin, showProgress)
close(watchErrCh)
}()
waitErrCh := make(chan error)
if haCmd != nil {
go func() {
waitErrCh <- haCmd.Wait()
close(waitErrCh)
}()
} else {View on GitHub (pinned to dd909d0973)
Solutions
- Inspect the manager's own error/unit logs: journalctl --user -u 'lima*' (Linux) or log show --predicate for launchd (macOS).
- Verify the autostart entry points at the current limactl binary; re-register: limactl autostart remove/unregister then re-register, or `limactl start` again after fixing.
- Confirm the systemd user instance/launchd is healthy (systemctl --user status).
- Bypass the manager by unregistering autostart for the instance and starting it in the foreground.
Example fix
// before limactl start myvm # registered, RequestStart fails // after journalctl --user -u 'lima*' -e # find the real failure limactl stop -f myvm && limactl start myvm # or re-register autostart
Defensive patterns
Strategy: try-catch
Validate before calling
// verify the manager can act before requesting a start
if runtime.GOOS == "linux" {
if err := exec.Command("systemctl", "--user", "is-active", "basic.target").Run(); err != nil {
log.Println("systemd user manager not active")
}
} Try / catch
err := instance.Start(ctx, inst, "")
if err != nil && strings.Contains(err.Error(), "request start via autostart manager") {
// unregister and start in foreground as fallback
_ = autostart.UnregisterFromStartAtLogin(ctx, inst)
err = instance.Start(ctx, inst, "")
} Prevention
- Inspect manager unit logs (journalctl --user, launchd logs) when registered starts fail
- Re-register autostart after upgrading/relocating the limactl binary
- Keep the systemd user session active (linger) on servers
- Use foreground start for interactive debugging instead of the manager path
When it happens
Trigger: `limactl start <inst>` on an autostart-registered instance where RequestStart fails: systemd unit failed to start, launchd service rejected the kickstart, unit file missing/mangled, or the manager is not running.
Common situations: User systemd unit broken after an upgrade; instance registered under a different user than the one invoking start; launchd plist pointing to a stale limactl binary path; disk/log directory permission issues making the service fail instantly.
Related errors
- failed to check if the autostart entry for instance %#q is r
- failed to disable the autostart entry for instance %#q: %w
- failed to check if the autostart entry for instance %#q is r
- failed to check if the autostart entry for instance %#q is r
- failed to check if the autostart entry for instance %#q is r
AI-assisted analysis of lima-vm/lima@dd909d0973 (2026-09-01).
Data as JSON: /api/errors/05ea37fb3b885feb.
Report an issue: GitHub.