[PHP]Exec() werkt wel maar ook niet

Pagina: 1
Acties:

  • urk_forever
  • Registratie: Juni 2001
  • Laatst online: 13-05 17:49
Ik probeer een commando te gebruiken via exec() in php en heb het volgende:

PHP:
1
2
3
4
$string = "ping -c 4 www.tweakers.net";
$temp = exec($string) or trigger_error("Oeps");
echo "The Mailmonitor deamon has been started!!!\n";
echo $temp;


Dit werkt wel. Nu wil ik sudo gebruiken omdat ik een iets moet doen als root dus heb ik het volgende gemaakt:

PHP:
1
2
3
4
$string = "sudo /bin/ping -c 4 www.tweakers.net";
$temp = exec($string) or trigger_error("Oeps");
echo "The Mailmonitor deamon has been shutdown!\n";
echo $temp;


En hierop krijg ik een error! Terwijl ik dit wel in de sudoers gezet heb! En als ik via telnet inlog als de gebruiker van apache (nobody) en ik doe sudo /bin/ping -c 4 www.tweakers.net dan werkt dat ook, alleen als ik het via php doe werkt het niet.
Weet iemand wat ik verkeerd doe?

Hail to the king baby!


  • sebas
  • Registratie: April 2000
  • Laatst online: 16-12-2025
Wat krijg je terug als je je error handler eruitlaat (dus zonder die 'or')?

Probeer het ook even met:
PHP:
1
$string = "/usr/bin/sudo /bin/ping -c 4 www.tweakers.net";

(locatie van je sudo moet je ff checken.)

Je zit waarschijnlijk met verschillende pathes voor een login en een non login shell, daarom vind je exec() sudo niet.

Everyone complains of his memory, no one of his judgement.


  • urk_forever
  • Registratie: Juni 2001
  • Laatst online: 13-05 17:49
Thnx, moest dus het complete pad naar sudo opgeven, dan werkt het wel!!

Hail to the king baby!


  • urk_forever
  • Registratie: Juni 2001
  • Laatst online: 13-05 17:49
hmmm, als ik dan dit met sudo doe:

PHP:
1
2
3
$string = "/usr/local/bin/sudo /usr/local/sophos/mmsmtp/bin/mmsmtpd -start";
exec($string) or trigger_error("Er is een fout opgetreden tijdens het starten van de Mailmonitor Daemon!");
echo "The Mailmonitor deamon has been started!!!\n";


Dan start hij hem wel maar als ik dan met ps -A kijk is het hoofdproces defunct?? Terwijl als ik het lokaal doe dan werkt ie wel goed!

Hail to the king baby!


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

offtopic:
mv -> NOS :) Vermeld even je distro/php versie/kernel versie, anders krijg je ruzie met de NOS'ers ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • mor0n
  • Registratie: December 2002
  • Laatst online: 21-03-2022
gebruik je alleen exec, je hebt ook commando's zoals: shell_exec(), system()...misschien heb je er wat aan.

  • urk_forever
  • Registratie: Juni 2001
  • Laatst online: 13-05 17:49
die doen allemaal hetzelfde! Het gaat hier om een Slackware 8 server met kernel 2.4.20 en php 4.2.3

Hail to the king baby!


  • urk_forever
  • Registratie: Juni 2001
  • Laatst online: 13-05 17:49
Niemand die me kan helpen?

Hail to the king baby!


Verwijderd

Ik ben niet heel bekend met php, maar als je nou eens aan het einde van het commando, een & toevoegt?

  • urk_forever
  • Registratie: Juni 2001
  • Laatst online: 13-05 17:49
hmmm, dit werkt wel, alleen heb ik nu een sh die defunct is volgens mijn ps -A en de php pagina die het commando uitvoerd laad niet!

Hail to the king baby!

Pagina: 1