Execute o script Bash no Ubuntu a partir da máquina Windows remota?

5

Eu tenho um script bash em uma máquina Ubuntu 10.4. Ele é compartilhado e eu posso acessá-lo da minha máquina win7 com \LINUX-SERVER\bash_repo\make-live

No entanto, quando o faço, o Windows tenta abri-lo. Isso não é o que eu quero. Eu quero dizer ao ubuntu para executar ele.

Na verdade, estou esperando poder criar um aplicativo de GUI no Windows, onde o usuário clica em um botão e informa ao script bash na máquina do Ubuntu para executar.

Tudo isso é possível?

    
por JD Isaacks 29.12.2010 / 16:11

3 respostas

6

Já experimentou plink dos criadores do PuTTY? link

Você deve conseguir executar o script na máquina do Ubuntu como:

plink.exe -ssh -pw pass -noagent user@linux-server /path/to/your/script/make-live
    
por 29.12.2010 / 16:17
0

Como outros sugeriram, você pode usar o ssh para obter uma sessão da CLI ou envolvê-la em um programa acessível, mas acessá-la como um compartilhamento de rede implica que o Samba está configurado e em execução - e há várias maneiras de obter o Samba para executar arquivos (por exemplo, script de mágica, winpopups, svcctl) rtfm para mais detalhes.

    
por 29.12.2010 / 18:05
0

Como sugerido pelo meu comentário acima, você pode executar seu script a partir do PHP se você tiver um servidor web rodando em sua máquina Ubuntu.

Um pequeno script PHP como o seguinte será suficiente:

<?php
$output = shell_exec('bash /path/to/your/script');
echo "$output";
?>

Salve o código PHP em um arquivo como /var/www/exec.php e aponte seu navegador de qualquer máquina para a URL http://your_ubuntu_machine_ip/exec.php .

Por favor, note que o script será executado como www-data user (o usuário padrão do servidor web apache). Se você deseja executar um comando privilegiado usando o sudo, é necessário adicionar o www-data user ao arquivo sudoers usando visudo .

Você precisa de uma entrada como:

www-data   ALL=NOPASSWD: /path/to/command
    
por 29.12.2010 / 16:59