Como seguramente saben, junto con Windows 7 y Windows 2008 R2 viene incorporado Powershell V2. Y con Powershell algunas funcionalidades muy interesantes como por ejemplo remote management.
Para utilizar esta funcionalidad tenemos que tener habilitado el winrm, si no lo tienen habilitado la manera más fácil es ejecutando winrm quickconfig (OJO que el cmd corre como adminstrator)

Una vez que habilitamos el winrm vamos a abrir el powershell v2, también como administrator.
La idea de la mini nota es demostrar la característica, no explicarla en detalle, pero para dejarles las ganas de seguir averiguando veamos qué podemos hacer con 3 o 4 comandos básicos
En mi caso tengo 2 Windows 7 con Winrm habilitado y powershell v2 instalado
Lo primero que vamos a hacer es abrir una nueva sesión contra la maquina remota, para eso ejecutamos:
New-PSSession -ComputerName <maquina remota>
Con esto vamos a establecer la sesión remota.
Una vez establecida vamos a hacernos cargo de esa sesión que instanciamos y a conectarnos con:
Get-PSSession -Id 1 | Enter-PSSession

Fíjense que la sesión ahora está en [leandro-pc] y por lo tanto todo lo que ejecutemos va a incidir en la maquina remota.
Una vez que terminamos de usar la sesión remota podemos salir haciendo:
Exit-PSSession
Y para cerrar la sesión abierta vamos a ejecutar:
Remove-PSSession -Id 1
Esto solo es una muestra de lo que podemos hacer, entre otras cosas podríamos por ejemplo definir un script de inicio de sesión para todas las sesiones que se inicien remotamente, pero eso lo dejamos para otra nota..
Si quieren averiguar mas sobre la funcionalidad pueden hacer
Get-command *pssession*
Para ver los comandos involucrados
y get-help <comando>
Para ver la ayuda ;)
Saludos
No suelo escribir mucho sobre funcionalidades de Windows, pero a partir de un problema que me surgió me parece que esta nota puede ayudar a más de uno.
Como empezó mi inquietud? Me compre una netbook y para mi sorpresa la placa de red wireless no era soportada por Windows 7, después de instalarla 2 veces y cansado del proceso me busque una salida un poco más elegante. Porque no levantar el Windows 7 desde un VHD y ver cuando sale el driver de Windows Update o se me ocurre alguna cosa para levantarlo.
Como sabrán, la funcionalidad de bootear desde VHD es nativa de Windows 7 y no de vista. Así que no estoy seguro de que esto este soportado, pero en mi caso funciono. Por ende, pruébenlo bajo su propio riesgo ;).
Que use:
- Windows Vista SP2
- Windows 7 RC (Build 7100) Instalado en un VHD desde Hyper-v
Paso 1: Preparando el Windows 7
Como la funcionalidad de bootear desde VHD no está soportada por vista lo que vamos a hacer es reemplazar los archivos encargados de este proceso en vista por lo de Windows 7.
Para esto de nuestra maquina virtual de Windows 7 vamos a copiar 2 archivos:
Bootmgr
En Windows 7 RC el bootmgr está en la carpeta c:\windows\boot\pcat y obviamente oculto. Asi que lo vamos a copiar a una ubicación externa, en mi caso un pendrive y lo vamos a hacer usando xcopy, pero lo pueden hacer desde la GUI si quieren.
Para eso ubicados en la carpeta c:\windows\boot\pcat vamos a ejecutar:
Xcopy /h /y bootmgr f: (f: es mi pendrive)
Bcdedit.exe
Al igual que el bootmgr pero ubicados en c:\windows\system32 vamos a ejecutar
Xcopy /h /y bcdedit.exe f:
Una vez que resguardamos estos archivos podemos disponer del VHD de Windows 7. Lo primero que tenemos que haces es ejecutar el sysprep para que Windows esté listo para bootear en otro hardware, para eso vamos a usar el sysprep (c:\windows\system32\sysprep)

Cuando la maquina termine el proceso se apagara automáticamente dejando un VHD listo para usar.
Paso 2: preparando el Windows Vista
Lo primero que tenemos que hacer en el vista es reemplazar los archivos que tomamos del Windows 7. Para eso hacemos un backup de los files existentes: (Noten que el cmd esta corriendo como administrator)

Y luego lo reemplazamos con las versiones de Windows 7. Este paso es un poco molesto, porque Vista no nos permitirá reemplazar los archivos con el sistema levantado asi que tendremos que usar un cd booteable, yo en mi caso estoy usando el de Windows 7, pero pueden usar el de Windows Vista, BootPE, ERD o el que se les ocurra.
Una vez en este modo vamos a poder reemplazar los archivos sin problemas.
Paso 3. Configurar el doble booteo.
Ya tenemos el VHD creado, los archivos del Vista actualizados, solo nos queda probar si esto anda. Vamos a usar el bcdedit.exe para editar el booteo y registrar el VHD que generamos
La sintaxis del comando sería la siguiente:
C:\>bcdedit /copy {current} /d "Windows 7 VHD"
C:\>bcdedit /set <guid> device vhd=[Unidad:]\<Directorio>\<archivo.vhd>
C:\>bcdedit /set <guid> osdevice vhd=[Unidad:]\<Directorio>\<archivo.vhd>
C:\>bcdedit /set <guid> detecthal on
La sintaxis es medio engañosa, ya que los parámetros que están entre corchetes no son opcionales como generalmente se lee, sino que tenemos que ponerlos. En mi caso quedo asi:
C:\>bcdedit /set <guid> device vhd=[e:]\7\7.vhd
Conclusión
Hace rato que trabajo con maquinas virtuales en producción y por lo tanto con VHD, pero estoy muy sorprendido de la performance que logre con este método. Realmente no esperaba que funcione tan rápido, incluso habiendo hecho todo el proceso con un disco dinámico.
Ya estoy empezando a armar una maquina más completa en un disco de tamaño fijo para dejar mi equipo booteando de esta manera y mantener varias instancias de sistema operativo para pruebas y distintos entornos.
Espero les haya sido de utilidad
Saludos