Temas etiquetados como: ‘PowerShell’

Vigila un proceso y si no está, arrancalo con Powersell usando Variable $error

30 Noviembre, 2010

powershell Vigila un proceso y si no está, arrancalo con Powersell usando Variable $error

Ultimente me he encontrado con un error muy tonto que me ha constado la dedicación de un poco de tiempo.

Tengo que hacer un script que vigile un proceso y si este no está arrancado simplemente tengo que arrancarlo.

La cosa parece sencilla y realmente lo es, pero siempre que conozcas el array $error de powershell.

Powershell tiene una array que se llama $error aquí es donde almacena todas las salidas que se van produciendo cuando se produce un error en la consola así podemos acceder a los errores a través de dicho array pudiendo obtener el último error llamando a la posición 0 de dicho array. Quiero decir con esto que para ver el último error que ha salido en la consola basta con hacer un

$error[0] –> array y posición del array entre corchetes.

» Leer más: Vigila un proceso y si no está, arrancalo con Powersell usando Variable $error

Pasar credenciales en powershell a Connect-NaController de NetAPP

19 Noviembre, 2010

NetApp Logo 265x300 Pasar credenciales en powershell a Connect NaController de NetAPP

Últimamente me he encontrado el pequeño problema para pasar credenciales con Powershell.

Hay un nuevo módulo llamado Data ONTAP PowerShell Toolkit que nos facilita un montón de cmd-let para controlar y sobre todo extraer para monitorización información de cabinas NETAPP.

Me surgió el problema al conectarme con los script para extraer información que tenía que introducir las credenciales para acceder a la cabina.

Después de importar el módulo: DataONTAP que lo puedes descargar en:

http://communities.netapp.com/docs/DOC-6138

Importé el modulo para utilizarlo:

>> import-module DataONTAP

Para conectarte a la cabina para extraer la información utilizarás un CMDLET:

>> Connect-NaController nombre_cabina -Credential $credenciales

La útima variable $credenciales proporciona al CMDLET las credenciales de autentificación de la cabina.

Bien pues las puedes pasar de la siguiente manera:

# Introduces el password en la variable de la siguiente manera, el password es: 12345678

>> $password = ConvertTo-SecureString “12345678″ -AsPlainText -Force

Ahora metemos en la variable $credenciales la autentificación a utilizar utilizando la variable anteriormente creada $Password y el usuario entre comillas “root”

>> $credenciales = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList “root”,$password

# Ahora utilizamos el CMDLET de NetAPP utilizando la variable $credenciales que contiene la autenticación

>> Connect-NaController Nombre_mi_Cabina -Credential $credenciales
# Ahora por ejemplo listamos los snapshot de un volumen

>> Get-NASnapshot NOMBRE_DEL_VOLUMEN

Conexión Remote PowerShell 2.0 entre servidores

17 Agosto, 2010

powershell Conexión Remote PowerShell 2.0 entre servidores

Algo sencillo, pero útil.

Utilizando las máquinas dentro del mismo dominio utilizaremos lo siguiente:

En el servidor que queremos administrar configuraremos la conexión WINRM:

Get-Service winrm
Enable-PSRemoting -force
winrm s winrm/config/client ‘@{TrustedHosts=”*”}’
winrm quickconfig

En el servidor desde el que nos queremos conectar

Get-Service winrm
Enable-PSRemoting -force
winrm s winrm/config/client ‘@{TrustedHosts=”*”}’
winrm quickconfig

Conexión entre máquinas

New-PSSession -computername Servidor_al_que_conectarnos
get-PSSesion
enter-pssesion -ID Identificador_obtenido_con_el_Get-Pssession

NOTA:

TrustedHosts=”*” es una política que permite que servidores serán los que se puedan conectar remotamente, en ejemplo, ponemos un asterisco que equivale a te puedes coenctar desde cualquier máquina. Si necesitas filtrar las conexiones deberas personalizar este parámetro del servicio WINRM ( winrm /? ).

Pon color a tús script de powershell con write-host

2 Agosto, 2010

La verdad que haciendo algún script he necesitado últimamente que las salidas de la consola tengan un poco de estilo, la verdad que siempre los errores del mismo color y de la misma forma. Porqué no pintar las salidas por ejemplo con un backgroud diferente en algún color más representativo que la salida de la consola con el estilo standar.

Bien, pues podemos hacerlo con el cmdlet Write-Host y con el parámetro -background color.

Vamos a poner un ejemplo rápido para que pintéis vuestro script haciendo las salidas un poco más amigables o identificativas a un error. Vamos a pintar la salida de un srting con el fondo rojo:

write 300x17 Pon color a tús script de powershell con write host

Script busca contenido en archivo con PowerShell

31 Marzo, 2010

powershell Script busca contenido en archivo con PowerShell

Este script muy sencillo pero muy util para buscar contenido dentro de un archivo en powershell

Solo es necesario ejectura el script con los siguientes parámetros: Ruta_de_archivo_log  y  *texto_a_buscar*

EJEMPLO:

./busca_lineas.ps1 Ruta_de_archivo_log *texto_a_buscar*


» Leer más: Script busca contenido en archivo con PowerShell


-->