Categories

See More
Popular Forum

MBA (4887) B.Tech (1769) Engineering (1486) Class 12 (1030) Study Abroad (1004) Computer Science and Engineering (988) Business Management Studies (865) BBA (846) Diploma (746) CAT (651) B.Com (648) B.Sc (643) JEE Mains (618) Mechanical Engineering (574) Exam (525) India (462) Career (452) All Time Q&A (439) Mass Communication (427) BCA (417) Science (384) Computers & IT (Non-Engg) (383) Medicine & Health Sciences (381) Hotel Management (373) Civil Engineering (353) MCA (349) Tuteehub Top Questions (348) Distance (340) Colleges in India (334)
See More

Shutting down Raspberry Pi with PHP

General Tech Bugs & Fixes

Max. 2000 characters
Replies

usr_profile.png

User

( 5 months ago )

 

I built this dashboard for my Raspberry Pi and would like to be able to shut it down and reboot it with a click.

I have the following in my html which redirects to a script and gets a PHP page with ajax:

<a href="#" class="reboot"></a>
 <script>
  document.querySelector(".reboot").addEventListener('click', function(){
     $.get('reboot.php');
 });
</script>

and the php file reboot.php looks like this:

<?php
   exec('sudo reboot');
?>

But this is doing nothing, it's not rebooting or shutting down using this code.

usr_profile.png

User

( 5 months ago )

But this is doing nothing, it's not rebooting or shutting down using this code.

If you are using apache, it runs as its own user and does not have permission to run reboot with sudo. To do that, you have to edit /etc/sudoers (as root) and add a line:

apache ALL = NOPASSWD: /sbin/reboot, /sbin/halt

That's presuming the user name is apache -- I'm not sure what it actually is since I don't have it installed on the pi. To check, try in order:

grep apache /etc/passwd
grep httpd /etc/passwd
grep www-data /etc/passwd

The first one of those that returns a line is the name you should use. Alternately, you could just look at top while the server is running and find the user name. There is one instance of apache/httpd that runs root, but there are others that are unprivileged and those execute PHP.

what's your interest


forum_ban8_5d8c5fd7cf6f7.gif