Guide du programme d'installation automatisée Oracle Solaris 11 Express

Définition d'une cible pour l'installation

Si vous ne spécifiez pas un emplacement cible sur un client pour l'installation du SE Oracle Solaris, le programme d'installation automatisée sélectionne une cible par défaut.

L'emplacement cible par défaut pour l'installation est le premier disque détecté sur chaque client qui répond aux exigences de taille. Reportez-vous à la section Configuration système requise pour les clients. Si la taille d'un disque est supérieure ou égale à la taille recommandée, le programme d'installation sélectionne ce disque en tant que cible d'installation. Si la taille du disque est inférieure à la taille recommandée, le programme d'installation vérifie le disque suivant. Si aucun disque répondant aux exigences de taille n'est détecté, l'installation automatisée échoue pour ce client. Le journal d'installation sous /tmp/install_log contient des informations sur le processus de sélection des disques.

Si vous souhaitez spécifier l'emplacement cible sur un client pour l'installation du SE Oracle Solaris, suivez les instructions de cette section.

Utilisez la balise <target> pour définir une cible pour l'installation sur chaque client. La balise <target> contient la balise <target_device>. La balise <target_device> comporte les éléments suivants :

Spécifications déterministes de disque cible

Chacune des spécifications décrites dans cette section détermine la cible donnée sur laquelle installer le système. Si vous utilisez une spécification décrite dans cette section, vous ne pourrez pas utiliser d'autre spécification cible.

Les éléments de balise dans cette section vous permettent de spécifier un nom de périphérique, un nom de volume, un ID de périphérique, un chemin d'accès de périphérique, un périphérique iSCSI ou le disque d'initialisation.


Remarque –

Les noms de périphériques logiques (c#t#d#) peuvent changer selon les versions du système d'exploitation.



Exemple 4–2 Spécification d'un nom de périphérique cible

Utilisez un name_type de forme ctd pour spécifier un nom de périphérique. Il s'agit de la valeur par défaut si name_type n'est pas spécifié.

L'exemple suivant spécifie un nom de périphérique logique.

<target>
  <target_device>
    <disk>
      <disk_name name="c1t0d0" name_type="ctd"/>
    </disk>
  </target_device>
</target>

L'exemple suivant spécifie un nom MPXIO.

<target>
  <target_device>
    <disk>
      <disk_name name="c0t2000002037CD9F72d0" name_type="ctd"/>
    </disk>
  </target_device>
</target>


Exemple 4–3 Spécification d'un nom de volume cible

Utilisez un name_type de forme volid pour spécifier un nom de volume.

<target>
  <target_device>
    <disk>
      <disk_name name="ai-disk" name_type="volid"/>
    </disk>
  </target_device>
</target>

Le nom de volume peut avoir été défini à l'aide de la commande format(1M), comme indiqué dans l'exemple suivant.


$ format -d c0d0 > /dev/null 2>/dev/null - <<EOF
volname
"ai-disk"
y
quit
EOF


Exemple 4–4 Spécification d'un ID de périphérique cible

Utilisez un name_type de forme devid pour spécifier un ID de périphérique.

<target>
  <target_device>
    <disk>
      <disk_name name="id1,sd@n500000e012596560" name_type="devid"/>
    </disk>
  </target_device>
</target>

Pour obtenir l'ID du périphérique associé à un nom de périphérique de forme c#t#d#, vous pouvez utiliser la commande iostat(1M) avec les options -ien, par exemple.


$ iostat -iEn
c7t0d0             Soft Errors: 0 Hard Errors: 0 Transport Errors: 0
Model: ST31000340NS    Revision:  Device Id:
id1,sd@n500000e012596560
...

La commande iostat ne signale pas l'ID de périphérique sur les invités LDOM. Pour les invités LDOM, utilisez le pilote test de détection de cible comme indiqué dans l'exemple suivant. Ce pilote test est disponible dans le package IPS system/install/tests ainsi que sur l'image IA. Initialisez l'image IA pour exécuter cette commande sur un client qui n'a pas accès aux packages IPS.


# /opt/install-test/bin/tdmgtst -dv | grep ddm_disk_dev_id
ddm_disk_dev_id=id1,vdc@f8498536e4a8ad037000bcb400001

La spécification d'ID de périphérique cible ne fonctionne pas dans xVM/PV, car l'ID de périphérique n'est pas disponible pour les lecteurs virtuels.



Exemple 4–5 Spécification d'un chemin d'accès au périphérique cible

Utilisez un name_type de forme devpath pour spécifier un chemin de périphérique sous /devices.

<target>
  <target_device>
    <disk>
      <disk_name name="/pci@0/pci@9/pci@0/scsi@1/sd@0,0" name_type="devpath"/>
    </disk>
  </target_device>
</target>

Le chemin d'accès physique est le chemin d'accès auquel est lié le lien symbolique c#t#d#s# sous devices, comme indiqué dans l'exemple suivant.


$ ls -l /dev/dsk/c2t0d0s0
/dev/dsk/c2t0d0s0 -> ../../devices/pci@7c0/pci@0/pci@1/pci@0/ide@8/sd@0,0:a


Exemple 4–6 Spécification d'une cible iSCSI

La technologie iSCSI permet d'effectuer les installations sur un lecteur de disque hébergé par un autre ordinateur sur le même réseau TCP/IP.

Pour spécifier une cible iSCSI en tant que cible d'installation, vous devez d'abord créer une cible d'initialisation iSCSI. Utilisez la commande iscsiadm(1M) pour créer une cible d'initialisation iSCSI et pour obtenir les valeurs de nom et IP pour la balise iscsi dans le fichier manifest IA.

Pour spécifier une cible iSCSI pour les installations automatisées, spécifiez un nom de cible iSCSI et une adresse IP comme indiqué dans l'exemple suivant. Le nom de la cible peut être un nom IQN, EUI ou NAA. La valeur de nom ne doit pas contenir plus de 233 caractères.

<target>
  <target_device>
    <disk>
      <iscsi name="c0d2E0001010F68">
        <ip>192.168.1.34</ip>
      </iscsi>
    </disk>
  </target_device>
</target>


Exemple 4–7 Spécification du disque d'initialisation en tant que cible

La balise <disk_keyword> accepte boot_disk en tant que mot-clé. Ce mot-clé spécifie le disque d'initialisation en cours en tant que cible d'installation.

<target>
  <target_device>
    <disk>
      <disk_keyword key="boot_disk"/>
    </disk>
  </target_device>
</target>

Notez les restrictions suivantes concernant le mot-clé boot_disk.


Spécifications non déterministes de disque cible

Vous pouvez utiliser plusieurs spécificateurs non déterministes dans un fichier manifest IA, comme indiqué dans l'exemple suivant.

<target>
  <target_device>
    <disk>
      <disk_prop dev_vendor="hitachi" dev_size="20gb"/>
    </disk>
  </target_device>
</target>

Utilisez la balise <disk_prop> pour spécifier un type de cible, un nom de fournisseur ou une taille cible.

Les exemples suivants présentent deux méthodes différentes pour déterminer le fabricant d'un disque. Notez que ces recherches ne peuvent pas identifier le fabricant des disques ATA.

Utilisez la commande iostat(1M) :


# iostat -En
c2t1d0           Soft Errors: 0 Hard Errors: 0 Transport Errors: 0
Vendor: HITACHI  Product: HUS10733ASUN72G  Revision: PA05 Serial No: 0602RW159S

Utilisez le pilote test de détection de cible qui est disponible dans l'image IA :


# /opt/install-test/bin/test_td -dv
Disk discovery
Total number of disks: 2
-------------------------------------------------------------------------------
 num |    name|    vendor|  ctype| mtype| rem| lbl| bsize|#of blocks|size [MB]|
-------------------------------------------------------------------------------
   1 |* c2t0d0|   SEAGATE|   scsi| FIXED|  No|   V|   512|  71132959|    34732|
   2 |  c2t1d0|   HITACHI|   scsi| FIXED|  No|   V|   512| 143374738|    70007|
-------------------------------------------------------------------------------

Configuration du partitionnement sur un client x86

Vous pouvez utiliser le fichier manifest IA pour configurer des partitions sur un disque pendant l'installation automatisée. Vous pouvez spécifier une partition en tant que cible d'installation et vous pouvez supprimer des partitions existantes, modifier la taille ou le type d'une partition existante, et créer des partitions.


Remarque –

Les opérations de partition sont utiles pour les clients x86 uniquement.


Utilisez la balise <partition> pour configurer le partitionnement d'un disque. La balise <partition> doit être dans une balise <disk>. La balise <partition> possède les attributs suivants :

Lorsque vous créez une partition, vous pouvez, si vous le souhaitez, spécifier la taille de la nouvelle partition. Si une seule partition est spécifiée et que la taille n'est pas spécifiée, les algorithmes suivants sont utilisés pour calculer la taille de la nouvelle partition. Si plus d'une partition est spécifiée, la taille peut alors être omise pour une seule des spécifications de partition.

La balise <taille> possède les attributs suivants.

Spécification d'une partition en tant que cible d'installation pour un client x86

Sur un client x86, la cible d'installation peut être une partition de disque. Si le disque est partitionné, la cible d'installation doit être une partition Solaris. Une seule partition Solaris peut exister sur un disque. Vous pouvez utiliser une partition Solaris existante ou en créer une nouvelle.

Si une partition existe et que son type est SOLARIS ou 191, cette partition est la cible d'installation par défaut. Si aucune partition Solaris n'existe et que les instructions d'installation ne créent pas de partition Solaris, le programme d'installation automatisée crée une partition Solaris avec l'espace disque restant. Si cet espace est inférieur à l'espace requis pour une installation IA, l'installation échoue pour ce client.


Exemple 4–8 Spécification d'une partition Solaris existante en tant que cible d'installation

Dans cet exemple, la cible d'installation est une partition Solaris existante. La cible d'installation est le premier disque trouvé qui contient une partition Solaris (type de partition SOLARIS ou 191). Si aucune partition Solaris existante n'est détectée sur un client spécifique, l'installation automatisée échoue pour ce client.

<target>
  <target_device>
    <disk>
      <partition action="use_existing"/>
    </disk>
  </target_device>
</target>


Exemple 4–9 Spécification d'une nouvelle partition en tant que cible d'installation

Cet exemple ne spécifie aucune action. L'action par défaut est create. Cet exemple crée deux partitions principales.

<target>
  <target_device>
    <disk>
      <partition name="1" part_type="191">
        <size start_sector="200" val="20gb"/>
      </partition>
      <partition name="4" part_type="99">
        <size start_sector="2000" val="20gb"/>
      </partition>
    </disk>
  </target_device>
</target>

Modification des partitions sur un client d'installation x86

En plus de définir une partition en tant que cible d'installation, vous pouvez également supprimer des partitions existantes et en créer de nouvelles pendant l'installation automatisée. Vous pouvez créer une partition étendue ou créer des partitions logiques dans une nouvelle partition ou une partition étendue existante.


Remarque –

Les modifications de partitionnement apportées pendant l'installation automatisée se produisent suivant l'ordre dans lequel les actions delete et create sont répertoriées dans le fichier manifest IA.



Exemple 4–10 Suppression d'une partition existante

Vous pouvez supprimer les partitions existantes lors de l'installation cliente. Spécifiez l'action delete dans la balise <partition> et indiquez le numéro de la partition à supprimer dans l'attribut name.

<target>
  <target_device>
    <disk>
      <partition action="delete" name="3"/>
    </disk>
  </target_device>
</target>


Exemple 4–11 Création d'une partition étendue

Vous pouvez créer une partition étendue dans une table de partition fdisk en tant que partie de votre installation automatisée. Une partition étendue est une partition principale (1, 2, 3 ou 4) de type DOSEXT. Une seule partition principale peut être une partition étendue. Une partition étendue fournit de l'espace pour une ou plusieurs partitions logiques. Plusieurs partitions logiques peuvent être créées dans une partition étendue.

Cet exemple crée une partition étendue de taille maximale.

<target>
  <target_device>
    <disk>
      <partition name="3" part_type="DOSEXT"/>
    </disk>
  </target_device>
</target>


Exemple 4–12 Création d'une partition logique

Cet exemple crée une partition logique de type SOLARIS au sein de la partition étendue existante, en utilisant l'ensemble de l'espace libre disponible de la partition étendue.

En l'absence d'autres partitions logiques, l'intégralité de la partition étendue est utilisée pour la partition logique. S'il existe plusieurs partitions logiques, la quantité totale d'espace utilisée pour toutes les partitions logiques d'une partition étendue ne doit pas dépasser la quantité totale d'espace de la partition étendue. S'il n'y a pas d'espace disponible pour la partition logique parce qu'une autre partition logique utilise déjà tout l'espace, la création de partition échoue.

<target>
  <target_device>
    <disk>
      <partition name="7" part_type="SOLARIS"/>
    </disk>
  </target_device>
</target>


Exemple 4–13 Création d'une partition étendue contenant des partitions logiques

Cet exemple crée une partition étendue contenant deux nouvelles partitions logiques. Cet exemple contient les tâches suivantes.

<target>
  <target_device>
    <disk>
      <!-- Create an extended partition in the largest block of free space -->
      <partition name="4" part_type="DOSEXT"/>

      <!-- Create a 10G FAT32 logical partition on the extended partition.
           This partition consumes the 1st 10G of the extended partition. -->
      <partition name="5" part_type="FAT32">
        <size val="10gb"/>
      </partition>

      <!-- Create a Solaris logical partition using the
           largest unused free space in the extended partition.
           In this example, the partition uses the remaining space
           in the extended partition. -->
      <partition name="6" part_type="SOLARIS"/>
    </disk>
  </target_device>
</target>

Configuration de tranches sur un disque

Vous pouvez utiliser le fichier manifest IA pour configurer des tranches sur un disque pendant l'installation automatisée. Vous pouvez spécifier une tranche en tant que cible d'installation. Vous pouvez créer de nouvelles tranches, mais également supprimer ou conserver des tranches existantes.

Les tranches sont similaires aux partitions. Les différences entre les tranches et les partitions sont les suivantes :

Utilisez la balise <slice> pour configurer des tranches sur un disque. La balise <slice> doit se produire à l'intérieur d'une balise <disk>. La balise <slice> possède les attributs suivants :

Lorsque vous créez une tranche, vous pouvez, si vous le souhaitez, spécifier sa taille. Si une seule tranche est spécifiée et que la taille n'est pas spécifiée, la tranche correspond à la taille entière du disque. Si plus d'une tranche est spécifiée, la taille peut alors être omise pour l'une des spécifications de tranche. Spécifiez la taille de la tranche dans l'attribut val de la balise <size> de la tranche. Cette taille doit posséder un suffixe d'unités. Consultez la liste de suffixes d'unités dans la description de la propriété de disque dev_size dans Spécifications non déterministes de disque cible.

Spécification d'une tranche en tant que cible d'installation

La cible d'installation peut être une tranche d'un disque.


Exemple 4–14 Spécification d'une nouvelle tranche en tant que cible d'installation

L'exemple suivant crée deux tranches. Le SE Oracle Solaris sera installé sur la tranche 0. La tranche 0 existait déjà et sera remplacée par la nouvelle spécification.

<target>
  <target_device>
    <disk>
      <slice name="0" is_root="true" force="true">
        <size val="20gb"/>
      </slice>
      <slice name="4">
        <size val="20gb"/>
      </slice>
    </disk>
  </target_device>
</target>

Modification de tranches sur le client d'installation

En plus de définir une tranche en tant que cible d'installation, vous pouvez également créer, supprimer et conserver d'autres tranches pendant l'installation automatisée.


Exemple 4–15 Conservation d'une tranche

Spécifiez l'action preserve dans la balise <slice> pour indiquer que cette tranche ne doit pas être modifiée au cours de l'installation. L'exemple suivant explique comment conserver la tranche 4.

<target>
  <target_device>
    <disk>
      <slice name="0" is_root="true">
        <size val="20gb"/>
      </slice>
      <slice action="preserve" name="4"/>
    </disk>
  </target_device>
</target>


Exemple 4–16 Suppression d'une tranche

Spécifiez l'action delete dans la balise <slice> pour supprimer cette tranche au cours de l'installation. L'exemple suivant explique comment supprimer la tranche 4.

<target>
  <target_device>
    <disk>
      <slice name="0" is_root="true">
        <size val="20gb"/>
      </slice>
      <slice action="delete" name="4"/>
    </disk>
  </target_device>
</target>

Configuration du swap et du vidage sur le périphérique d'installation

Vous pouvez utiliser le fichier manifest IA pour configurer le swap et le vidage au cours de l'installation automatisée.

Utilisez la balise <swap> pour configurer le swap sur le périphérique d'installation. Utilisez la balise <dump> pour configurer le vidage sur le périphérique d'installation.

La balise <swap> possède un attribut no_swap facultatif. La valeur de l'attribut no_swap peut être True ou False. La valeur par défaut est False (Faux). Si no_swap="true" est spécifié, le swap n'est pas configuré sur le périphérique d'installation.

La balise <dump> possède un attribut no_dump facultatif. L'attribut no_dump fonctionne de la même façon pour la configuration du vidage que l'attribut no_swap pour la configuration du swap.

Les balises <swap> et <dump> utilisent la balise zvol. La balise zvol possède les attributs suivants :

Pour spécifier la taille du swap ou du vidage, utilisez la balise size dans la balise zvol. L'attribut val de la balise size doit avoir un suffixe d'unités. Consultez la liste de suffixes d'unités dans la description de la propriété de disque dev_size dans Spécifications non déterministes de disque cible.


Exemple 4–17 Configuration de swap sur le périphérique d'installation

<target>
 <target_device>
   <swap>
     <zvol action="create" name="swap">
       <size val="20gb"/>
     </zvol>
  </swap>
 </target_device>
</target>


Exemple 4–18 Annulation de la configuration de swap sur le périphérique d'installation

<target>
 <target_device>
   <swap no_swap"true"/>
 </target_device>
</target>


Exemple 4–19 Configuration du vidage sur le périphérique d'installation

<target>
  <target_device>
     <dump>
       <zvol action="create" name="dump">
         <size val="2gb"/>
       </zvol>
    </dump>
   </target_device
 </target>