Периодически у меня возникает необходимость запуска программ от имени системы (SYSTEM или Local System). Обычно это необходимо для целей тестирования или отладки работы различных программ и скриптов, которые в дальнейшем будут запускаться планировщиком. Тестировать работоспособность подобных программ не всегда правильно из-под учетной записи Администратора.
Точно такая же необходимость возникает когда некий процесс работающий от имени SYSTEM подгружает саму систему и другие задачи не могут из-за него работать. Недавний случай с серверным антивирусом который ночью пошел на апдейт, но так и не смог обновиться. В результате зависшый процесс занял весь процессорный ресурс под 99% и никак не давался мне для завершения по taskkill. Потому как выполнялся от SYSTEM. Пришлось воспользоваться методом описанным ниже.
Запуск программ от имени SYSTEM в Windows XP.
Как же можно запустить программу или же интерактивную командную строку (cmd) с правами администратора? В Windows XP или Windows Server 2003 это можно сделать очень просто. Достаточно было зайти в систему с правами администратора, открыть командную строку и набрать в ней:
at 12:13 /interactive cmd.exe
, где12:13 – ваше текущее время + одна минута (в 24 часовом формате).
Помните что в для этого должна быть запущена служба "Планировщик заданий". После наступления указанного времени перед вами появится черное окно командной строки, запущенное с правами Local System. Стоит отметить, что если вы выполняете этот трюк через терминальное подключение к Windows Server 2003, то окно командной строки запуститься в консольной сессии.
Запуск программ от имени SYSTEM в Windows 7.
В Windows 7 ситуация несколько изменилась и показанный выше трюк не работает. Это хорошо с точки зрения безопасности, но крайне неудобно мне как администратору. К счастью, у меня получилось найти альтернативный вариант запуска интерактивной командной строки с правами системы в Windows 7. Трюк заключается в использовании знакомой нам утилиты от SysInternals под названием PSexec.exe. Скачайте ее на свой компьютер.
Откройте командную строку с правами администратора (“Run as administrator”) перейдите в каталог, в котором находится исполняемый файл PSexec.exe и наберите:
psexec -i -s cmd.exe
параметр -i означает интерактивный запуск, -s запуск из-под системы
После выполнения команды появится новое окно с командной строкой, запущенной из под учетной записи NT Authority\System.
Точно также можно запустить любую программу или скрипт с правами системы, достаточно в параметре утилиты Psexec изменить cmd.exe на имя вашей программы.
Оригинал материала http://winitpro.ru/index.php/2011/12/26/zapusk-cmd-ot-system-v-windows-7/
2 comments:
Буквально вчера пришлось выполнять такой трюк с 107-м патчем медка. Разрабы сильно перевозбудились на 8-е марта, и забыли затушить один процесс.))
1)В ком строке пишем at 15:26 /interactive cmd.exe
где 15:26 на одну минуту больше текущего времени
2)получаем окно от юзера SYSTEM в котором пишем taskmgr.
Все! Имеем диспетчер задач которым можно убить любой процесс!
Post a Comment
А что вы думаете по этому поводу?