Xor

 
<<< Back

Перезагрузка Мажордомо в Win-системах

Существует батник C:\_majordomo\shutdown.bat, позволяющий остановить МЖД без ошибок. Проблема в том, что его нельзя использовать в другом батнике, например, для остановки и рестарта МЖД, т.к. последняя строка в shutdown.bat убивает все процессы cmd в системе, в том числе и наш.

Решение проблемы возможно несколькими способами, причём самые простые варианты, имхо, доступны при использовании cscript или nircmd, идущего в стандартной установке МЖД.

Вариант для nircmd:

Создаём файл c:\_majordomo\reboot_mjd.ncl

wait 5000
killprocess vlc.exe
killprocess Apache.exe
killprocess mysqld.exe
killprocess php.exe
killprocess php.exe
killprocess Server2Go.exe
killprocess USBDeview.exe
killprocess batteryrun.exe
killprocess start.exe
killprocess cmd.exe
wait 1000
killprocess vlc.exe
killprocess Apache.exe
killprocess mysqld.exe
killprocess php.exe
killprocess php.exe
killprocess Server2Go.exe
killprocess start.exe
killprocess cmd.exe
wait 5000
exec2 show "c:\_majordomo" "c:\_majordomo\start.exe"

Фактически, это повторение shutdown.bat, только оформленное в виде скрипта для nircmd + добавлена команда старта МЖД. На всякий случай, остановка МЖД сделана два раза.

В МЖД создаём сценарий rebootMJD

say('Внимание, перегружаюсь!', 2);
sleep(5);
safe_exec('c:\_majordomo\apps\nircmd\nircmd.exe script "c:\_majordomo\reboot_mjd.ncl"');

Запуск этого сценария и перезапускает МЖД.

Если нужно перегрузить машину, создаём файл для nircmd c:\_majordomo\reboot_sys.ncl

wait 5000
killprocess vlc.exe
killprocess Apache.exe
killprocess mysqld.exe
killprocess php.exe
killprocess php.exe
killprocess Server2Go.exe
killprocess USBDeview.exe
killprocess batteryrun.exe
killprocess start.exe
killprocess cmd.exe
wait 1000
killprocess vlc.exe
killprocess Apache.exe
killprocess mysqld.exe
killprocess php.exe
killprocess php.exe
killprocess Server2Go.exe
killprocess start.exe
killprocess cmd.exe
initshutdown "shutting down the system within 10 seconds" 10 reboot

В МЖД создаём сценарий rebootSys

say('Перезагрузка машины!', 2);
sleep(5);
safe_exec('c:\_majordomo\apps\nircmd\nircmd.exe script "c:\_majordomo\reboot_sys.ncl"');

или вариант с дампом базы:

say('Сохраняю копию базы', 2);
$filename = ROOT . '/database_backup/db.sql';
$mysqlDumpPath = 'c:/_majordomo/server/mysql/bin/mysqldump.exe';
$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);
safe_exec('c:\_majordomo\apps\nircmd\nircmd.exe script "c:\_majordomo\reboot_sys.ncl"');

Discuss (5) (9)

See also:
2024-02-12 Китайская панель в подрозетник с экраном 480*480
2023-10-29 MQTT в МДМ - способ обработки топика через метод
2023-04-03 Todoer: обмен данными с Яндекс календарём
2023-03-31 Todoer: календарь на год
2023-03-30 Todoer: анонс + программное создание задачи
2022-05-08 Глобальный поиск - добавление своих сущностей. Upd Внедрено
2022-01-05 Яндекс Лампочка в Yandex Devices - добавление сцен
2021-04-18 Переезд на мастер спустя год
2021-03-24 Ещё о старте/остановке МДМ в Винде
2021-02-18 Модуль Todoer
2021-01-06 Для виндузятников - перенос бд на рам-диск
2020-11-22 Календарь-планировщик
2020-08-01 Irbis как терминал
2020-05-18 Китайская камера rtsp + vlc как перекодировщик для html
2020-05-12 Опыт интеграции МДМ с Я.Алисой ещё одним способом - без белого адреса, москита, ПУ.(дополнено)
2020-05-07 Поправим формат даты в Панели управления
2020-04-11 Баловство с шаблонами
2020-03-26 Простые правила - вариант модуля. ч. 2
2020-03-25 Простые правила - вариант модуля
2019-12-20 расширение средств работы с events updated
2019-11-20 По следам наших выступлений - сколько мы наэкономили?
2019-11-04 Группа как объект - экономим на коде - 2
2019-10-26 Прикручиваем Grafana к Мажордому
2019-10-11 Группа как объект - экономим на коде
2019-09-25 Если у вас нет телеги...
2019-09-11 Датчик присутствия из ип камеры
2019-07-30 Win-платформа-замена ffmpeg для получения скриншотов из rstp - потока
2019-06-24 Форматированный отчет в телеграм - имитация таблицы
2019-04-30 Используем зомбо-ящик в Мажордомо
2019-03-24 О среднем в Мажордомо
2018-10-31 Об "обделённых" пользователях Win-систем -- с точки зрения кэширования winTTS сообщений

Домодедово, Россия

На форуме: xor