miércoles, 31 de julio de 2019

Crear imagen con SYSPREP

A continuación muestro un ejemplo para crear imágenes usando sysprep. Esto nos puede ser util si tenemos que instalar un numero elevado de equipos que comparten entre si una determinada configuración.

  • Instalar máquina virtual (tipo disco VHD) con el SO deseado. Usamos una MV para que la imagen este limpia de drivers. Si no tenemos una imagen actualizada podemos descargarla desde aquí.
  • Iniciar modo auditoria.   %windir%\system32\sysprep\sysprep.exe /audit /reboot (Al reiniciar el equipo Cancelamos esta ventana).



  • Habilitar cuenta usuario administrador, configurar maquina e instalar todo el software que necesitamos.
  • Podemos desinstalar BLOATWARE para tener una imagen mas limpia (opcional).
Obtenemos el listado de bloatware instalado en el equipo.

DISM /Online /Get-ProvisionedAppxPackages | select-string Packagename >>  C:\Bloatware.txt




Una vez obtenemos el listado vamos a generar dos scripts de Powershell, uno para desaprovisionar y otro para desinstalar, que eliminaran de nuestro sistema los paquetes que no deseamos. 

El script para desaprovisionar debe de tener el siguiente formato:

DISM /Online /Remove-ProvisionedAppxPackage /PackageName: (nombre paquete)



Y el script para desinstalar debe de tener el siguiente formato:

Get-AppxPackage “(nombre paquete)” | Remove-AppxPackage


Nota: es posible que tengamos que habilitar la ejecución de scripts en PowerShell. Podemos hacerlo con el comando de powershell

Set-ExecutionPolicy Unrestricted.

Una vez ejecutados los dos scripts podemos volver a establecer la restricción.

Set-ExecutionPolicy  Default

  • Una vez configurado nuestro Sistema lo preparamos para crear la imagen. Copiamos el archivo “unatend.xml” que deseemos usar en la carpeta C:\Windows\Panther\   y reiniciamos la máquina con el comando Sysprep /generalize /shutdown /oobe.
Esto ejecutara Sysprep y dejara la maquina lista para la captura de la imagen previa a la creación del disco de instalación.



  • Una vez a terminado, montamos el disco virtual con el administrador de discos como solo lectura.


Nos fijamos en la letra de unidad asignada y ejecutamos el comando

dism /capture-image /imagefile:c:\Install.wim /capturedir:(letra asignada):\ /name:"Windows 10 Pro" /Description:"Windows 10 Pro" /compress:maximum /checkintegrity /verify /bootable


Cuando el proceso finalice y con el fin de crear una imagen que se pueda instar en formato EFI, vamos a dividir el archivo “Install.wim” que hemos creado en ficheros de no más de 3800 MB, ya que para crear una instalación EFI debemos usar un formato de fichero FAT32.

Dism /Split-Image /ImageFile:Install.wim /SWMFile:install.swm /FileSize:3800


  • Para poder personalizar la ISO de instalación, lo primero que tenemos que hacer es montar la ISO original de Windows 10. Copiamos todo su contenido en la carpeta que vamos a usar para crear la ISO. 

Una vez la copia haya finalizado deberemos borrar el archivo “Install.wim” o “install.esd”, ubicado en la carpeta “\sources” y pegar los archivos “Install.swm, Install2.swm…” que generamos en los apartados anteriores y copiarlo en un USB con sistema de archivos FAT32

Aqui dejo los archivos que he usado.


Culex.



IA aplicada a los video juegos

Me acabo de cruzar con este articulo y me ha parecido interesante el enfoque  que se le da a la hora de dar una segunda oportunidad a las viejas leyendas con las que hemos pasado tan buenos ratos.



6-ways-ai-is-making-an-impact-on-video-games

Enjoy !

martes, 23 de julio de 2019

Checking HardLinks (deduplicacion)

Doing some test with deduplication I wanted to check the hardlink created on a Windows server 2003.

The native windows tool on Server 2003 fsutil  doesn't allow to check the list of hardlinks so I needed some alternative.

After some research I found  the 'sysinternal' tool  'findlinks'. Its allow a easy way to find the number and path of the diferent hardlinks of a specific file.

e.g.




Culex.

P.D. Here you're a post which explain  the difference between Symbolic Links, Hard Links and Directory Junctions