El propósito principal de la ingeniería de imágenes e implementación masiva es lograr automatizar la mayor parte del proceso de entrega de un equipo en una compañía, de esta forma evitamos errores o configuraciones diferentes que, en últimas, representan un esfuerzo mayor de administración dentro de una compañía.

Algunas personalizaciones parecen muy complejas, pero en realidad las soluciones como SCCM o MDT se encargan del trabajo; no obstante, hay otras configuraciones que, aunque parezcan muy simples, representan un esfuerzo técnico mucho mayor y en la mayoría de veces hay que hacer algún tipo de desarrollo (scripting, ejecutables, etc.) para cumplir el requerimiento. Todo siempre va a depender de qué tan automatizado desee tener el cliente la solución de implementación.

En este nuevo artículo me voy a centrar en una necesidad específica que tuve en un cliente: lograr que siempre se cree la partición D con el nombre de Datos, es decir: D:\Datos.

Nota: aunque yo me enfocaré en la letra D, el artículo les servirá para establecer cualquier otra letra.

Contexto y problema

La Secuencia de tareas de MDT incluye un paso en donde formatea y crea las particiones; si el equipo tiene UEFI activo, utiliza el paso de Format and Partition Disk (UEFI), si no, el de Format and Partition Disk (BIOS). La diferencia, como probablemente lo sepan, es el tipo de disco y la cantidad de particiones.

Este paso crea la partición de Windows y se encarga de asignarle la letra C:\

image

Adicional a la partición de Windows, el MDT, como ven, crea las particiones reservadas y las de recuperación.

Nosotros desde MDT podemos modificar la partición de Windows, reducirle porcentaje de espacio y, utilizando el asistente que ejecuta el botón del asterisco, podríamos crear una partición de datos:

image

¿Por qué no utilizar este método, entonces? La respuesta es que de esta forma Windows asignará la primera letra de unidad que esté disponible después de la C:\, no la que nosotros queramos. En este orden de ideas, es imposible crear un estándar de letra de partición, pues algunas veces asignará la D, otras veces (más frecuente) asignará la E, y otras, la F en adelante. Todo depende de qué letras se asignaron a las unidades de DVD, discos adicionales o memorias USB, si había una conectada en el momento de instalación.

Como el procedimiento integrado no nos funciona, debemos jugar con las opciones de personalización que nos ofrece el MDT.

Paso a paso: creación de partición D:\Datos

Nuestro truco consiste en dejar un espacio sin particionar, quitar la letra de unidad que deseamos asignar, en este caso la D, y crear una partición cuando Windows ya haya instalado con la letra liberada. Eso es lo que haremos en el resto del artículo.

El momento en el que Windows asigna las particiones definitivamente es cuando el MDT alcanza la fase de Postinstall; pero todos los cambios que uno desee en el MDT cuando Windows ya esté aplicado suelen aplicarse en la fase de State Restore.

Ahora, para que nosotros podamos crear una partición en esa fase, debemos primero tener un espacio disponible, así que hay que asegurarnos de que el MDT no se consuma todo el espacio del disco cuando haya formateado.

1. Dejar el espacio sin asignar

Lo primero que vamos a hacer es ir a las propiedades de la secuencia de tareas que vamos a utilizar para el despliegue, pestaña Task Sequence expandimos Preinstall, New Partition Only y procedemos a modificar la partición de Windows en Format and Partition para BIOS y UEFI.

Para BIOS:

Seleccionamos la partición de Windows y hacemos clic en el icono con la mano sobre la hoja para modificarla:

image

En la ventana de Partition Properties, cambiamos el porcentaje que tiene la opción Use a percentage of remaining free space de 99 a un número que nos permita dejarle espacio a la nueva partición que vamos a crear, por ejemplo 50:

image

Es muy importante no rebajar del 50, pues el MDT fallará si hacemos eso.

Esto quiere decir que de todo el espacio que haya disponible en el disco, Windows tomará el 50 % para el sistema operativo y lo demás, 100 % del espacio restante, quedará liberado.

Por último, seleccionamos la partición de Recovery y le damos clic en el botón de la X para eliminarla. Nos debe quedar todo así:

image

Para UEFI:

Tal como en BIOS, seleccionamos la partición de Windows y hacemos clic en el icono de la mano sobre la hoja:

image

En la ventana de Partition Promerties, tal cual hicimos con BIOS, rebajamos del 99 a otro que nos permita crear una nueva partición, mínimo 50:

image

Como en el caso de BIOS, seleccionamos ahora la partición de Recovery y le damos clic en el botón de la X para eliminarla. Todo debe quedar así:

image

2. Creación y copia de scripts

Nuestro siguiente paso es ir a la carpeta que tiene nuestro recurso compartido y crear un directorio dentro de Scripts que se llame Custom:

image

Dentro de la carpeta Custom vamos a crear un archivo de bloc de notas llamado Disk.txt, lo abrimos y escribimos lo siguiente:

Select disk 0
Create Partition Primary
Format FS NTFS label=”Datos” quick
Assign Letter=D
Exit

image

Esto es básicamente un script de Diskpart para seleccionar el disco 0 y crear una partición primaria con nombre «Datos». Pueden nombrarla como deseen.

Para poder liberar la letra D, vamos a recurrir a una herramienta que creé llamada DelVol, que utiliza la API de Windows para cambiar la letra que le especifiquemos como argumento por la primera disponible en lista. Hice un artículo completo sobre el origen de la herramienta en mi blog por si están interesados en conocer más.

Descargamos todo el contenido de DelVol desde el repositorio de Github:
https://github.com/SergioCalderonR/DelVol

Después de descargados los archivos fuentes, descomprimimos el .zip, ubicamos la carpeta de Exefile, descomprimimos el DelVol.zip y copiamos el ejecutable en la misma carpeta de Custom:

image

3. Personalización de la Secuencia de tareas

Abrimos nuevamente el Deployment Workbench, ubicamos nuestra secuencia de tareas, hacemos doble clic para ir a las propiedades, pestaña Task Sequence, expandimos el nodo de State Restore y nos ubicamos en el nodo de Custom Tasks:

image

Dejamos la selección en Custom Tasks y vamos al botón superior de Add, luego General y Run command line.

image

En la tarea de Run command line, cambiamos el campo de Name por Release Drive Letter y en Command Line escribimos el directorio completo de nuestra herramienta con el argumento de la letra que deseamos liberar, por ejemplo, en mi caso que necesito disponer de la D, el comando sería:

%ScriptRoot%\Custom\DelVol.exe D:\

image

Seleccionamos Release Drive Letter y vamos nuevamente al botón Add, luego General y Restart computer.

image

Restart computer nos debe quedar abajo de Release Partition.

Nos ubicamos en Restart computer, vamos al botón Add, General y Run Command Line otra vez.

image

Esta vez le ponemos en el nombre Create Partition y en Command Line especificamos el script de Diskpart que creamos anteriormente, así:

cmd.exe /c Diskpart /s %ScriptRoot%\Custom\Disk.txt

image

Así deberían verse las tres tareas agregadas:

image

Aplicamos y aceptamos para cerrar la ventana de la secuencia de tareas.

¡Todo está listo! Solo nos queda actualizar recurso compartido y probar instalación.

Nota: si el proceso de instalación no es familiar, pueden ver la serie de dos artículos con el paso a paso básico:
https://www.implementawindows.com/2017/04/01/implementacin-bsica-de-microsoft-deployment-toolkit-mdt-parte-1-instalacin-de-componentes/

4. Instalando y comprobando resultados

Para no hacer más largo el post, evitaré mostrar todas las pantallas del proceso de instalación. Una vez que el MDT llegue a Custom Tasks, lo que debería pasar es que la partición D se libere, el equipo reinicie y se cree una nueva partición llamada Datos y con la letra D.

Así debería verse en el Explorador de archivos después de terminado el asistente:

image

Como lo mencioné al principio, yo lo hice con la letra D, pero pueden disponer de cualquier letra con la ayuda de DelVol.exe.

¡Gracias por leer!

Sergio Calderon | Equipo de Implementa Windows
@secalderonr

Leave a Comment

Your email address will not be published. Required fields are marked *