[RISOLTO] Spegnimento remoto

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Scrivi risposta
wss2
Prode Principiante
Messaggi: 45
Iscrizione: martedì 17 aprile 2012, 20:09

[RISOLTO] Spegnimento remoto

Messaggio da wss2 »

Salve a tutti ho bisogno di una mano.
Sono ore che ci batto la testa e non riesco a venirne a capo.
Sto sviluppando un progetto di domotica in casa e sto cercando un modo di spegnere tutte le singleboard, in caso di necessità, con un pulsante php.
Ho trovato questo script on line che tra tutti mi sembra quello che fa più al caso mio

Codice: Seleziona tutto

<?php
if ($_GET['run']) {
  # This code will run if ?run=true is set.
  exec("/path/to/name.sh");
}
?>

<!-- This link will add ?run=true to your URL, myfilename.php?run=true -->
<a href="?run=true">Click Me!</a>
Ne ho provate di tutte i colori ma niente non funziona.
Uso sulle single board uan distro di ubuntu 14.4 con lxde e la mia versione di php è la 5.5.9-1ubuntu4.
Per concludere aggiungo che ho aggiunto con visudo -f /etc/sudoers la stringa:

Codice: Seleziona tutto

 apache  ALL=(ALL)       NOPASSWD: /sbin/shutdown 
Tutti i file per evitarmi rogne con i permessi sono in 777

Come posso risolvere la situazione qualcuno mi può aiutare?
Ultima modifica di wss2 il mercoledì 18 giugno 2014, 23:00, modificato 1 volta in totale.
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: Spegnimento remoto

Messaggio da difesaparcosempione »

name.sh è scritto bene?
sa mai !
wss2
Prode Principiante
Messaggi: 45
Iscrizione: martedì 17 aprile 2012, 20:09

Re: Spegnimento remoto

Messaggio da wss2 »

name.sh sono 3 righe

Codice: Seleziona tutto

#!/bin/bash

poweroff

exit 0
oppure

Codice: Seleziona tutto

#!/bin/bash
shutdown -h now
exit 0
oppure

Codice: Seleziona tutto

#!/bin/bash

halt

exit0
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: Spegnimento remoto

Messaggio da difesaparcosempione »

dal settaggio di sudo utilizzerai però il 2ndo script !!
ciao
wss2
Prode Principiante
Messaggi: 45
Iscrizione: martedì 17 aprile 2012, 20:09

Re: Spegnimento remoto

Messaggio da wss2 »

Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: Spegnimento remoto

Messaggio da difesaparcosempione »

Per evitare posibili problemi di utenze ...
Prova ad eseguire un touch file-qualsiasi contenente informazione data di esecuzione all'interno dello script ..

Se non vedi file ... allore il problema e il php e via dicendo ..
wss2
Prode Principiante
Messaggi: 45
Iscrizione: martedì 17 aprile 2012, 20:09

Re: Spegnimento remoto

Messaggio da wss2 »

touch name.sh non da risposta.
Comunque lo script funziona bene se lo eseguo in ./ o in shù
Ho provato anche il comando php shell_exec ma nulla
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: Spegnimento remoto

Messaggio da difesaparcosempione »

Non mi sono spiegato bene
dentro lo script ( al posto dello spegnimento )
prova a mettere qualcosa come:

Codice: Seleziona tutto

#!/bin/bash
touch file-"`date`"
ciao

ps adesso skappo ...
ciao
wss2
Prode Principiante
Messaggi: 45
Iscrizione: martedì 17 aprile 2012, 20:09

Re: Spegnimento remoto

Messaggio da wss2 »

difesaparcosempione [url=http://forum.ubuntu-it.org/viewtopic.php?p=4601021#p4601021][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Non mi sono spiegato bene
dentro lo script ( al posto dello spegnimento )
prova a mettere qualcosa come:

Codice: Seleziona tutto

#!/bin/bash
touch file-"`date`"
ciao

ps adesso skappo ...
ciao
Ok non funziona a questo punto più che nello script credo che il problema sia l'esecuzione di quest'ultimo.
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: Spegnimento remoto

Messaggio da difesaparcosempione »

Con touch fati creare file in path assoluti ( x sicurezza , sa mai !) --> /home/utente/file...
Non se se potrebbe divenire un problema ... hai dato con chmod +x il permesso di esecuzione ai tuoi script ...
ciao
wss2
Prode Principiante
Messaggi: 45
Iscrizione: martedì 17 aprile 2012, 20:09

Re: Spegnimento remoto

Messaggio da wss2 »

difesaparcosempione [url=http://forum.ubuntu-it.org/viewtopic.php?p=4601703#p4601703][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Con touch fati creare file in path assoluti ( x sicurezza , sa mai !) --> /home/utente/file...
Non se se potrebbe divenire un problema ... hai dato con chmod +x il permesso di esecuzione ai tuoi script ...
ciao
Si si i path sono assoluti almeno evito rompimenti di scatole e tutti i file in fase di test li metto in 777 (chmod +rwx) tanto per stare tranquillo però ripeto secondo me è un problema di permessi ma del php in fase di richiamo bash in quanto i file presi singolarmente funzionano.



EDIT

Bingo ho trovato il problema non so la soluzione:
Questo è il log di apache

Codice: Seleziona tutto

[Thu Jun 19 02:25:56.682473 2014] [:error] [pid 2083] [client 192.168.0.150:509$
sh: 1: a.sh: not found
touch: cannot touch 'file1': Permission denied
touch: cannot touch 'file1': Permission denied
Indubbiamente il problema è nei permessi di esecuzione ripeto sono tutti in 777 ( rwx che dir si voglia) quindi come risolvere?

EDIT

Risolto anche questo bastava aggiungere in sudoers www-data e poi il comando in esecuzione
Ora il problema è una altro ancora

Codice: Seleziona tutto

[Thu Jun 19 02:25:56.682473 2014] [:error] [pid 2083] [client 192.168.0.150:509
must be run from a terminal
wss2
Prode Principiante
Messaggi: 45
Iscrizione: martedì 17 aprile 2012, 20:09

Re: Spegnimento remoto

Messaggio da wss2 »

Risolto tutto ed era più semplice del previsto bastava aggiungere una riga a sudoers.

Codice: Seleziona tutto

visudo -f /etc/sudoers
ed aggiungere in fondo.

Codice: Seleziona tutto

www-data ALL=NOPASSWD: ALL
Ultima modifica di wss2 il mercoledì 18 giugno 2014, 23:03, modificato 1 volta in totale.
wss2
Prode Principiante
Messaggi: 45
Iscrizione: martedì 17 aprile 2012, 20:09

Re: Spegnimento remoto

Messaggio da wss2 »

Ultima modifica di wss2 il mercoledì 18 giugno 2014, 23:01, modificato 1 volta in totale.
Avatar utente
jackynet92
Moderatore Globale
Moderatore Globale
Messaggi: 13413
Iscrizione: sabato 3 settembre 2011, 1:41
Desktop: Mate
Distribuzione: Ubuntu 16.04 64bit
Sesso: Maschile
Località: Torino

Re: [RISOLTO] Spegnimento remoto

Messaggio da jackynet92 »

Ciao, modifica il post precedente, usando la formattazione ordinaria e se ritieni risolto il problema, modifica il titolo del primo post aggiungendo all'inizio [Risolto].

Se vuoi puoi installare questo script che ti aggiunge un pulsante che ti permette di mettere [Risolto] con un solo click.

Alla prossima :ciao:
wss2
Prode Principiante
Messaggi: 45
Iscrizione: martedì 17 aprile 2012, 20:09

Re: [RISOLTO] Spegnimento remoto

Messaggio da wss2 »

jackynet92 [url=http://forum.ubuntu-it.org/viewtopic.php?p=4601971#p4601971][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Ciao, modifica il post precedente, usando la formattazione ordinaria e se ritieni risolto il problema, modifica il titolo del primo post aggiungendo all'inizio [Risolto].

Se vuoi puoi installare questo script che ti aggiunge un pulsante che ti permette di mettere [Risolto] con un solo click.

Alla prossima :ciao:
Fatto va bene ora?
Avatar utente
jackynet92
Moderatore Globale
Moderatore Globale
Messaggi: 13413
Iscrizione: sabato 3 settembre 2011, 1:41
Desktop: Mate
Distribuzione: Ubuntu 16.04 64bit
Sesso: Maschile
Località: Torino

Re: [RISOLTO] Spegnimento remoto

Messaggio da jackynet92 »

Togli anche il grassetto e siamo a posto ;)
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 6 ospiti