Как правильно выключить Мажордомо командой (на Windows)

Если вы только начинаете осваивать систему MajorDoMo и чего-то не знаете или не можете понять, то задавайте свои вопросы в этой ветке.

Модератор: immortal

Ответить
Chainik
Сообщения: 1462
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 260 раз
Поблагодарили: 454 раза

Как правильно выключить Мажордомо командой (на Windows)

Сообщение Chainik » Сб сен 12, 2020 10:18 pm

Друзья, можно задать такой глупый вопрос?
Как можно командой корректно выключить Мажордомо (Windows)?

Мышкой это сделать это легко: нажимаем правой кнопкой мыши на соответствующий ярлычок в системном трее, кликаем "Close MajorDoMo" и все корректно выключается.
Мышкой по ярлычку в системной трее_cr.jpg
Мышкой по ярлычку в системной трее_cr.jpg (3.6 КБ) 1146 просмотров
Есть еще сценарий "shutDown", который можно запустить даже из последнего пункта меню. Код сценария вызывает доверие:

Код: Выделить всё

$filename  = ROOT . '/database_backup/db.sql';
$mysqlDumpPath = "/usr/bin/mysqldump";
$mysqlDumpParam = " --user=" . DB_USER . " --password=" . DB_PASSWORD;
$mysqlDumpParam .= " --no-create-db --add-drop-table --databases " . DB_NAME;
if (file_exists($filename)) rename($filename, $filename . '.prev');
exec($mysqlDumpPath . $mysqlDumpParam . " > " . $filename);
say("Подготовка к выключению",2);
setTimeout("shutdownTimer","safe_exec('shutdown -h now');",15);
Проблема только в том, что система после выполнения сценария у меня не выключается. Пишет в логе "Подготовка к выключению" и все.

Есть у нас файл "shutdown.bat" и при его запуске система выключается. Но там брутально убиваются процессы Apache, myscl, php и Server2Go.
Мне это не нравится. Поэтому я подчеркиваю слово "корректно" выключить.

Да, можно написать сценарий по запуску "shutdown.bat", например,

Код: Выделить всё

$shell = new COM("WScript.Shell");
$shell->run("\"C:\\_majordomo\\shutdown.bat\"", 0, false); 
Но сути это не меняет.

Кто как действует с командой выключения MDM на винде?
Аватара пользователя
xor
Сообщения: 2039
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 286 раз
Поблагодарили: 629 раз

Re: Как правильно выключить Мажордомо командой (на Windows)

Сообщение xor » Сб сен 12, 2020 11:13 pm

Chainik писал(а):
Сб сен 12, 2020 10:18 pm
Друзья, можно задать такой глупый вопрос?
Как можно командой корректно выключить Мажордомо (Windows)?
...
Кто как действует с командой выключения MDM на винде?
тут про перезагрузку, но можно и выключение сделать:
https://connect.smartliving.ru/profile/303/blog149.html
а разве "Close MajorDoMo" s2g корректно все процессы МДМ закрывает? Что-то я сомневаюсь(
На винде, если апач и мускул не запущены службами, их могут остановить только срубив процессы, к сожалению.
Большая надежда на переезд с s2g на HAMPP, там корректно запускаются/останавливаются службы апача/мускула.
shutdown -h now работает на лине) для винды это больше похоже на перевод в гибернацию
и должно выглядеть как-то так
shutdown /s /t 0
все параметры можно посмотреть shutdown /?
но возможны заморочки с запуском от админа, возможно, в локальных политиках разрешение придется прописывать(
есть способ проще-
для винды я использую nircmd из пакета установки (вы им громкость системную крутите)
пример можно в блоге посмотреть - там перезагрузка, но для простого останова МДМ просто убрать строку старта.
За это сообщение автора xor поблагодарил:
Chainik (Сб сен 12, 2020 11:17 pm)
Рейтинг: 1.16%
Ответить