PsExec версии 2.43
Марк Руссинович
Опубликовано: 11 апреля 2023 г.
Скачать PsTools (5 МБ)
Служебные программы, такие как Telnet и программы удаленного управления, такие как компьютер Symantec Anywhere, позволяют выполнять программы на удаленных системах, но они могут быть болью в настройке и требовать установки клиентского программного обеспечения на удаленных системах, к которым вы хотите получить доступ. PsExec — это легковесная замена telnet, которая позволяет выполнять процессы в других системах с полным взаимодействием для консольных приложений, не устанавливая клиентское программное обеспечение вручную. Самые мощные использование PsExec включают запуск интерактивных командных строк в удаленных системах и средства удаленного включения, такие как IpConfig, которые в противном случае не имеют возможности отображать сведения об удаленных системах.
Примечание. Некоторые сканеры антивирусной защиты сообщают о том, что один или несколько средств заражены вирусом удаленного администратора. Ни один из psTools не содержит вирусов, но они использовались вирусами, поэтому они активируют уведомления о вирусах.
Просто скопируйте PsExec в исполняемый путь. При вводе psexec отображается синтаксис использования.
См. статью Журнала Windows IT Pro за июль 2004 года, которая охватывает расширенное использование PsExec.
Использование.
psexec [\\\\computer[,computer2[,...] | @file]][-u user [-p psswd]][-n s][-r servicename][-h][-l][-s|-e][-x][-i [session]][-c [-f|-v]][-w directory][-d][-<priority>][-g n][-a n,n,...][-accepteula][-nobanner] cmd [arguments]
Параметр | Описание |
---|---|
-a | Отдельные процессоры, на которых приложение может работать с запятыми, где 1 — самый низкий нумерованный ЦП. Например, чтобы запустить приложение на ЦП 2 и ЦП 4, введите: "-a2,4" |
-c | Скопируйте указанный исполняемый файл в удаленную систему для выполнения. Если этот параметр не указан, приложение должно находиться в системном пути в удаленной системе. |
-d | Не дождитесь завершения процесса (не интерактивного). |
-e | Не загружает профиль указанной учетной записи. |
-f | Скопируйте указанную программу, даже если файл уже существует в удаленной системе. |
-i | Запустите программу, чтобы она взаимодействовала с рабочим столом указанного сеанса в удаленной системе. Если сеанс не указан, процесс выполняется в сеансе консоли. Этот флаг необходим при попытке интерактивного запуска консольных приложений (с перенаправленным стандартным операцией ввода-вывода). |
-h | Если целевая система является Vista или выше, процесс выполняется с повышенным уровнем маркера учетной записи, если он доступен. |
-l | Выполнение процесса от имени ограниченного пользователя (удаляет группу "Администраторы" и разрешает только привилегии, назначенные группе "Пользователи"). В Windows Vista процесс выполняется с низкой целостностью. |
-n | Указывает время ожидания в секундах, подключающихся к удаленным компьютерам. |
-p | Указывает необязательный пароль для имени пользователя. Если вы опустите это, вам будет предложено ввести скрытый пароль. |
-r | Указывает имя удаленной службы для создания или взаимодействия. |
-s | Запустите удаленный процесс в системной учетной записи. |
-u | Указывает необязательное имя пользователя для входа на удаленный компьютер. |
-v | Скопируйте указанный файл, только если он имеет более высокий номер версии или более новый, чем один в удаленной системе. |
-w | Задайте рабочий каталог процесса (относительно удаленного компьютера). |
-x | Отображение пользовательского интерфейса на защищенном рабочем столе Winlogon (только в локальной системе). |
-приоритет | Указывает -low, -belownormal, -abovenormal, -high или -realtime для выполнения процесса по другому приоритету. Используйте фон для запуска с низкой памятью и приоритетом ввода-вывода в Vista. |
компьютер | Direct PsExec для запуска приложения на удаленном компьютере или компьютерах, указанных. Если не указать имя компьютера, PsExec запускает приложение в локальной системе, а если указать подстановочный знак (\\*), PsExec выполняет команду на всех компьютерах в текущем домене. |
@file | PsExec выполнит команду на каждом из компьютеров, перечисленных в файле. |
cmd | Имя выполняемого приложения. |
Аргументы | Аргументы для передачи (обратите внимание, что пути к файлам должны быть абсолютными путями в целевой системе). |
-accepteula | Этот флаг подавляет отображение диалогового окна лицензии. |
-nobanner | Этот флаг подавляет баннер запуска и сообщение об авторских правах. |
Можно заключать приложения, имеющие пробелы в имени, с кавычками, например.
psexec \\marklap "c:\\long name app.exe"
Входные данные передаются только удаленной системе при нажатии клавиши ВВОД. Ввод клавиш CTRL-C завершает удаленный процесс.
Если не указать имя пользователя, процесс будет выполняться в контексте вашей учетной записи в удаленной системе, но не будет иметь доступа к сетевым ресурсам (так как это олицетворение). Укажите допустимое имя пользователя в синтаксисе Domain\User
, если удаленному процессу требуется доступ к сетевым ресурсам или выполняться в другой учетной записи. Обратите внимание, что пароль и команда шифруются при передаче в удаленную систему.
Коды ошибок, возвращаемые PsExec, зависят от выполняемых приложений, а не PsExec.
В этой статье я написала описание работы PsExec и дает советы по использованию:
Следующая команда запускает интерактивную командную строку в \\marklap
:
psexec -i \\marklap cmd
Эта команда выполняет IpConfig в удаленной системе с коммутатором /all
и отображает результирующий результат локально:
psexec -i \\marklap ipconfig /all
Эта команда копирует программу test.exe
в удаленную систему и выполняет ее в интерактивном режиме:
psexec -i \\marklap -c test.exe
Укажите полный путь к программе, которая уже установлена в удаленной системе, если ее нет в пути системы:
psexec -i \\marklap c:\bin\test.exe
Запустите Regedit в интерактивном режиме в учетной записи системы, чтобы просмотреть содержимое ключей SAM и SECURITY::
psexec -i -d -s c:\windows\regedit.exe
Чтобы запустить Internet Explorer как с ограниченными правами пользователя, используйте следующую команду:
psexec -l -d "c:\program files\internet explorer\iexplore.exe"
Скачать PsTools (5 МБ)
PSTools
PsExec является частью растущего набора средств командной строки Sysinternals, которые помогают администрированию локальных и удаленных систем с именем PsTools.
Выполняется:
- Клиент: Windows 8.1 и более поздние версии.
- Сервер: Windows Server 2012 и выше.