Subsistema Windows para Linux Autoload Apache2 e MySql

0

Eu ativei a Developer Platform no Windows e instalei o Ubuntu VIA Windows Store, o que funciona muito bem! A única coisa que preciso é quando eu "Ativar" o Ubuntu Apache2 e o MySql não inicia automaticamente.

Existe uma maneira simples de fazer isso acontecer sob esta plataforma? Quando eu abro o Bash, posso apenas iniciar manualmente os serviços, mas o Auto Start seria o preferido. Eu tentei usar um cron job, mas os serviços nunca começaram, talvez minha sintaxe estivesse errada?

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
@reboot . $HOME/.profile; /usr/sbin/sshd -D
@reboot . $HOME/.profile; service mysql start
@reboot . $HOME/.profile; service apache2 start
    
por EODCraft Staff 31.03.2018 / 15:15

1 resposta

2

Encontrei-o !!!!! Embora não seja elegante.

Em vez de fazer loop ou dormir, basta adicionar "bash" ao final do script de shell. Aqui estão meus scripts para o apache e mysql para serem executados na inicialização.

Arquivo VBS (executado na inicialização) Win + r shell: startup create autostart.vbs

Set WshShell = CreateObject("WScript.Shell") 
WshShell.Run "C:\Windows\System32\bash.exe -c ~/autostart.sh",0
Set WshShell = Nothing

autostart.sh file (Basta fazer isso na sua pasta Home, chmod +x runnable )

#!/bin/bash
sudo service mysql start
sudo service apache2 start
bash

e em /etc/sudoers (acrescente ao final do arquivo)

# Allow apache2 and mysql to start without a sudo password
%sudo   ALL=(ALL) NOPASSWD: /usr/sbin/service apache2 *
%sudo   ALL=(ALL) NOPASSWD: /usr/sbin/service mysql *

Se eu precisar matar tudo, eu posso encontrar o processo bash no Gerenciador de Tarefas e matar isso.

Crédito: link

    
por EODCraft Staff 31.03.2018 / 23:46