Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Services automatisch starten in Ubuntu voor Windows 10  (gelezen 2079 keer)

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
Services automatisch starten in Ubuntu voor Windows 10
« Gepost op: 2016/10/11, 21:31:56 »
Ubuntu voor Windows 10 is niet ontworpen om automatisch services te starten.
Bijvoorbeeld een webserver kan eenvoudig worden geïnstalleerd (sudo apt install apache2) maar start niet automatisch en stopt zodra de bash terminal wordt gesloten.
In issue 834 las ik hiervoor een alternatieve oplossing.

Maak in Windows 10 een tekstbestand (autostart.vbs) met een VBScript:
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "C:\Windows\System32\bash.exe -c ~/autostart.sh",0
Set WshShell = Nothing
Het VBScript  start een bash-script (autostart.sh).

Start Ubuntu (bash ~ --login) om dit script te maken (nano ~/autostart.sh):
#!/bin/bash
sudo service apache2 start
bash
De laatste bash opdracht voorkomt dat het script stopt (dan stopt apache2 ook).
Maak het script uitvoerbaar:
chmod +x ~/autostart.sh

Voeg met de opdracht “sudo visudo”  regels (aan /etc/sudoers) toe om te voorkomen dat het script om een sudo-wachtwoord vraagt:
# sta toe apache2 te starten zonder sudo wachtwoord
%sudo   ALL=(ALL) NOPASSWD: /usr/sbin/service apache2 *
 

Gebruik Taakplanner in Windows 10 om autostart.vbs automatisch te starten. Triggers →  Start deze taak: Bij aanmelden
De trigger “Bij opstarten” werkt helaas (nog) niet (wie weet hiervoor een oplossing?)

Om meer services automatisch te starten (bijvoorbeeld mysql) kan het script autostart.sh en /etc/sudoers worden uitgebreid.
Klik links bovenin op Documentatie