The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Перезагрузка FreeBSD скриптом на PHP/Perl"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Перезагрузка FreeBSD скриптом на PHP/Perl"  
Сообщение от netop email(ok) on 12-Дек-07, 11:58 
Подкиньте пожалуйста примерчик скрипта для перезагрузки (reboot) сервера на FreeBSD.

Чтобы можно было запустить его через Апач (http://192.168.1.1/cgi-bin/reboot.pl) и сервер перезагрузился!

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Перезагрузка FreeBSD скриптом на PHP/Perl"  
Сообщение от Аноним on 12-Дек-07, 17:02 
sh:
#!/bin/sh
sudo shutdown -r now

perl:
#!/usr/bin/perl
system("sudo shutdown -r now");

для php аналогично. sudo настроить соответствующим образом для NOPASSWD:

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Перезагрузка FreeBSD скриптом на PHP/Perl"  
Сообщение от netop email(ok) on 12-Дек-07, 17:59 
>sh:
>#!/bin/sh
>sudo shutdown -r now
>
>perl:
>#!/usr/bin/perl
>system("sudo shutdown -r now");
>
>для php аналогично. sudo настроить соответствующим образом для NOPASSWD:

Спасибо!!! А в Perl нужно что-то в конфиге подбавить или в Апаче?
Че-то не хочет он :(
Пробую даже обычный скрипт запустить (кладу в эту-же папку): system("/var/htdocs/cgi-bin/script2.pl");

Выдает:

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Че это может быть?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Перезагрузка FreeBSD скриптом на PHP/Perl"  
Сообщение от Michelnok (ok) on 12-Дек-07, 19:02 
>
>Internal Server Error
>
>Че это может быть?

А у меня вот компьютер не работает. Что это может быть?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Перезагрузка FreeBSD скриптом на PHP/Perl"  
Сообщение от Kavkaz email(??) on 12-Дек-07, 21:08 

>Че это может быть?

почитайте немого про  GGI на perl .
вероятнее всего у вас не выставлены права на скрипт( поставьте 755)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Перезагрузка FreeBSD скриптом на PHP/Perl"  
Сообщение от angra (ok) on 12-Дек-07, 23:51 
>почитайте немого про  GGI на perl .

Могу рекомендовать вам то же самое
>вероятнее всего у вас не выставлены права на скрипт( поставьте 755)

Это конечно тоже нужно, вот только без execute bit ошибку выдаст 403, а не 500. 500 в данном случае возникает из-зи того что скрипт не выдает никаких хедеров. Нужно добавить в скрипт
print "Content-type: text/html\n\n";
Ну а для исходной задачи желательно все-таки настроить sudo для пользовтаеля apache или поставит suid bit


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Перезагрузка FreeBSD скриптом на PHP/Perl"  
Сообщение от netop email(??) on 13-Дек-07, 09:50 
>Нужно добавить в скрипт
>print "Content-type: text/html\n\n";

Спасибо, хэдеры помогли, я о них почему-то совсем забыл!
Скрипт выводит все нормально, но вот дочерний - всеравно не запускает :(

Сделал для примера:

#!/usr/bin/perl
print "Content-type: text/html\n\n";
system("perl /var/htdocs/cgi-bin/lightparser.pl");
print "success";

Выводит сообщение, но вот lightparser не запускается :(

Можно подробней о suid bit, может в нем проблема?
sudo уже качаю сегодня попробую поставить!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Перезагрузка FreeBSD скриптом на PHP/Perl"  
Сообщение от andy (??) on 13-Дек-07, 11:04 
>[оверквотинг удален]
>
>
>Сделал для примера:
>
>#!/usr/bin/perl
>print "Content-type: text/html\n\n";
>system("perl /var/htdocs/cgi-bin/lightparser.pl");
>print "success";
>
>Выводит сообщение, но вот lightparser не запускается :(

1. посмотри в error.log апача
2. Посмотри, что находится в $ENV{PATH}, когда программа запускается через CGI. Возможно, нужно прописать полный путь до программы

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Перезагрузка FreeBSD скриптом на PHP/Perl"  
Сообщение от netop email(ok) on 13-Дек-07, 17:55 
Всем спасибо !!! Все получилось!!!

system("/usr/local/bin/sudo /sbin/reboot");

В настройках sudo разрешаем юзеру nobody - /sbin/reboot
nobody    ALL=NOPASSWD:/sbin/reboot

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Перезагрузка FreeBSD скриптом на PHP/Perl"  
Сообщение от phpcoder email(??) on 13-Дек-07, 10:13 
>sh:
>#!/bin/sh
>sudo shutdown -r now

Лучше exec sudo shutdown -r now :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру