Anzeige:
Ergebnis 1 bis 2 von 2

Thema: Suse 13.1: Virtualbox Headless beim Boot

  1. #1
    Registrierter Benutzer
    Registriert seit
    Mar 2005
    Beiträge
    1.378

    Suse 13.1: Virtualbox Headless beim Boot

    Hallo zusammen,

    was ich erreichen möchte ist eigentlich ganz einfach ;-)

    - Ich möchte, dass eine bestimmte VM beim Einschalten meines Servers in einer Headless-VM mit gestartet wird. Und zwar unter einem spezielen VM-Server-User.
    - Wenn ich auf den Power-Knopf des Servers drücke, soll erst die VM und danach der ganze Server heruntergefahren werden.

    Ich habe das Ganze zunächst mit der neuen Autostartfunktion von Virtualbox versucht. Die VM ist beim Einschalten des Servers auch unter dem richtigen User gestartet worden. Allerdings wurde der Prozess beim Drücken des Power-Knopfs gekillt, sodass die VM nicht sauber in den Savestate gehen konnte. So hab ich mir das leider nicht vorgestellt.

    Also habe ich es mit systemd-Mitteln versucht.
    Mein .service-File sah folgendermaßen aus:
    Code:
    cat vbheadless.service -->
    
    [Unit]
    Description=virtualbox windows vm control service
    After=vboxweb-service.service
    Before=shutdown.target reboot.target halt.target
    
    [Service]
    Type=oneshot
    ExecStart=/usr/bin/VBoxManage startvm Windows 
    ExecStop=/usr/bin/VBoxManage controlvm Windows savestate
    RemainAfterExit=true
    KillMode=none
    
    [Install]
    WantedBy=multi-user.target
    Das File liegt unter /etc/systemd/system.
    Wenn ich den Service mit

    >systemctl enable vbheadless.service

    aktiviere, dann erzeugt er den Link:
    ln -s '/etc/systemd/system/vbheadless.service' '/etc/systemd/system/multi-user.target.wants/vbheadless.service'
    Allerdings kann er den Service beim Boot nicht starten, da der Bootprozess unter Root läuft, und die VM unter dem User "vbheadless" eingerichtet ist, unter dem sie auch laufen soll. In den Details zu
    > systemctl status vbheadless.service
    finde ich den Hinweis, dass die VM nicht bekannt ist.

    Nun habe ich meinen Service um einen User-Parameter erweitert:
    Code:
    [Unit]
    Description=virtualbox windows vm control service
    After=vboxweb-service.service
    Before=shutdown.target reboot.target halt.target
    
    [Service]
    User=vbheadless
    Type=oneshot
    ExecStart=/usr/bin/VBoxManage startvm Windows 
    ExecStop=/usr/bin/VBoxManage controlvm Windows savestate
    RemainAfterExit=true
    KillMode=none
    
    [Install]
    WantedBy=multi-user.target
    Das Überprüfen des Status mit
    > systemctl status vbheadless.service
    zeigt mir nun ein paar laufende Prozesse:
    Code:
    systemctl status vbheadless.service
    vbheadless.service - virtualbox windows vm control service
       Loaded: loaded (/etc/systemd/system/vbheadless.service; enabled)
       Active: activating (start) since Mo 2013-11-25 08:37:53 CET; 2min 5s ago
     Main PID: 1022 (VBoxManage)
       CGroup: /system.slice/vbheadless.service
               ├─1022 /usr/lib/virtualbox/VBoxManage startvm Windows
               ├─1124 /usr/lib/virtualbox/VBoxXPCOMIPCD
               └─1133 /usr/lib/virtualbox/VBoxSVC --auto-shutdown
    
    Nov 25 08:37:53 SoltauSuseServer systemd[1]: Starting virtualbox windows vm control service...
    Wenn ich die VM manuell starten will sagt er, dass sie bereits läuft oder gerade gestartet wird.

    Allerdings zeigt mir "top" keinen entsprechenden Prozess und anmelden kann ich mich auch nicht. Anmelden funktioniert aber grundsätzlich, denn wenn ich den Service disable und die VM manuell als User vbheadless starte, dann sehe ich sie in "top" und das Anmelden von remote geht auch.

    Daher nun die Frage in die Runde: Was fehlt denn noch, damit die VM beim Systemboot unter dem genannten User vernünftig starten kann?

    Danke und Gruß,
    Martin
    Server: i5-4430, 32GB, openSUSE Leap 15.2
    Workstation: i9-9900, 64GB, openSUSE Tumbleweed

  2. #2
    Registrierter Benutzer
    Registriert seit
    Mar 2005
    Beiträge
    1.378
    Manchmal ist es so einfach und man sieht es nicht.

    Wenn man eine VM als "Headless" starten will, dann muss man auch den Parameter --type headless mitgeben.

    Danke und Gruß,
    Martin
    Server: i5-4430, 32GB, openSUSE Leap 15.2
    Workstation: i9-9900, 64GB, openSUSE Tumbleweed

Ähnliche Themen

  1. SuSE und eine Supportanfrage
    Von Doh! im Forum Meldungen und Mitglieder
    Antworten: 54
    Letzter Beitrag: 07.05.06, 21:17
  2. Antworten: 25
    Letzter Beitrag: 30.10.04, 22:40
  3. Suse 9.1 network failed
    Von steigenberger im Forum Router und Netzaufbau
    Antworten: 5
    Letzter Beitrag: 14.06.04, 18:01
  4. SuSE 8.2 Vervielfältigung
    Von thierry im Forum Linux Allgemein
    Antworten: 38
    Letzter Beitrag: 09.02.04, 17:40
  5. Antworten: 2
    Letzter Beitrag: 14.02.01, 18:56

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •