Файл: Руссинович М., Маргозис А. Утилиты Sysinternals. Справочник администратора 2012.pdf

ВУЗ: Не указан

Категория: Книга

Дисциплина: Операционные системы

Добавлен: 29.10.2018

Просмотров: 33009

Скачиваний: 742

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

PsTools 

Глава 6  207 

PsSuspend

PsSuspend позволяет приостанавливать процессы на локальной или уда-
ленной системе. Это может быть полезно, если процесс потребляет ресур-
сы (например, процессорное время), которые нужно предоставить другому 
процессу. Чтобы не завершать такой процесс, можно приостановить его, а 
позже возобновить его работу. Это также удобно при поиске и удалении вре-
доносного ПО, у которого несколько процессов, следящих за завершением 
друг друга.

Чтобы приостановить один процесс, укажите его идентификатор (PID) в 

командной строке PsSuspend. Можно указать имя процесса, чтобы приоста-
новить все процессы с таким именем. Чтобы возобновить работу процесса, 
используйте параметр –r.

Каждый поток в процессе имеет счетчик пауз, так что каждый вызов API 

SuspendThread должен быть сопоставлен с вызовом ResumeThread, прежде 
чем поток сможет возобновить работу. PsSuspend сохраняет счет пауз по-
токов процесса. Это нужно, чтобы потоки, которые уже были в паузе, когда 
процесс приостанавливается при помощи PsSuspend, остались в паузе, когда 
работа процесса будет возобновлена. Если запустить PsSuspend с параме-
тром –r для процесса, который не приостановлен, но имеет приостановлен-
ные потоки, счет приостановок этих потоков будет уменьшен, и если счет 
станет равным нулю, потоки возобновят работу. Программы, приостанавли-
вающие свои потоки, скорее всего, имеют на то причины, так что следует 
внимательно относиться к «возобновлению» процессов, которые вы не при-
останавливали.

Синтаксис командной строки PsTools

В этом разделе приведен синтаксис командной строки всех утилит PsTools. 
Так как синтаксис удаленного выполнения операций одинаков для всех ути-
лит, покажем его отдельно, а не для каждой утилиты. Синтаксис указания 
нескольких компьютеров (УдаленныеКомпьютеры) применим ко всем ути-
литам, которые могут выполняться на нескольких компьютерах; синтаксис 
вида УдаленныйКомпьютер применим к утилитам, которые могут выпол-
няться только на одном удаленном компьютере.

УдаленныеКомпьютеры = \\компьютер[,компьютер2[,...]] | \\* | @файл [-u имя_
пользователя
 [-p пароль]]

УдаленныйКомпьютер = \\компьютер [-u имя_пользователя [-p пароль]]

PsExec

psexec [УдаленныеКомпьютеры] [-d] [-background|-low|-belownormal|-
abovenormal|-high|-realtime] [-a n[,n[,...]]] [-c [-f|-v]] [-n 
секунды

SIN_ch_06.indd   207

27.12.2011   14:19:52


background image

208  Часть 

II   

Работа с утилитами

[-s|-e] [-i [сеанс]] [-x] [-w каталог] [-h] [-l] [-u имя_пользователя [-p 
пароль]] команда [аргументы]

В отличие от других утилиты, PsExec поддерживает использование пара-

метров –u и –p для удаленного и локального выполнения операций.

PsFile

psfile [УдаленныйКомпьютер] [[Id | путь] [-c]]

PsGetSid

psgetsid [УдаленныеКомпьютеры] [имя | SID]

PsInfo

psinfo [УдаленныеКомпьютеры] [-h] [-s] [-d] [-c [-t разделитель]] [поле]

PsKill

pskill [УдаленныйКомпьютер] [-t] {PID | имя}

PsList

pslist [УдаленныйКомпьютер] [[-t] | [[-m] [-d] [-x]]] [-s [n] [-r n]] [имя | PID]

PsLoggedOn

psloggedon [\\компьютер | \\*] [-l] [-x]

PsLogList

psloglist [УдаленныеКомпьютеры] [-s [-t разделитель] | -x] [-n #] [-r] [-w]
[-a мм/дд/гггг] [-b мм/дд/гггг] [-d #|-h #|-m #] [-f 
фильтр]
[-i ID[,ID[,...]] | -e ID[,ID[,...]]]
[-o 
источник[,источник[,...]] | -q источник[,источник[,...]]]
[-z] [-c] [-g 
имя_файла | -l имя_файла] [журнал_событий]

PsPasswd

Для локальных учетных записей:

pspasswd [УдаленныеКомпьютерыЛокальнаяУчетнаяЗапись [НовыйПароль]

Для учетных записей домена:

pspasswd Домен\УчетнаяЗапись [НовыйПароль]

SIN_ch_06.indd   208

27.12.2011   14:19:52


background image

PsTools 

Глава 6  209 

PsService

psservice [УдаленныйКомпьютер] [команда [параметры]]

PsService поддерживает следующие команды и параметры:

query [-g группа] [-t {driver|service|interactive|all}] [-s 
{active|inactive|all}] [
служба
config [
служба]
depend 
служба
security служба
find служба [all]
setconfig 
служба {auto|demand|disabled}
start 
служба
stop служба
restart служба
pause служба
cont служба

PsShutdown

psshutdown [УдаленныеКомпьютеры] {-s|-k|-r|-h|-d|-l|-o|-a} [-f] [-c] 
[-t [
секунды|чч:мм]] [-v секунды] [-e [u|p] :xx:yy] [-m “сообщение»] [-n 
секунды]

PsSuspend

pssuspend [УдаленныйКомпьютер] [-r] {PID|имя}

Системные требования PsTools

В табл. 6-4 перечислены требования каждой из утилит PsTools для локаль-
ного и удаленного выполнения операций.

Табл. 6-4.  Системные требования PsTools

Утилита

Локальные 
операции

Удаленные 
операции

Требуются 
администраторские 
права на локальной 
системе

Требуется 
общая папка 
Admin$ 
на удаленной 
системе

Требуется 
служба 
Remote-
Registry

Поддерживает 
указание имен 
нескольких 
компьютеров

PsExec

Зависит от коман-
ды и параметров

Да

Нет

Да

PsFile

Да

Нет

Нет

Нет

PsGetSid

Нет

Да

Нет

Да

SIN_ch_06.indd   209

27.12.2011   14:19:53


background image

210  Часть 

II   

Работа с утилитами

Табл. 6-4.  (окончание)

Утилита

Локальные 
операции

Удаленные 
операции

PsInfo

Нет

Да

Да

Да

PsKill

Зависит от 
целевого процесса

Да

Нет

Нет

PsList

Нет

Да

Да

Нет

PsLogged-
On

Нет

Нет

Да

(Может ска-
нировать сеть)

PsLogList

Зависит от опе-
рации и целевого 
журнала

Да

Да

Да

PsPasswd

Да

Нет

Нет

Да (для лока-
льных учетных 
записей)

PsService

Зависит от опера-
ции и службы

Нет

Нет

Нет (но пара-
метр find 
может скани-
ровать сеть)

PsShut-
down

Да

Да

Нет

Да

PsSuspend

Зависит от целе-
вого процесса

Да

Нет

Нет

SIN_ch_06.indd   210

27.12.2011   14:19:53


background image

Глава 7

Утилиты для работы с процессами 
и диагностики

Утилиты Process Explorer и Process Monitor (см. главы 3 и 4) — основные 
утилиты для анализа поведения и динамики состояния процессов и систе-
мы в целом. В этой главе мы рассмотрим шесть дополнительных утилит 
Sysinternals, позволяющих просматривать сведения о состоянии процесса:
•  VMMap — утилита с графическим интерфейсом, показывает информа-

цию об использовании процессом виртуальной и физической памяти;

•  ProcDump — консольная утилита, генерирующая дамп памяти процесса 

с заданным характеристиками, например, процесса резко увеличившего 
потребление ресурсов процессора или «зависшего»;

•  DebugView — утилита с графическим интерфейсом, позволяющая про-

сматривать вывод отладчиков, работающих в режиме пользователя или 
режиме ядра на локальном или удаленном компьютере;

•  LiveKd — утилита, позволяющая запускать стандартный отладчик ядра 

на моментальном снимке работающей локальной системы без необходи-
мости перезагружаться в режиме отладки;

•  ListDlls — консольная утилита, отображающая информацию о загружен-

ных библиотеках DLL;

•  Handle — консольная утилита, отображающая информацию об описате-

лях объектов, используемых системными процессами.

VMMap

VMMap — утилита для анализа виртуальной и физической памяти, исполь-
зуемой процессом (рис. 7-1). Она показывает в графическом и табличном 
виде общие сведения о различных типах памяти, выделенных процессу, а 
также подробные карты распределения виртуальной памяти, отображая та-
кие характеристики, как резервные файлы и типы защиты. VMMap также 
показывает сводную и подробную информацию о размере физической па-
мяти (рабочего набора), связанного операционной системой c различными 
блоками виртуальной памяти.

SIN_ch_07.indd   211

27.12.2011   14:30:19