@Only4You

Как из одного приложения запустить другое?

Есть видеосервер, который периодически подвисает. к этому серверу подключено несколько рабочих мест. После перезапуска сервера, требуется перезагрузить клиент на каждом АРМе.
Так вот вопрос: как с помощью питона сделать скрипт, который перезапускал бы удаленные клиенты при перезапуске сервера?
В голову приходит только slots, но опыта с ним еще не имел, и пока не сильно понимаю как он работает. может кто подсобит кусочком кода, или материалом по данному вопросу на русском языке(из того что я читал, не очень близко к теме).
Или может попроще библиотека есть или еще варианты?
  • Вопрос задан
  • 212 просмотров
Решения вопроса 1
@res2001
Developer, ex-admin
Можно запускать скрипт удаленно с помощью psexec или wmi. Предварительно надо будет настроить все удаленные станции, чтоб можно было это использовать.
Это может быть простой батник, который убивает процесс и запускает повторно. Правда есть нюанс - удаленно скрипт можно запустить только с админскими правами, а приложение надо запускать с правами пользователя и в сеансе пользователя.
Чтоб решить эту проблему может быть запуск можно сделать не на прямую, а например из задачи шедулера, которую удаленным скриптом дергать. Кстати утилита schtasks, с помощью которой можно управлять заданиями шедулера из ком.строки, умеет работать удаленно. Так что возможно даже psexec/wmi не понадобятся. Т.е. нужно написать локальный скрипт, который ищет нужный процесс, прибивает его и запускает повторно. Настроить в шедулере задачу с фиксированным именем с запуском этого скрипта и выключить эту задачу. Дальше на сервере при наступлении события просто дергаете schtasks, который будет удаленно принудительно одноразово стартовать настроенную задачу.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ZERGeich
@ZERGeich
1. Определяешь - как можно увидеть из сети, что сервер завис\перезагрузился.
2. Генеришь скрипт для АРМ, чтобы он проверял вышенайденное состояние.
3. Тестируешь и пускаешь свой костыль в продакшен.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы