jueves, 20 de febrero de 2014

Un salvavidas para el DBA accidental

Y si.... no quedo nadie que se hiciera cargo y nos toco a nosotros... Campeón.... hacete cargo del SQL Server. Y partir de ahí entramos en un mundo desconocido y extraño donde a los gurús no se le entiende lo que hablan aunque lo digan en tu idioma ... :)

Para todos ellos (me incluyo) una interesante guía:

Troubleshooting SQL Server: A Guide for the Accidental DBA

Este libro que publica Redgate tenemos la posibilidad de comprarlo en Amazon, Kindle o descargar el PDF gratis desde aquí.

jueves, 6 de febrero de 2014

Free EBooks desde MVA

Una interesante posibilidad de acceder a material acerca de las nuevas tecnologías es la que nos brida la gente de la 'Microsoft Virtual Academy'.
En el sgte link se compilan una interesante cantidad de libros gratuitos organizados por categoría. Eventualmente se puede acceder a otro material pago también, aunque con los gratuitos tenemos la posibilidad de leer una introducción a las tecnologías del momento.

http://www.microsoftvirtualacademy.com/ebooks#?fbid=A-NG8hOMqir

jueves, 24 de octubre de 2013

Crear archivos grandes

Cortita y al pie. A veces tenemos la necesidad de crear varios archivos grandes para llenar un volumen para realizar ciertas pruebas o lo que sea. Una manera rápida de hacerlo es con el comando fsutil. Desde una línea de comandos ejecutamos:

fsutil file createnew GiantFile.ext 1000000000

Y allí tendremos un nuevo archivo ( GiantFile.ext ) de 1 millón de bytes, la sintaxis es:

fsutil file createnew

miércoles, 25 de septiembre de 2013

System Center, libro gratuito

Desde el blog de Microsoft Press se anuncia un nuevo Free ebook sobre las nuevas tecnologías de MS. En este caso System Center. Para quienes quieran bajarlo y leerlo pueden encontrar el cómo desde aquí.

jueves, 14 de marzo de 2013

Compare-Object: o comparando archivos y directorios con PowerShell


Para ir entreando en tema con esto de PowerShell vamos a ver como comparar archivos con el comando Compare-Object, el cual sirve para comparar objetos como ya se imaginaran... :)
En este caso vamos a crear 2 archivos de ejemplo, 2 archivos de texto que son idénticos en la primer línea y diferentes en la segunda y veremos que nos devuelve este cmdlet.

Primero, desde una consola de PowerShell, creamos los archivos:

PS C:\Users\Fernando\Documents\Blog> Write-Output "Esto es un test" > test01.txt
PS C:\Users\Fernando\Documents\Blog> Write-Output "Y este es el primer archivo" >> test01.txt
PS C:\Users\Fernando\Documents\Blog>
PS C:\Users\Fernando\Documents\Blog>
PS C:\Users\Fernando\Documents\Blog> Write-Output "Esto es un test" > test02.txt
PS C:\Users\Fernando\Documents\Blog> Write-Output "Y este es el archivo 2" >> test02.txt


Verificamos el contenido de los mismos:


PS C:\Users\Fernando\Documents\Blog> Get-Content .\test01.txt
Esto es un test
Y este es el primer archivo
PS C:\Users\Fernando\Documents\Blog>
PS C:\Users\Fernando\Documents\Blog>
PS C:\Users\Fernando\Documents\Blog> Get-Content .\test02.txt
Esto es un test
Y este es el archivo 2

Y ejecutamos el cmdlet con los siguientes parámetros:

PS C:\Users\Fernando\Documents\Blog> Compare-Object $(Get-Content .\test01.txt) $(Get-Content .\test02.txt)

En este caso los 2 parámetros son los contenidos de los archivos test01.txt y test02.txt. El resultado es el siguiente:

PS C:\Users\Fernando\Documents\Blog> Compare-Object $(Get-Content .\test01.txt) $(Get-Content .\test02.txt)
InputObject                                                 SideIndicator
-----------                                                 -------------
Y este es el archivo 2                                      =>
Y este es el primer archivo                                 <=

La columna InputObject nos da las diferencias y con la columna SideIndicator podemos ver en que archivo está ese elemento de InputObject.

Otra aplicación interesante de este objeto es la de encontrar las diferencias entre directorios, es decir cuando tenemos 2 carpetas que tienen una gran cantidad de archivos en común y queremos saber cuales están en uno y en el otro no y viceversa. Para esto podemos usar este mismo cmdlet pero cambiamos los parámetros:

Compare-Object $(Get-ChildItem X:\dir1 -name) $(Get-ChildItem \\recurso01\dir2 -name)

En este caso usamos el cmdlet Get-ChildItem para hacer un dir de los directorios (el segundo de ellos un recurso compartido) y con el parámetro -name traermos solo el nombre de los archivos.

viernes, 8 de marzo de 2013

Como averiguo la fecha de ultima modificación del password


Cortita y al pié.
Hace poco me encontré con una situación en la que tenía que averiguar la fecha de modificación del password de un usuario en Windows Server 2008 (Stand alone).

Concretamente desde la línea de comandos ejecutar:

net user

Y eso nos devolverá, entre otra información, el "Ultimo cambio de contraseña" (en español) o "last password  change", además de informar si la cuenta expira, si está activa o si la contraseña expira.
 

jueves, 14 de febrero de 2013

Montar un VHD en Windows 8

En el post anterior publique como montar un VHD en Windows XP/Vista, ahora vamos a ver como se hace en Windows 8. Ya con soporte nativo y mucho mas sencillo como se verá.

Las pruebas las hice en una notebook con un disco con 2 particiones tal como se ve en la Fig. 1:

Fig. 1
 
A continuación desde Windows Explorer seguimos la ruta hasta donde tenemos el VHD, y al hacer clic sobre el mismo vemos que en la barra de titulo de la ventana se habilita una nueva opción llamada "Herramientas de imagen de disco". Hacemos clic allí y en la pestaña "Administrar" veremos que la barra de herramientas esta adaptada a las operaciones con imágenes de disco justamente.
 
Allí tenemos el icono de "Montar" (Fig. 2). Hacemos clic sobre el mismo y Oooppp.... ya estamos explorando el contenido de la imagen de disco!
 


Fig. 2
 
En la Fig. 3 vemos el disco en la ventana "Equipo"
 


Fig. 3
 
 
Cuando ya no necesitemos acceder al disco lo desmontamos con el mismo Windows Explorer desde la ventana "Equipo". Hacemos clic sobre la unidad, y luego desde "Herramientas de unidad" -> "Administrar" hacemos clic en "Expulsar" (Fig. 4). Simple y sencillo.


Fig. 4