Manual básico de PsTools.pdf

9
Manual básico de PsTools Wes Miller Descargar el código de este artículo: MillerTheDesktopFiles2007_03.exe (150KB) Hasta el año pasado, trabajaba en Winternals Software, que fue adquirido por Microsoft en julio de 2006. Winternals se dedicaba a la venta de software comercial, pero los fundadores de la compañía, Mark Russinovich y Bryce Cogswell, también eran propietarios de una compañía independiente llamada Sysinternals, que distribuía muchas herramientas, como software gratuito. Algunas de estas aplicaciones de software gratuito incluso han evolucionado hasta llegar a ser componentes del pack del administrador de Winternals. Mark y Bryce también vendieron la licencia de estas herramientas a compañías que buscaban utilizarlas fuera de los términos de licencia típicos de software gratuito. Una de mis herramientas favoritas de la biblioteca de Sysinternals (de acuerdo, es una cantidad ingente de herramientas) es la serie PsTools, que se encuentra ahora en microsoft.com/technet/sysinternals/utilities/pstools.mspx. Mark asignó un nombre a las herramientas basado en la utilidad de lista de procesos de UNIX, ps. Como se ha mencionado en el sitio de descarga de las herramientas, existen utilidades de línea de comandos de Windows® que pueden realizar algunas de las mismas funciones que estas herramientas. Sin embargo, además de una funcionalidad única considerable, una diferencia principal es que la serie PsTools se puede utilizar de forma local o remota (siempre y cuando los sistemas remotos estén configurados correctamente, por supuesto). Aún mejor, el proceso para ejecutarlos de forma remota es casi tan sencillo como ejecutarlos de forma local. La serie PsTools incluye varias aplicaciones individuales, incluidas en la figura 1. Al igual que ocurre con el resto de las utilidades de Sysinternals, no hay instalador, sólo aplicaciones. ¡Sólo tiene que colocarlas en una carpeta de su ruta de acceso y adelante! Figure 1 Utilidades de PsTools Herramienta Descripción PsExec Permite ejecutar procesos en cualquier contexto de usuario. PsFile Muestra los archivos abiertos de forma remota en un sistema. PsGetSid Muestra el identificador de seguridad (SID) de Windows de un equipo o un usuario. PsInfo Muestra información acerca de un sistema de Windows. PsKill Elimina los procesos por nombre o identificador. PsList Muestra información detallada acerca de procesos en ejecución. PsLoggedOn Muestra todos los usuarios que han iniciado la sesión de forma local, así como todos los usuarios de recursos compartidos remotos. PsLogList Vuelca los registros de eventos de Windows. PsPasswd Cambia las contraseñas de cuentas de usuario. PsService Consulta y controla los servicios de Windows. PsShutdown Apaga, reinicia o suspende un equipo, o lo coloca en modo de hibernación. PsSuspend Suspende procesos en ejecución. Ahora, es posible que note que parte de esta funcionalidad (sobre todo PsLogList) se podría conseguir a través de Windows Management Instrumentation (WMI) y algunas secuencias de

Transcript of Manual básico de PsTools.pdf

Page 1: Manual básico de PsTools.pdf

Manual básico de PsTools

Wes Miller

Descargar el código de este artículo: MillerTheDesktopFiles2007_03.exe (150KB)

Hasta el año pasado, trabajaba en Winternals Software, que fue adquirido por Microsoft en julio de

2006. Winternals se dedicaba a la venta de software comercial, pero los fundadores de la

compañía, Mark Russinovich y Bryce Cogswell, también eran propietarios de una compañía

independiente llamada Sysinternals, que distribuía muchas herramientas, como software gratuito.

Algunas de estas aplicaciones de software gratuito incluso han

evolucionado hasta llegar a ser componentes del pack del administrador de Winternals. Mark y

Bryce también vendieron la licencia de estas herramientas a compañías que buscaban utilizarlas

fuera de los términos de licencia típicos de software gratuito.

Una de mis herramientas favoritas de la biblioteca de Sysinternals (de acuerdo, es una cantidad

ingente de herramientas) es la serie PsTools, que se encuentra ahora en

microsoft.com/technet/sysinternals/utilities/pstools.mspx. Mark asignó un nombre a las

herramientas basado en la utilidad de lista de procesos de UNIX, ps. Como se ha mencionado en el

sitio de descarga de las herramientas, existen utilidades de línea de comandos de Windows® que

pueden realizar algunas de las mismas funciones que estas herramientas. Sin embargo, además de

una funcionalidad única considerable, una diferencia principal es que la serie PsTools se puede

utilizar de forma local o remota (siempre y cuando los sistemas remotos estén configurados

correctamente, por supuesto). Aún mejor, el proceso para ejecutarlos de forma remota es casi tan

sencillo como ejecutarlos de forma local.

La serie PsTools incluye varias aplicaciones individuales, incluidas en la figura 1. Al igual que ocurre

con el resto de las utilidades de Sysinternals, no hay instalador, sólo aplicaciones. ¡Sólo tiene que

colocarlas en una carpeta de su ruta de acceso y adelante!

Figure 1 Utilidades de PsTools

Herramienta Descripción

PsExec Permite ejecutar procesos en cualquier contexto de usuario.

PsFile Muestra los archivos abiertos de forma remota en un sistema.

PsGetSid Muestra el identificador de seguridad (SID) de Windows de un equipo o un usuario.

PsInfo Muestra información acerca de un sistema de Windows.

PsKill Elimina los procesos por nombre o identificador.

PsList Muestra información detallada acerca de procesos en ejecución.

PsLoggedOn Muestra todos los usuarios que han iniciado la sesión de forma local, así como todos

los usuarios de recursos compartidos remotos.

PsLogList Vuelca los registros de eventos de Windows.

PsPasswd Cambia las contraseñas de cuentas de usuario.

PsService Consulta y controla los servicios de Windows.

PsShutdown Apaga, reinicia o suspende un equipo, o lo coloca en modo de hibernación.

PsSuspend Suspende procesos en ejecución.

Ahora, es posible que note que parte de esta funcionalidad (sobre todo PsLogList) se podría

conseguir a través de Windows Management Instrumentation (WMI) y algunas secuencias de

Page 2: Manual básico de PsTools.pdf

comandos complejas. Sin embargo, la clave de la serie PsTools es que cada utilidad se diseñó para

llevar a cabo una tarea particular de forma muy simple.

Voy a guiarle por todas las herramientas y le daré ejemplos sencillos de por qué y cómo podría

utilizarlas. Pero primero, ofreceré una breve introducción acerca de cómo funcionan las

herramientas y qué tipo de requisitos previos debe cumplir para que funcionen.

¿Cómo funcionan las herramientas?

Todas las herramientas suelen funcionar de la misma manera. En el sistema de host, inicie la PsTool

deseada. Aunque muchas se pueden ejecutar de forma local, comprobará que estas herramientas

suelen ofrecer su mayor utilidad al ejecutarse en un sistema remoto o en varios sistemas a la vez.

PsExec es una excepción específica que viene al caso, como podrá ver en el ejemplo que aparece a

continuación. Mediante el argumento de línea de comandos que proporciona, la utilidad se copia

en el recurso compartido administrativo del sistema remoto, que es el mismo que %SystemRoot%

(directorio de Windows) en el sistema remoto.

Una vez copiada en el directorio remoto, la aplicación se inicia e instala un servicio de Windows.

Este servicio de Windows realiza la tarea que haya solicitado, con las credenciales que proporcionó

en el momento del inicio. Si la herramienta específica requiere una interfaz de usuario final en el

sistema cliente, este servicio inicia un binario adicional en el contexto de usuario. Recuerde que los

servicios no pueden iniciar interfaces de usuario interactivas y directas. El servicio comunica la

información necesaria a la consola que lo haya iniciado. Y, por último, el servicio se desinstala solo.

Como puede ver, las herramientas son eficaces e independientes. Aunque implican múltiples

binarios y procesos, el usuario no tiene que preocuparse: sólo tiene que ejecutar la herramienta

deseada y funcionará.

Para utilizar las herramientas, debe cumplir los requisitos previos siguientes: Windows NT®,

Windows 2000, Windows XP o Windows Server® 2003 (es compatible con las versiones x86 o x64

de Windows, aunque no con las versiones de Itanium), el recurso compartido de red administrativo

predeterminado y habilitado en el sistema remoto en el que se ejecutan las herramientas (admin$),

y los puertos del recurso compartido de impresoras y archivos del sistema remoto (tanto si utiliza el

Firewall de Windows, el Servidor de seguridad de conexión a Internet o algún otro producto

similar).

PsExec

Probablemente PsExec sea mi herramienta favorita entre todas (y, probablemente, no por la razón

que cabría imaginar). Durante la mayor parte de un período de dos años, no he ejecutado mis

sistemas como administrador, sino como usuario. Tengo una breve secuencia de comandos

denominada run.vbs que utilizo para ejecutar mis aplicaciones como Administrador local (se

pueden ejecutar igual de fácil como cualquier usuario). En la figura 2 se muestra el contenido de la

secuencia de comandos (que también está disponible en el sitio TechNet Magazine en

technetmagazine.com/code07.aspx). La secuencia de comandos da por supuesto que PsTools se

encuentra en la variable de sistema de la ruta de acceso.

Figure 2 Run.vbs SET WshShell = WScript.CreateObject("WScript.Shell")

SET WshSysEnv = WshShell.Environment("SYSTEM")

SET FSO = CreateObject("Scripting.FileSystemObject")

IF WScript.Arguments.Count <> 0 Then

FOR EACH arg IN WScript.Arguments

iArgCount = iArgCount + 1

strCmdArg = (arg)

Page 3: Manual básico de PsTools.pdf

strCmdArray = Split(strCmdArg, " ", 2, 1)

IF iArgCount = 1 THEN

strExe = strCmdArray(0)

ELSEIF iArgCount = 2 THEN

strRun = strCmdArray(0)

ELSE

strParams = strParams&" "&strCmdArray(0)

END IF

NEXT

END IF

'/t:0A && title ***** Admin *****

strExt = LCase(Right(strExe, 3))

IF strExt <> "exe" AND strExt <> "bat" AND strExt <> "cmd" THEN

WshShell.Run "psexec.exe -d -i -e -u COMPUTERNAME\USER -p PASSWORD cmd /c start "&strExe&"

"&strRun&" "&strParams, 0, FALSE

ELSE

WshShell.Run "psexec.exe -d -i -e -u COMPUTERNAME\USER -p PASSWORD "&strExe&" "&strRun&"

"&strParams, 0, FALSE

END IF

SET WshShell = NOTHING

SET WshSysEnv = NOTHING

SET FSO = NOTHING

Esta secuencia de comandos sencilla es un ejemplo de uso de PsExec con la funcionalidad que Mark

agregó cuando trabajábamos en los productos de administración de protección en Winternals: la

capacidad para un usuario limitado de ofrecer credenciales con más privilegios para iniciar PsExec

de forma local. El uso más común de PsExec, por supuesto, es ejecutarla de forma remota, por

ejemplo, para ejecutar una utilidad que no ofrece su propio marco de automatización, de

secuencias de comandos o de capacidad remota. Algunas características clave de PsExec incluyen la

posibilidad de copiar un binario en sistemas remotos para que se ejecute y la capacidad de dictar la

afinidad de procesadores. Otra característica práctica de PsExec es la capacidad de redactar su

secuencia de comandos en muchos equipos simultáneamente mediante un archivo de secuencia de

comandos.

A continuación incluimos el uso simplificado de PsExec: PsExec \\computer -u username -p password command

Puede ampliarlo mediante los conmutadores que se muestran en la figura 3.

Figure 3 Conmutadores de PsExec

Conmutador Descripción

-a Especifica la afinidad de procesadores.

-c Indica si la aplicación se debe copiar en el sistema remoto.

-d Especifica que no se espere a que acabe el proceso antes de salir (no esperará un

mensaje de éxito o de error).

-e La carga se realiza mediante el perfil de la cuenta especificada.

-f Copia la aplicación aunque exista en el sistema remoto. Garantiza que está ejecutando

la versión actual (o una específica).

-i Ejecuta la aplicación interactivamente en el sistema remoto (necesario si desea que un

usuario final vea cualquier interfaz de usuario de la aplicación).

Page 4: Manual básico de PsTools.pdf

-l Ejecuta la aplicación como usuario limitado. Elimina el token del grupo de

administradores y recorta los privilegios de procesos al nivel en que estarían para un

miembro del grupo de usuarios. Práctico para ejecutar aplicaciones de alto riesgo de

cara a Internet con privilegios mínimos.

-n Especifica el tiempo de espera necesario antes de que se produzca un error en la

conexión con los equipos remotos.

-priority Ejecuta el proceso con la prioridad especificada. Es decir, especifica cómo debe definir

Windows la prioridad de proceso para una tarea determinada (-low, -belownormal, -

abovenormal, -high o -realtime).

-s Ejecuta el proceso con la cuenta del sistema (práctico para ejecutar Regedit y tener

acceso a las claves del Registro con privilegios).

-v Copia la aplicación sólo si la que se está copiando es más reciente.

-x Muestra la interfaz de usuario en el escritorio seguro de Winlogon. Sólo funciona en el

sistema local.

@file Ejecuta el comando en todos los equipos especificados en el archivo de texto.

PsFile

PsFile es una herramienta más especializada que PsExec. Específicamente, se utiliza para

comprobar qué archivos están abiertos, y por quién, en el sistema remoto. Esto puede ser útil si

quiere realizar un seguimiento de los archivos que están abiertos antes de reiniciar un servidor. Si

necesita averiguar qué usuario ha bloqueado el archivo, de forma que impide la edición o la

eliminación, puede enviar una notificación de forma manual o cerrar el archivo mediante PsFile. El

uso de PsFile se incluye a continuación: PsFile \\computer -u username -p password

Esto devuelve simplemente una lista de los controladores de archivos abiertos en el sistema

remoto. Más allá del uso estándar, también puede agregar un parámetro de identificación a la

instrucción, y especificar el nombre del archivo acerca del que desea encontrar información o que

desea cerrar. También puede incluir el conmutador -c, que cierra el archivo que ha identificado con

el parámetro de identificación.

PsGetSid

PsGetSid también es una herramienta muy especializada. Le indicará el identificador de seguridad

(SID) de un equipo, un usuario o un grupo. Esto puede ser útil si desea asegurarse de que los

sistemas de su dominio no tengan SID duplicados o si desea comprobar los SID de todos los

usuarios o los grupos de un sistema. El uso de PsGetSid es del siguiente modo: PsGetSid \\computer -u username -p password account

Fíjese que la cuenta puede especificar un usuario, un equipo o un grupo. Si bien la sintaxis de

PSGetSid es sencilla, también hay un par de parámetros adicionales disponibles. El parámetro SID

especifica la cuenta (el grupo o el equipo) con un SID determinado, y @file ejecuta el comando en

todos los equipos enumerados en el archivo de texto especificado.

PsInfo

PsInfo se usa para ofrecer información detallada del sistema. Obviamente, esto resulta

particularmente útil cuando la secuencia de comandos se aplica a múltiples sistemas remotos, con

el envío del resultado a un archivo (por ejemplo, un archivo de Excel ® y un archivo CSV compatible

con bases de datos). Tenga en cuenta que esta utilidad se basa en un importante concepto que es

Page 5: Manual básico de PsTools.pdf

diferente en la mayor parte del resto de las herramientas: si no proporciona un nombre de equipo,

PsInfo intentará, de forma predeterminada, consultar todos los equipos del dominio. El uso de

PsInfo es del siguiente modo: PsInfo \\computer -u username -p password

Aunque la sintaxis es sencilla, hay disponibles parámetros y conmutadores adicionales, como se

muestra en la figura 4.

Figure 4 Conmutadores de PsInfo

Conmutador Descripción

-h Muestra todas las actualizaciones de Windows.

-s Muestra todas las aplicaciones instaladas en el sistema.

-d Muestra la información de disco/volumen del sistema.

-c Ofrece los resultados en formato CSV.

-t Especifica otro delimitador para el archivo CSV distinto al valor predeterminado de \t.

Filter Muestra sólo los datos que coinciden con un filtro determinado.

@file Ejecuta el comando en todos los equipos incluidos en el archivo de texto especificado.

PsKill

PsKill es una gran utilidad para terminar procesos en un sistema local o remoto. Su uso es muy

sencillo, y permite eliminar rápidamente un proceso junto con todos sus procesos secundarios. El

uso de PsKill se parece bastante a las otras herramientas que he analizado: PsKill -t \\computer -u username -p password process id | process name

Tenga en cuenta que puede especificar el identificador o el nombre del proceso que desea eliminar.

PsList

No utilizo PsList mucho porque soy más bien un fan de Process Explorer (consulte

microsoft.com/technet/sysinternals/ProcessesAndThreads/ProcessExplorer.mspx para obtener más

información). Sin embargo, dado que no existe una versión remota de Process Explorer, PsList pasa

a ser un símil razonable de algunas de las funcionalidades clave que proporciona Process Explorer.

De hecho, PsList es una lista remota de uno o más procesos que se ejecutan en un sistema remoto.

El uso de PsList es bastante sencillo: PsList \\computer -u username -p password account

Al igual que ocurre con las otras herramientas, el parámetro de cuenta puede especificar un

usuario, un equipo o un grupo. Los parámetros adicionales se muestran en la figura 5.

Figure 5 Conmutadores de PsList

Conmutador Descripción

-t Muestra información al nivel de subproceso.

-m Ofrece información de memoria detallada de cada proceso.

-x Muestra la información de procesos, memoria y subprocesos.

-t Muestra la información en forma de árbol de procesos (como la vista de árbol de

Process Explorer).

-s [n] Se ejecuta en modo de administrador de tareas durante un número determinado de

segundos. Esto permite una visualización en tiempo real (relativamente) de la

información de procesos remotos.

Page 6: Manual básico de PsTools.pdf

-r [n] Especifica la frecuencia (en segundos) de actualización en modo de administrador de

tareas.

name Muestra información acerca de los procesos que empiezan con el nombre

especificado.

-e Coincide con el nombre de proceso exactamente.

pid Muestra información acerca de un proceso específico.

PsList es eficaz y, al mismo tiempo, fácil de utilizar (y, sin necesidad de usar el Escritorio remoto,

permite ver los procesos remotos con gran detalle). Con esta información, podría seguir adelante

con PsKill o PsSuspend si, por ejemplo, tuviera un proceso que deba contenerse.

PsLoggedOn

La premisa subyacente de PsLoggedOn no necesita explicación. La utilidad muestra quién ha

iniciado sesión en el sistema. Puede tratarse de inicios de sesión locales (interactivos) o de recurso

compartido de red. De forma parecida a PsFile, esta capacidad puede ser útil para determinar quién

está usando un servidor en el que puede que tenga que realizar cierto mantenimiento. Su uso es

muy sencillo: PsLoggedOn \\computer

PsLoggedOn tiene sólo dos parámetros opcionales: -l sólo muestra los inicios de sesión locales (no

los de red) y -x excluye la hora de inicio de sesión.

Aunque se trata de una herramienta básica, PsLoggedOn permite consultar fácilmente información

que, por lo general, tendría que buscar en un par de ubicaciones de Windows.

PsLogList

PsLogList es una de las utilidades más prácticas que sirve para volcar los registros de eventos de

Windows en un formato de texto que, a continuación, pueden utilizar los lectores de registro, las

bases de datos o cualquier utilidad que desee. La ventaja principal es que convierte las entradas de

registros de eventos de su formato binario en algo que se puede transformar o automatizar

fácilmente. Por supuesto, en Windows Vista™, los registros de eventos están disponibles

originalmente como XML, aunque eso es otra historia.

El uso de PsLogList es del siguiente modo: PsLogList \\computer -u username -p password

Hay varios conmutadores y parámetros adicionales disponibles, como se muestra en la figura 6.

Figure 6 Conmutadores de PsLogList

Conmutador Descripción

-a Vuelca sólo los eventos posteriores a la fecha especificada.

-b Vuelca sólo los eventos anteriores a la fecha especificada.

-c Limpia el registro de eventos permanentemente después de volcar los resultados

deseados.

-d Muestra únicamente la información de un número especificado de días.

-e Excluye los eventos con el identificador de evento especificado (se pueden especificar

hasta 10).

-f Filtra tipos de eventos (advertencia, error, etcétera).

-g Exporta el registro de eventos como archivo EVT. Requiere el conmutador -c.

-h Muestra únicamente la información de un número especificado de horas.

Page 7: Manual básico de PsTools.pdf

-l Vuelca información desde el archivo EVT especificado.

-m Muestra únicamente la información de un número especificado de minutos.

-n Muestra únicamente el número especificado de eventos más recientes.

-o Muestra únicamente los eventos de un origen determinado (o -SRService en el caso

del servicio de restauración del sistema de Windows, por ejemplo).

-q Excluye los eventos de un origen determinado (al contrario que -o).

-r Invierte el orden: vuelca los eventos de registros de menos reciente a más reciente.

-s Enumera los registros de cada línea en campos delimitados.

-t Especifica un delimitador distinto de la coma para el resultado de de -s.

-w Espera a que se rellenen los eventos nuevos y los vuelca en tiempo real. Esto sólo se

aplica en el sistema local.

-x Vuelca los datos extendidos de los registros de eventos.

eventlog Especifica cuál es el registro de evento que se va a volcar. System es el valor

predeterminado.

@file Ejecuta el comando en todos los equipos especificados en el archivo de texto.

Los registros de eventos de Windows pueden ser una herramienta de diagnóstico increíblemente

eficaz, pero el truco es obtener los datos hasta el punto de poder manipularlos o consolidarlos.

PsLogList realiza este truco.

PsPasswd

PsPasswd es una utilidad sencilla, aunque eficaz, diseñada con parte de la misma funcionalidad que

Net.exe, pero que incluye además el aspecto remoto y automático. PsPasswd \\computer -u username -p password Username Newpassword

Puede especificar un equipo, ningún equipo (el sistema local) o, si especifica el equipo como \\*,

ejecutar la utilidad en todos los equipos del dominio actual. PsPasswd tiene sólo un parámetro

adicional disponible: @file ejecuta el comando en todos los equipos especificados en el archivo de

texto. De nuevo, se trata de una utilidad muy básica que proporciona una eficacia enorme con

varios sistemas.

PsService

PsService permite ver y editar la información del Administrador de control de servicios (SCM) en

uno o más sistemas de la red, e incluso puede buscar un nombre de servicio determinado en los

sistemas de su red. PsService \\computer -u username -p password command options

Al ejecutar PsService, el comando representa uno de los comandos enumerados en la figura 7, y las

opciones especifican el atributo que se va a aplicar a un comando dado. Si no se proporciona

ningún conmutador de comando adicional, PsService ofrecerá un volcado completo de información

de SCM.

Figure 7 Comandos de PsService

Comando Descripción

query Consulta un servicio determinado.

config Consulta la información de configuración de un servicio determinado.

setconfig Establece la información de configuración de un servicio determinado.

Page 8: Manual básico de PsTools.pdf

start Inicia un servicio.

stop Detiene un servicio.

restart Reinicia (detiene e inicia) un servicio.

pause Interrumpe un servicio.

cont Reanuda un servicio interrumpido.

depend Muestra qué servicios dependen del servicio determinado.

find Busca en la red una sesión determinada del servicio.

security Ofrece información de seguridad de un servicio determinado.

De este modo, puede pensar en PsService como una versión de línea de comandos eficaz y remota

de Services.msc, pero una que, además, permite buscar servicios (tal vez peligrosos) en toda la red

y definir información de configuración.

PsShutdown

PsShutdown es otra de mis herramientas favoritas. Aunque algunos podrían decir que Microsoft ya

incluye una herramienta que se hace cargo de esta tarea (shutdown.exe), realmente no es lo

mismo. La diferencia clave está en la eficacia de PsShutdown: a saber, poder apagar o reiniciar un

sistema remoto. Además, tiene la capacidad de poner un sistema en modo de espera o hibernación

(no sólo en modo de apagado o de reinicio), bloquear un sistema y reiniciar un equipo después de

mostrar un mensaje al usuario durante un período determinado de tiempo. PsShutdown \\computer -u username -p password

También hay varios parámetros adicionales disponibles para su uso con PsShutdown, como se

muestra en la figura 8.

Figure 8 Conmutadores de PsShutdown

Conmutador Descripción

-a Anula un proceso de apagado en curso iniciado por PsShutdown.

-c Permite que un usuario interactivo anule el proceso de apagado.

-d Suspende el equipo (modo de espera).

-e Códigos de motivo del proceso de apagado. Recomiendo la consulta del sitio web de

Microsoft para obtener ayuda con estos conmutadores, ya que su uso puede generar

problemas con PsShutdown y la utilidad shutdown.exe integrada. Consulte

msdn2.microsoft.com/en-us/library/aa376885.aspx (en inglés) para obtener más

información.

-f Fuerza la finalización de todas las aplicaciones.

-h Coloca el equipo en modo de hibernación.

-k Desconecta el equipo (lo reinicia si no se admite la desconexión).

-l Bloquea el equipo.

-m Especifica el mensaje que se mostrará a los usuarios interactivos.

-n Especifica el tiempo de espera necesario antes de que se produzca un error en la

conexión con los equipos remotos.

-o Cierra la sesión del usuario de la consola.

-r Reinicia el equipo.

-s Apaga el equipo, pero no lo desconecta.

Page 9: Manual básico de PsTools.pdf

-t El tiempo que debe transcurrir antes de ejecutar el comando de apagado o el tiempo

concreto para la desconexión.

-v Muestra el mensaje para los usuarios hasta que se produce el apagado.

@file Ejecuta el comando en todos los equipos especificados en el archivo de texto.

Puede comprobar que PsShutdown es una utilidad de control de potencia del sistema muy eficaz y

altamente configurable y que, además, es relativamente fácil de usar.

PsSuspend

PsSuspend es una práctica utilidad si desea poner un proceso invasor bajo control de forma

temporal o si simplemente desea reducir temporalmente un proceso de uso de CPU elevado sin

perder ningún dato o contexto de aplicación. PsSuspend \\computer -u username -p password process ID

Puede obtener el identificador de proceso con PsList. Una vez suspendido un proceso, puede

utilizar el conmutador -r para reanudarlo. Tenga en cuenta que el concepto de suspensión y

reanudación de un proceso lo implementa también Process Explorer, aunque sólo de forma local.

Obviamente, PsSuspend puede suspender y reanudar los procesos de forma remota y local, lo que

supera la implementación integrada en Process Explorer.

Conclusión

Creo que la serie PsTools es un conjunto de utilidades de valor incalculable. Junto con el resto de

utilidades de Sysinternals (a saber, Regmon, Filemon, Process Explorer y, ahora, Process Monitor),

PsTools se encuentra entre los primeros programas que pongo en mi ruta de acceso al reinstalar

Windows en cualquiera de mis sistemas. Espero que esta columna le familiarice con la serie PsTools

si no la conocía de antes o, en este caso, espero que haya ampliado sus conocimientos sobre estas

herramientas. Mi agradecimiento especial a Mark Russinovich, por supuesto, por ofrecer estas

herramientas de forma gratuita todos estos años y ayudarme con el contenido de esta columna.

Wes Miller es Director de desarrollo de Pluck (www.pluck.com) en Austin, Texas. Anteriormente,

Wes trabajó en Winternals Software en Austin, y en Microsoft como administrador de programas y

administrador de producto para Windows. Si lo desea, puede ponerse en contacto con Wes en la

dirección [email protected].

© 2008 Microsoft Corporation and CMP Media, LLC. Reservados todos los derechos; queda

prohibida la reproducción parcial o total sin previa autorización.