@phpgeeks

Страница 8349 из 8430
V
14.10.2018
20:59:06
это вообще реально сделать или только через консоль?

Денис
14.10.2018
20:59:24
всё реально

V
14.10.2018
21:01:59
ну как это сделать? я и через пхп и через CGI пробую нихрена( в консоле скрипты отрабатывают

как только пытаюсь через веб открыть нихрена!

Google
Ladone
14.10.2018
21:04:30
На пример делать Кроном опросс бд раз в минуту?

Или больше интервал

Сделать таблицу в которой будут служебные флаги и по ним смотреть

Денис
14.10.2018
21:06:56
а в консоли reboot.sh выполняется?

V
14.10.2018
21:06:57
эхх ладно не помогут мне тут ?

да!

Ladone
14.10.2018
21:07:12
Я же тебе пример написал

Крон

Создай таблицу и напиши скрипт, который проверяет флаг в бд и пускай по нему вызывает скрипт

V
14.10.2018
21:08:21
да я не шарю в этом совершенно!

я не сделаю этого всего

Ladone
14.10.2018
21:08:35
А

Andrew
14.10.2018
21:09:36
и что скрипт выдает в stdout, когда ты его выполняешь из консоли?

Google
Andrew
14.10.2018
21:09:44
убери 2>&1, я не знаю зачем там это

V
14.10.2018
21:10:04
просто пытаюсь мыслить логически когда я выполняю скрипт через веб там юзер вебсервера получается? или как? может это как то препятствовать? ведь он логинится же на удалённый хост под рут правами и может делать что угодно права же позволяют?

$result=exec('/bin/sh /var/www/cgi-bin/reboot.sh', $output);

вот так?

Andrew
14.10.2018
21:11:56
да, вот так. начини с простого

чтобы просто убедиться, что скрипт выполняется и у тебя есть ответ

а дальше уже будешь решать с пользователями

Денис
14.10.2018
21:12:32
2>&1 отключает вывод

Andrew
14.10.2018
21:12:40
но вообще пхп выполняется от www-data, по хорошому.

V
14.10.2018
21:12:43
в чём кардинальная разница между запусками через консоль или через веб? логин через SSH идёт под рут правами

Andrew
14.10.2018
21:12:45
2>&1 отключает вывод
ну вот и ответ

в твоей ssh команде никакой пользователь ниоткуда не берется. ты его указываешь тут user@host

Денис
14.10.2018
21:13:08
при первом коннекте ссш всегда спрашивает принять ключ

V
14.10.2018
21:13:22
щас попробую?

Andrew
14.10.2018
21:13:23
ssh умеет ключ принять по умолчанию

ну и вообще ключ в систему можно принять и вообще руками из под пользователя раз постучаться

если уж это такой специфичный случай

V
14.10.2018
21:16:38
убрал 2>&1 при выполнении скрипта ничего не изменилось array(0) { } string(0) "" пишет ребут хоста не происходит

Andrew
14.10.2018
21:16:49
логи смотри php

что то оно тебе должно туда срать

Google
Andrew
14.10.2018
21:17:03
потому что команда хотя бы должна возвращать код ответа

V
14.10.2018
21:17:26
а логи смотреть на исполняемой машине же надо?

Andrew
14.10.2018
21:17:39
там где ты запускаешь php скрипт

V
14.10.2018
21:17:51
ну да

Andrew
14.10.2018
21:17:53
я к тому, что php не может выполнить exec, судя по всему

V
14.10.2018
21:18:02
щас буду копать куда php логи пишет...

Andrew
14.10.2018
21:18:13
сделай <? phpinfo(); exit();

ctrl+f "php.ini"

будет тебе путь

и еще. попробуй system() вместо exec()

V
14.10.2018
21:19:43
смотрите какая штука я намерено указал фейковый IP адрес в скрипте с ребутом и вот что он выдаёт

array(1) { [0]=> string(59) "ssh: connect to host 192.168.2.14 port 22: No route to host" } string(59) "ssh: connect to host 192.168.2.14 port 22: No route to host"

V
14.10.2018
21:19:58
значит чё то работает

Andrew
14.10.2018
21:20:43
ну значит команда сама по себе выполняется. но ssh не работает. к ssh сделай -vvv ключ

он тебе подробно должен написать что делает

V
14.10.2018
21:20:58
и если я убираю 2>&1 то он не выводит эту ошибку! так что я вернул 2>&1 обоато

Andrew
14.10.2018
21:21:12
нахуя?

ты просто скрыл ошибки

от этого работать не стало

верни все взад. *facepalm*

Google
V
14.10.2018
21:21:51
ну да...

ща попробую system

Andrew
14.10.2018
21:22:05
да блин

V
14.10.2018
21:22:14
ну и логи php гляну

Andrew
14.10.2018
21:22:16
команда выполняется. но тихо где-то там падает

уже похеру на пхп

V
14.10.2018
21:22:31
ааа

Andrew
14.10.2018
21:22:41
я тебе выше написал, про ключ к ssh, чтобы он вербозил что он делает

V
14.10.2018
21:22:58
понял?

Andrew
14.10.2018
21:23:22
и вообще, как ты понимаешь, что ниче не работает? может у тебя там все работает и сервак перезагружается

Admin
ERROR: S client not available

Andrew
14.10.2018
21:23:26
какие метрики то у тебя?

V
14.10.2018
21:25:51
ОГО! он там так много написал!

наверно надо в pastebin вставить

нет сервак не ребутит это 100%

я его пингую даже

Денис
14.10.2018
21:27:08
поставь на скрипт права 777

Andrew
14.10.2018
21:29:46
какая логика?

V
14.10.2018
21:29:57
да стоят 777 права везде

https://pastebin.com/raw/H3ZhfvX1

Google
V
14.10.2018
21:29:57
вот вывод

для меня это тёмный лес?

что можно сказать из этого лога что он навалил?

Andrew
14.10.2018
21:31:28
да никакого криминала

зайди на тачку сам руками в отдельном окне, держи сессию открытой

и выполни скрипт

мне кажется у тебя все работает

V
14.10.2018
21:32:32
открыть консоль на удалённой машине и выполнить скрипт ребута?

Andrew
14.10.2018
21:32:41
да.

V
14.10.2018
21:32:42
ну он сделаю но оно не работает 100%

Andrew
14.10.2018
21:32:52
я не понимаю, как ты это понимаешь

V
14.10.2018
21:33:38
на ребут требуется время я захожу не вебсервер удалённой тачки и она продолжает работать после выполнения скипта

ну ща консоль открою

не вопрос

Andrew
14.10.2018
21:34:05
а когда руками скрипт выполняешь, машина перезагружается?

Anton
14.10.2018
21:34:36
Sudo где?

V
14.10.2018
21:34:38
конечно!

Andrew
14.10.2018
21:34:51
так он из под рута заходит, зачем судо?

Anton
14.10.2018
21:34:53
Чую оно без него не получится

Пусть попробует

V
14.10.2018
21:35:19
хммм

Andrew
14.10.2018
21:35:21
пусть. мне не жалко.

V
14.10.2018
21:36:00
ну вот я и сам непойму зачем судо я ж под рутом в ssh лезу

Страница 8349 из 8430