Я сейчас нахожусь в некоторой ситуации.
У одного из наших клиентов есть сервер приложений (Server 2008 R2
), в котором размещены важные медицинские приложения. Сервер находится в другом городе, дисплея нет. Однако это в доменной сети, к которой у меня есть удаленный доступ через VPN и RDP. Сегодня он не запускал одно из приложений, и при попытке подключиться к машине по протоколу RDP у меня был тайм-аут, пока я могу пинговать его, а сетевые ресурсы все еще доступны.
Если посмотреть дальше, службы RDP и VNC не работают. Я все еще могу использовать удаленное управление и пытаться запускать / останавливать / перезапускать службы на сервере, но это не срабатывает с ошибкой 1053, заявив, что в основном произошел тайм-аут. Обычно я бы просто перезагрузился, но сейчас это не вариант.
Поэтому из-за моей неспособности запускать службы я даже не могу использовать PSExec для восстановления удаленного доступа. Есть ли возможность запустить приложение удаленно, не зависимо от службы?
Если программе требуется, чтобы служба работала правильно, то ответ - Нет, служба является обязательной.
Что касается RDP, поскольку служба отвечает за открытие порта RDP (3389) для прослушивания, я считаю, что вы не сможете подключиться к удаленному компьютеру, пока служба не будет запущена и порт не будет открыт.
Редактировать # 1:
PsExec использует API диспетчера служб Windows для запуска службы PsExecsvc в удаленной системе, которая создает именованный канал, с которым взаимодействует PsExec. Этот именованный канал позволяет перенаправлять ввод / вывод обратно в систему, которая запустила PsExec.
Вы можете попробовать использовать PowerShell, следуйте это руководство сделать так.
Если и PowerShell, и psexec
не работают для вас, насколько мне известно, других способов запуска команд на удаленных машинах нет.