Как я могу получить командную строку от имени пользователя SYSTEM в Windows 7?
Контекст: я тестирую сценарий запуска компьютера, и мне нужно выяснить поведение команды при запуске от имени SYSTEM, а не моей учетной записи пользователя.
Я видел способы сделать это с помощью at
и psexec
, но эти методы работают только в Windows XP или Windows Vista.
Я использую Windows 7 Pro SP1.
I've seen ways to do this with at and psexec, but those methods only appear to work on Windows XP or Windows 7. I'm using Windows 7 Pro SP1.
Гм ... ఠ_ ಠОтветы:
Об этом спрашивали на переполнении стека . Принятый ответ использует PsExec (из набора Systinternals ), как предложил Скотт.
Другое решение заключается в создании службы, которая запускается под системной учетной записью для запуска интерпретатора команд. Вы можете сделать это вручную или использовать программу, которая создает службы, запускает приглашение и затем автоматически удаляет службу. Я только попробовал это, и это работало удовольствие:
источник
Используйте PsExec из пакета Microsoft Systinternals . PsExec должен запускаться из командной строки администратора. Используйте
-i -s
ключи для запуска вашего скрипта / командной строки.источник
Access is denied.
"Я был бы очень осторожен, делая это. SYSTEM - это учетная запись администратора, но гораздо, гораздо более опасная, поскольку она имеет более высокий уровень доступа.
Обычно ваша СИСТЕМА - это службы учетных записей, а не интерактивный профиль. Хотя есть способы сделать это.
Читая это, я думаю, у нас есть хороший подход:
увидите имя учетной записи, в которую вы вошли.)
в командной строке создайте расписание для запуска cmd.exe.
Чтобы создать расписание, введите следующую строку и нажмите ввод.
в 10:41 / интерактивный «cmd.exe»
это создаст расписание для запуска cmd.exe в 10:41.
(Поскольку вы тестируете, проверьте время в вашей системе, попробуйте добавить две или три минуты.) Измените это время в соответствии с вашим местным временем.
Подсказка: вы можете проверить, установлено ли расписание, набрав « at »
и нажав клавишу ввода после вышеприведенного шаг.
cmd.exe будет запущен в указанное время.
Выберите вкладку «Процесс», выберите файл explorer.exe в списке процессов и нажмите кнопку « Завершить процесс ».
Вы получите диалог подтверждения. Нажмите «Да», чтобы завершить процесс.
Закройте первое окно cmd (будьте осторожны, чтобы закрыть первое, а не второе.)
В командной строке введите следующую строку и нажмите «Enter»
cd.
explorer.exe.
Если вы делаете это в первый раз, Windows создает необходимые
компоненты для доступа к системе (рабочий стол, меню «Пуск», «
Мой документ»),
когда она будет завершена, у вас будет новый рабочий стол.
Это изменено на Систему.
Теперь вы сверхмощный пользователь. Будьте осторожны, чтобы не повредить ваш компьютер и не удалять и не изменять системные файлы, если вы не знаете, что делаете.
Другой вариант - запускать ваш скрипт как сервис.
источник
at
не работает в Windows 7.at
работает на моем компьютере с Windows 7. Что не работает для вас?Есть немного более хакерский подход к этому, который включает в себя в основном subbing cmd.exe вместо Utilman.exe в \ Windows \ System32 (который, очевидно, потребует резервного копирования). Вы должны будете сделать это за пределами текущей запущенной Windows заранее (например, в Linux или с установочного / восстановительного компакт-диска). Вот пример сценария для использования (через Windows):
После того, как вы это сделаете, загрузитесь в обычную Windows и нажмите Windows Key + U, и вместо того, чтобы вызвать набор утилит для обеспечения доступности и т. Д., Он вызовет командную строку системного уровня со всеми доступными инструментами вашей системы. ,
источник
System32
, откройте свойстваUtilMan.exe
, получите все привилегии и права собственности и сделайте эти шаги после него.