Product Documentation

Administración de la función Target Device Personality

Apr 07, 2017

Por lo general, todos los dispositivos de destino que comparten el mismo disco virtual (vDisk) deben tener configuraciones idénticas. La función Target Device Personality permite definir datos para dispositivos de destino específicos y ponerlos a disposición de los dispositivos de destino en el momento del arranque. Posteriormente, las aplicaciones y los scripts personalizados pueden utilizar estos datos para diversos fines.

Por ejemplo, supongamos que se utiliza el servidor de Provisioning Services para respaldar los equipos de tres aulas. Cada aula tiene su propia impresora y se desea que los equipos de cada aula utilicen la impresora correcta de forma predeterminada. Al usar la función Target Device Personality, se puede definir un campo de impresora predeterminado y, posteriormente, introducir un valor de nombre de la impresora para cada dispositivo de destino. El campo y los valores se definen en Target Device Properties. Esta información se almacena en la base de datos. Cuando el dispositivo de destino arranca, se obtiene la información de la impresora específica para cada dispositivo de la base de datos y se escribe en un archivo .INI en el disco virtual (vDisk). Al usar una aplicación o un script personalizado que crea, es posible obtener el valor de la impresora y escribirlo en el Registro. Mediante este método, cada vez que arranca un dispositivo de destino, se configura para utilizar la impresora predeterminada correcta en su aula.

La cantidad de campos y de datos que se puede definir para cada dispositivo de destino se limita a 64 KB o 65.536 bytes por dispositivo de destino. Cada campo individual puede tener hasta 2047 bytes.

Tareas de Target Device Personality
  • Definir los datos de personalidad para un solo dispositivo de destino a través de la consola
  • Definir los datos de personalidad para varios dispositivos de destino a través de la consola
  • Utilizar los datos de Target Device Personality

Definir los datos de personalidad de un solo dispositivo de destino a través de la consola

Para definir los datos de personalidad para un solo dispositivo de destino:

  1. En la consola, haga clic con el botón secundario en el dispositivo de destino para el cual desea definir datos de personalidad y, a continuación, seleccione la opción de menú Properties.
  2. Seleccione la ficha Personality.
  3. Haga clic en el botón Add. Aparecerá el cuadro de diálogo Add/Edit Personality String.
    Nota: No existe un límite fijo para la cantidad de nombres de campo y cadenas asociadas que se pueden agregar. No obstante, el límite para la cantidad total de datos de personalidad asignados a una sola cadena (combinación de nombres y datos) es aproximadamente 2047 bytes. Asimismo, la cantidad total de datos contenidos en nombres, cadenas y delimitadores se limita a 64 KB o 65536 bytes por dispositivo de destino. El administrador comprueba este límite cuando se intenta agregar una cadena. Si se supera el límite, aparece un mensaje de advertencia que indica que no puede crear una configuración no válida.
    Los datos de Target Device Personality se tratan de la misma forma que todas las demás propiedades. Estos datos se heredan cuando se agregan automáticamente nuevos dispositivos de destino a la base de datos mediante las opciones Add New Target Device Silently o Add New Target Device with BIOS Prompts.
  4. Introduzca un nombre y un valor de cadena.
    Nota: Puede utilizar cualquier nombre para el campo Name, pero no puede repetir un nombre de campo en el mismo dispositivo de destino. Los nombres de campo no distinguen entre mayúsculas y minúsculas. Es decir, el sistema interpreta que "NOMBREDECAMPO" y "nombreDeCampo" son el mismo nombre. Los espacios en blanco que se introducen antes o después del nombre de campo se eliminan automáticamente. Un nombre de personalidad no puede comenzar con $. Este símbolo se utiliza para valores reservados como $DiskName y $WriteCacheType.
  5. Haga clic en OK.

Para agregar campos y valores adicionales, repita los pasos 5 y 6 según sea necesario. Cuando termine de agregar los datos, haga clic en OK para salir del cuadro de diálogo Target Device Properties.

Definir los datos de personalidad para varios dispositivos de destino a través de la consola

Para definir Target Device Personality en varios dispositivos:
  1. En la consola, haga clic con el botón secundario en el dispositivo de destino que contiene la configuración de personalidad que desea compartir con otro dispositivo y, a continuación, seleccione Copy. Aparecerá el cuadro de diálogo Copy Device Properties.
  2. En el panel de detalles, resalte los dispositivos de destino en los que desea copiar la configuración de personalidad y, a continuación, haga clic con el botón secundario y seleccione el menú Paste device properties.
  3. Haga clic en la opción Personality strings (también tiene la opción de copiar otras propiedades en este momento) y, a continuación, haga clic en Paste.

Utilizar los datos de Target Device Personality

Una vez que el sistema de archivos queda disponible para el dispositivo de destino, los datos de personalidad se escriben en un archivo de texto .ini estándar de Windows denominado Personality.ini. El archivo se almacena en el directorio raíz del sistema de archivos del disco virtual para que las aplicaciones o los scripts personalizados puedan acceder al archivo con facilidad.

El archivo tiene el siguiente formato:
 [StringData] FieldName1 = datos para el primer campo FieldName2 = datos para el segundo campo 
Este archivo es accesible desde cualquier aplicación o script personalizado. La API de Windows estándar de .INI puede consultar este archivo. Además, se proporciona una aplicación de línea de comandos denominada GetPersonality.exe para facilitar el acceso de los archivos por lotes a la configuración de personalidad.
Es posible obtener el nombre y el modo del disco virtual de un dispositivo de destino mediante GetPersonality.exe. Se incluyen los siguientes valores de reserva en la sección [StringData] del archivo Personality.ini:
$DiskName= $WriteCacheType=<0 (Imagen privada) Todos los demás valores son de imagen estándar; 1 (Disco de servidor), 2 (Disco del servidor cifrado), 3 (RAM), 4 (Disco duro), 5 (Disco duro cifrado), 6 (Disco de RAM) o 7 (Disco de diferenciación). Mínimo=0, Máximo=7, Predeterminado=0>
Las letras xx representan el nombre del disco. El nombre de un disco virtual no puede comenzar con $. Este símbolo se utiliza para valores reservados como $DiskName y $WriteCacheType. A continuación se muestra el mensaje que aparece si se introduce un nombre que empieza con $:
Los nombres no pueden empezar con $. Esto se utiliza para valores reservados como $DiskName y $WriteCacheType. Los valores $DiskName y $WriteCacheType se pueden recuperar en el dispositivo de destino mediante GetPersonality.exe. 

GetPersonality.exe

La utilidad de línea de comandos GetPersonality.exe permite que los usuarios accedan a la configuración de Target Device Personality desde un archivo por lotes de Windows. El programa consulta el archivo .INI para el usuario y coloca las cadenas de personalidad en las ubicaciones elegidas por el usuario. GetPersonality.exe respalda las siguientes opciones de línea de comandos:
GetPersonality FieldName /r=RegistryKeyPath <- Coloca campo en registro GetPersonality FieldName /f=FileName <- Coloca campo en archivo GetPersonality FieldName /o <- Campo de salida a STDOUT GetPersonality /? o /help <- Mostrar la ayuda

Ejemplos

Definición de un valor de clave del Registro:

En el siguiente ejemplo, se obtiene el valor de los datos de Target Device Personality del campo DefaultPrinter y se escribe en el Registro del dispositivo de destino para establecer la impresora predeterminada para el dispositivo.

El valor del cadena de personalidad de dispositivo de destino en las propiedades del dispositivo de destino es:
DefaultPrinter= \\CHESBAY01\SAVIN 9935DPE/2035DPE PCL 5e,winspool,Ne03:
Un archivo por lotes ejecutado en el dispositivo de destino incluiría la línea siguiente:
GetPersonality DefaultPrinter /r=HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Device
Nota: El nombre de la clave real debe ser el nombre UNC de la impresora de red, como \\dc1\Main, y el valor que debe introducirse para la clave es similar a winspool,Ne01: donde Ne01 es un número exclusivo para cada impresora instalada.

Definición de variables de entorno:

La definición de variables de entorno con datos de personalidad es un proceso de dos pasos:
  1. Utilice el comando GetPersonality con la opción /f para insertar la variable en un archivo temporal.
  2. Utilice el comando set para establecer la variable. Por ejemplo, para establecer la declaración de la variable de entorno Path para el dispositivo de destino con un nombre de personalidad, defina Pathname con este valor de cadena:
    %SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Microsoft Office\OFFICE11\;C:\Program Files\Microsoft SQL Server\80\Tolls\Binn
    La opción /f crea un archivo temporal, lo que permite asignar un nombre, en este caso temp.txt. Las siguientes líneas deben incluirse en el archivo por lotes:
    GetPersonality Pathname /f=temp.txt set /p Path= 
    Nota: Si ya existe el nombre de archivo especificado con la opción /f, GetPersonality no anexa la línea al archivo. En lugar de eso, sobrescribe la línea existente en el archivo.