<chapter id="evmsassignseg"><title>Ajout et suppression d'un gestionnaire de segments</title>
<para>Ce chapitre explique quand utiliser un gestionnaire de segments, quels sont les différents types de gestionnaires de segment, comment ajouter un gestionnaire de segments à un disque, et comment supprimer un gestionnaire de segments.</para>   
<sect1 id="whenassign"><title>Quand ajouter un gestionnaire de segments</title>
  <para>Ajouter un gestionnaire de segments permet à un disque d'être subdivisé en objets de stockage plus petits appelés segments de disque. La commande <command>add</command> fait que le gestionnaire de segments crée les métadonnées appropriées et montre l'espace libre que le gestionnaire de segments trouve sur le disque. Il faut ajouter des gestionnaires de segment lorsqu'on a un nouveau disque ou lorsqu'on passe d'un plan de partitionnement à un autre. </para>
<para>Les types de segments de disque que EVMS affiche sont :</para>
  <itemizedlist><listitem><para>Données [data] : ensemble de secteurs contigus qui ont été alloués depuis un disque et qui peuvent être utilisés pour construire un volume ou un objet.</para></listitem>

    <listitem><para>Espace libre [freespace] : ensemble de secteurs contigus qui ne sont pas alloués ou utilisés. L'espace libre peut être utilisé pour créer un segment.</para></listitem>

    <listitem><para>Méta-données [metadata] : ensemble de secteurs contigus contenant de l'information nécessaire au gestionnaire de segments.</para></listitem>
  </itemizedlist>
</sect1>
<sect1 id="smtypes"><title>Types de gestionnaires de segments</title>
  <para>Dans EVMS, il y a 7 types de gestionnaires de segments : DOS, GPT, S/390, Cluster, BSD, MAC, et BBR.</para>
  
  
  <sect2 id="defaultseg"><title>Le gestionnaire de segment DOS</title>
    <para>Le gestionnaire de segments le plus communément utilisé est le gestionnaire de segments DOS. Ce plug-in fournit la prise en charge pour le partitionnement de disque DOS traditionnel. Le gestionnaire de segments DOS reconnaît et prend en charge également les variations suivantes du plan de partitionnement DOS :

    <itemizedlist>
    <listitem><para>OS/2 : un disque OS/2 a des secteurs de méta-données supplémentaires, contenant les informations nécessaires pour reconstruire des segments de disque.</para></listitem>
      <listitem><para>Partitions imbriquées : la prise en charge pour BSD, SolarisX86, et UnixWare se trouve parfois imbriquée dans des partitions DOS primaires. Le gestionnaire de segments DOS reconnaît et prend en charge ces parts comme segments de disque.</para></listitem></itemizedlist></para>
  </sect2>
  
  <sect2 id="gptseg"><title>Le gestionnaire de segment de table de partitionnement GUID [GUID Partitioning Table (GPT)]</title>
      <para>Le gestionnaire de segments GPT gère le nouveau plan de partitionnement GPT sur les machines IA-64. La <citetitle>spécification d'interface de microprogramme extensible [Extensible Firmware Interface Specification]</citetitle> d'Intel requiert que les microprogrammes puissent découvrir des partitions et produire des périphériques logiques correspondant aux partitions de disque. Le plan de partitionnement décrit dans la spécification s'appelle GPT à cause de l'utilisation très répandue du balisage d'identifiant unique global [Globally Unique Identifier (GUID)]. Le GUID est un identifiant d'une longueur de 128 bits, appelé également identifiant unique universel [Universally Unique Identifier (UUID)]. Ainsi qu'on le décrit dans le <citetitle>Wired For Management Baseline Specification</citetitle> d'Intel, le GUID est une combinaison de champ temporel et de champ spatial produisant un identifiant unique dans un espace entier d'UUID. L'utilisation de ces identifiants sur les disques partitionnés en GPT pour baliser des disques entiers ou des partitions individuelles est très répandue. Les disques partitionnés en GPT ont de nombreuses fonctions, comme par exemple :</para>
        <itemizedlist>
            <listitem><para>garder une copie primaire et de sauvegarde des méta-données</para>
            </listitem>
            <listitem><para>remplacer l'imbrication de partition MSDOS en permettant plusieurs partitions</para>
            </listitem>
            <listitem><para>utiliser l'adressage en blocs logiques de 64 bits</para>
            </listitem>
            <listitem><para>baliser les partitions et disques avec des descripteurs GUID</para>
            </listitem>
        </itemizedlist>
    
    <para>Le gestionnaire de segments GPT s'adapte mieux à l'échelle des grands disques. Il fournit plus de redondance avec une fiabilité supplémentaire et utilise des noms uniques. Cependant, le gestionnaire de segments GPT n'est pas compatible avec DOS, OS/2, ou Windows&reg;. </para></sect2>
      
  <sect2 id="s390sm"><title>Le gestionnaire de segment S/390</title>
    <para>Le gestionnaire de segments S/390 est utilisé exclusivement sur des mainframes System/390. Le gestionnaire de segments S/390 a la capacité de reconnaître diverses configurations de disques que l'on trouve sur une machine S/390, et fournit la prise en charge de segments de disque pour cette architecture. Les deux configurations de disque les plus courantes sont Linux Disk Layout (LDL) et Common Disk Layout (CDL).</para>

    <para>La principale différence entre LDL et CDL est qu'un disque LDL ne peut pas être subdivisé davantage. Un disque LDL produira un unique segment de disque de méta-données, et un unique segment de disque de données. Il n'y a pas d'espace libre sur un disque LDL, et on ne peut pas supprimer ou redimensionner un segment de données. Un disque CDL peut être subdivisé en de multiples segments de disque de données car il contient des méta-données que l'on ne trouve pas dans un disque LDL, en particulier les informations de la table des matières du volume [Volume Table of Contents (vtoc)].</para>

    <para>Le gestionnaire de segments S/390 est le seul plug-in de gestion de segment capable de comprendre la configuration unique des disques S/390. Le gestionnaire de segments S/390 ne peut pas être ajouté ou retiré d'un disque.</para></sect2>

<sect2><title>Le gestionnaire de segments pour unités de stockage [clusters]</title>
<para>Le gestionnaire de segments pour cluster [cluster segment manager (CSM)] prend en charge les clusters à haute disponibilité. Lorsque le CSM est ajouté à un stockage sur disque partagé, il écrit sur le disque des méta-données qui :</para>

<itemizedlist>
<listitem><para>fournissent un identifiant de disque unique (GUID)</para></listitem>
<listitem><para>donnent un nom au conteneur EVMS au sein duquel le disque reposera</para></listitem>
<listitem><para>spécifient le noeud de cluster (nodeid) qui possède le disque</para></listitem>
<listitem><para>spécifient le cluster (clusterid)</para></listitem>
</itemizedlist>

<para>Ces métadonnées permettent au CSM de construire des conteneurs pour la prise en charge de situations de basculement. Cela se fait en construisant un objet conteneur EVMS qui consomme tous les disques partagés découverts par le CSM et appartenant au même conteneur. Ces disques de stockage partagés sont consommés par le conteneur et un segment de données unique est produit  par le conteneur pour chaque disque consommé. Un basculement des ressources EVMS s'accomplit en réassignant simplement le conteneur CSM au noeud de clusters en veille, et en faisant en sorte que le noeud relance son processus de découverte.</para>
<para>Ajouter des disques aux conteneurs CSM implique que seuls les objets de stockage sur disque soient acceptables par le CSM. Ceci est un aspect important du CSM. D'autres gestionnaires de segments peuvent être imbriqués dans des objets de stockage et utilisés pour les subdiviser davantage. Cependant, le CSM ne peut ajouter aucun autre type d'objet de stockage à un conteneur de CSM car le conteneur est censé être un groupe de disques, et le groupe de disques en entier est réassigné lors d'un basculement. Le CSM n'accepte donc des disques que lors de la construction de conteneurs. Il est important de s'en souvenir lorsqu'on ajoute le CSM à un disque. Si on choisit <command>Add</command> et que le CSM n'apparaît pas dans la liste de sélection des plug-ins alors qu'on sait qu'on a un disque, il faut regarder dans la liste de volumes et voir si le disque s'y trouve en tant que volume de compatibilité. Si on supprime simplement le volume, le disque deviendra un objet disponible et le CSM apparaîtra alors dans la liste des plug-ins car il a maintenant un disque disponible qui peut être ajouté à un conteneur.</para>
</sect2>

<sect2><title>Le gestionnaire de segment BSD</title>
<para>BSD fait référence au système d'exploitation UNIX&reg; Berkeley Software Distribution. Le gestionnaire de segments BSD d'EVMS est responsable de la reconnaissance et de la production d'objets de stockage de segment EVMS permettant de mapper des partitions BSD. Un disque BSD peut avoir une table de tranches dans le tout premier secteur du disque par souci de compatibilité avec d'autres systèmes d'exploitation. Par exemple, une table de tranches DOS peut se trouver dans le secteur MBR habituel. Le disque BSD se trouverait alors dans une tranche de disque localisée à l'aide d'une table de tranches de compatibilité. Cependant, BSD n'a pas besoin de la table de tranches et peut dédier entièrement le disque à lui-même en plaçant l'étiquette de disque dans le tout premier secteur. On appelle ça un &quot;disque entièrement dédié&quot; car BSD utilise le disque entier et ne fournit pas une table de tranches de compatibilité. Le gestionnaire de segments BSD reconnaît de tels &quot;disques entièrement dédiés&quot; et fournit des mappages pour les partitions BSD.</para>
</sect2>

<sect2><title>Le gestionnaire de segment MAC</title>
<para>Les disques partitionnés par Apple utilisent une étiquette de disque qui est reconnue par le gestionnaire de segments MAC. Le gestionnaire de segments MAC reconnaît l'étiquette de disque au cours de la découverte et crée des segments EVMS pour mapper les partitions de disque MacOS.</para>
</sect2>

<sect2><title>Le gestionnaire de segments BBR</title>
<para>Le gestionnaire de segments de remplacement de blocs défectueux [bad block replacement (BBR)] améliore la fiabilité d'un disque en remappant les blocs de stockage défectueux. Lorsque le BBR est ajouté à un disque, il écrit sur celui-ci des méta-données qui :</para>
<itemizedlist>
<listitem><para>réservent des blocs de remplacement</para></listitem>
<listitem><para>mappent des blocs défectueux à des blocs réservés</para></listitem>
</itemizedlist>
<para>Les blocs défectueux se rencontrent lorsqu'une erreur d'entrée/sortie [input/output (I/O)] est détectée lors d'une opération d'écriture. Lorsque cela arrive, l'I/O échoue normalement et le code d'échec est renvoyé au code du programme appelant. Le BBR détecte les opérations d'écriture qui ont échoué et remappe l'I/O à un bloc réservé du disque. Après cela, BBR redémarre l'I/O en utilisant le bloc réservé.</para>
<para>Chaque bloc de stockage a une adresse, appelée adresse de bloc logique [logical block address], ou LBA. Lorsque le BBR est ajouté à un disque, il fournit deux fonction critiques : le remappage et la récupération. Lorsqu'une opération d'I/O est envoyée à un disque, le BBR inspecte le LBA dans la commande I/O pour voir si le LBA a été remappé à un bloc réservé en raison d'une erreur d'I/O. Si le BBR trouve un mappage entre le LBA et un bloc réservé, il met à jour la commande I/O avec le LBA du bloc réservé avant de l'envoyer au disque. Une récupération a lieu lorsque le BBR détecte une erreur d'I/O et remappe le bloc défectueux à un bloc réservé. Le nouveau mappage LBA est enregistré dans les métadonnées BBR de façon à ce que la prochaine I/O vers le LBA puisse être remappée.</para>
</sect2>
  
</sect1>

<sect1 id="assignsegex"><title>Ajouter un gestionnaire de segments à un disque existant</title>
  <para>Lorsqu'on ajoute un gestionnaire de segments à un disque, le gestionnaire de segments a besoin de changer la configuration de base du disque. Ce changement implique que certains secteurs soient réservés pour les métadonnées et que les secteurs restant soient rendus disponibles pour créer des segments de disque de données. Les secteurs de métadonnées sont écrits sur un disque pour enregistrer les informations nécessaires au gestionnaire de segments ; les informations présentes sur le disque auparavant sont perdues. Avant d'ajouter un gestionnaire de segments à un disque existant, il faut retirer toute structure de gestion de volume existante, y compris les gestionnaires de segments précédents.</para>

  
</sect1>

<sect1 id="assignsegnew"><title>Ajout d'un gestionnaire de segments à un nouveau disque</title>
  <para>Lorsqu'un nouveau disque est ajouté à un système, le disque ne contient en général aucune donnée et n'a pas été partitionné. Si c'est le cas, le disque apparaît dans EVMS en tant que volume de compatibilité car EVMS ne peut pas savoir si le disque est utilisé en tant que volume. Pour ajouter un gestionnaire de segments au disque dans le but de le subdiviser en objets de segment de disque plus petits, indiquez à EVMS que le disque n'est pas un volume de compatibilité en supprimant les informations de volume.</para> 

  <para>Si le nouveau disque a été déplacé depuis un autre système, il y a de grandes chances que le disque contienne déjà des métadonnées. Si le disque ne contient pas de métadonnées, le disque s'affiche dans EVMS avec les objets de stockage qui ont été produits à partir des méta-données existantes. La suppression de ces objets permettra d'ajouter au disque un gestionnaire de segments différent, et vous perdrez toutes les anciennes données.</para>
</sect1>
  
<sect1 id="assignex"><title>Exemple: ajoutez un gestionnaire de segments</title>
<para>Cette section montre comment ajouter un gestionnaire de segments avec EVMS.</para>

  <para>EVMS affiche au départ comme des volumes les disques physiques qu'il voit. Supposez que vous ayez ajouté un nouveau disque vu par EVMS en tant que <filename>sde</filename>. Ce disque ne contient aucune donnée et n'a pas été subdivisé (aucune partition). EVMS suppose que ce disque est un volume de compatibilité du nom de <filename>/dev/evms/sde</filename>.</para>


<blockquote><example><title>Ajoutez le gestionnaire de segments DOS</title>
<para>Ajoutez le gestionnaire de segments DOS au disque <filename>sde</filename>.</para></example></blockquote>
  
  <note><title>NOTE</title>
<para>Dans l'exemple suivant, le gestionnaire de segments DOS crée deux segments sur le disque : un segment de méta-données appelé <filename>sde_mbr</filename>, et un segment pour représenter l'espace disponible sur l'unité de disque, <filename>sde_freespace1</filename>. Ce segment d'espace libre (<filename>sde_freespace1</filename>) peut être divisé en d'autres segments car il représente l'espace non utilisé de l'unité de disque.</para></note>


<sect2 id="assignseggui"><title>Utilisation de l'interface d'EVMS</title>

<para>Pour ajouter le gestionnaire de segments DOS à <filename>sde</filename>, retirez d'abord le volume <filename>/dev/evms/sde</filename> :</para>

<orderedlist>
<listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
<guimenuitem>Delete (supprimer)</guimenuitem>
<guimenuitem>Volume</guimenuitem></menuchoice>.</para></listitem>
<listitem><para>Sélectionnez <filename>/dev/evms/sde</filename>.</para></listitem>
<listitem><para>Cliquez sur <guibutton>Delete</guibutton>.</para></listitem>

</orderedlist>
<para>Autrement, vous pouvez retirer le volume en passant par le menu contextuel de l'interface :</para>

<orderedlist>
<listitem><para>Depuis l'onglet <guimenuitem>Volumes</guimenuitem>, faites un clic droit sur <filename>/dev/evms/sde</filename>.</para></listitem>
<listitem><para>Cliquez sur <guibutton>Delete</guibutton>.</para></listitem>
</orderedlist>

<para>Après que le volume ait été retiré, ajoutez le gestionnaire de segments DOS :</para>

<orderedlist>
<listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
<guimenuitem>Add (ajouter)</guimenuitem>
<guimenuitem>Segment Manager to Storage Object (gestionnaire de segments vers objet de stockage)</guimenuitem></menuchoice>.</para></listitem>
<listitem><para>Sélectionnez <guilabel>DOS Segment Manager</guilabel>.</para></listitem>
<listitem><para>Cliquez sur <guibutton>Next (suivant)</guibutton>.</para></listitem>
<listitem><para>Sélectionnez <guilabel>sde</guilabel></para></listitem>

<listitem><para>Cliquez sur <guibutton>Add</guibutton></para></listitem>
</orderedlist>
</sect2>

<sect2 id="assignsegncur"><title>Utilisation de Ncurses</title>
<para>Pour ajouter le gestionnaire de segments DOS à <filename>sde</filename>, retirez d'abord le volume <filename>/dev/evms/sde</filename> :</para>
<orderedlist>
<listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu><guimenuitem>Delete</guimenuitem>
<guimenuitem>Segment Manager to Storage Object</guimenuitem></menuchoice>.</para></listitem>
<listitem><para>Sélectionnez <filename>/dev/evms/sde</filename>.</para></listitem>
<listitem><para>Activez <guibutton>Delete</guibutton>.</para></listitem>

</orderedlist>

<para>Autrement, vous pouvez retirer le volume en passant par le menu contextuel :</para>

<orderedlist>
<listitem><para>Dans la vue des volumes logiques, appuyez sur <keycap>Entrée</keycap> pour 
<filename>/dev/evms/sde</filename>.</para>
</listitem>
<listitem><para>Activez <guibutton>Delete</guibutton>.</para>
</listitem>

</orderedlist>

<para>Une fois le volume retiré, ajoutez le gestionnaire de segments DOS :</para>
<orderedlist>
<listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu><guimenuitem>Add</guimenuitem>
<guimenuitem>Segment Manager to Storage Object</guimenuitem></menuchoice></para></listitem>
<listitem><para>Sélectionnez <guilabel>DOS Segment Manager</guilabel>.</para></listitem>
<listitem><para>Activez <guibutton>Next</guibutton>.</para></listitem>
<listitem><para>Sélectionnez <guilabel>sde</guilabel>.
</para></listitem>
<listitem><para>Activez <guibutton>Add</guibutton>.</para></listitem>
</orderedlist>
  </sect2>


<sect2 id="assignsegcli"><title>Utilisation du CLI</title>

<para>Pour ajouter le gestionnaire de segments DOS à sde, indiquez d'abord à EVMS que ce disque n'est pas un volume et qu'il est disponible à l'utilisation :</para>
    
    <programlisting>Delete:/dev/evms/sde</programlisting>
  
<para>Ensuite, ajoutez le gestionnaire de segments DOS à sde en tapant ce qui suit :</para>

  <programlisting>Add:DosSegMgr={},sde</programlisting>

      
</sect2>  

 </sect1>
<sect1 id="removeseg">
<title>Suppression d'un gestionnaire de segments</title>

<para>

Lorsqu'un gestionnaire de segments est supprimé d'un disque, le disque 
peut être réutilisé par d'autres plug-ins. La commande 
<command>remove</command> fait que le gestionnaire de segments enlève sa 
partition ou table de tranches du disque, abandonnant ainsi l'objet de 
stockage de disque brut qui devient alors un objet de stockage EVMS 
disponible. En tant qu'objet de stockage disponible, le disque est libre 
pour être utilisé par n'importe quel plug-in lorsque des objets de 
stockage sont créés ou agrandis. Vous pouvez également ajouter n'importe 
quel gestionnaire de segments à l'objet de stockage de disque 
disponible, dans le but de subdiviser le disque en segments.

</para>

<para>La plupart des plug-ins de gestionnaire de segments vérifient si chacun des segments est encore utilisé par d'autres plug-ins ou font encore partie d'un volume. Si un gestionnaire de segments constate qu'il n'y a aucun disque duquel il peut se retirer de manière sûre, il ne sera pas sur la liste lors de l'utilisation de la commande <command>remove</command>. Dans ce cas, il faut supprimer le volume ou objet de stockage qui consomme des segments du disque que vous voulez réutiliser.</para>

</sect1>
<sect1 id="rmvex"><title>Exemple : supprimez un gestionnaire de segments</title>
<para>Cette section montre comment supprimer un gestionnaire de segments avec EVMS.</para>

<blockquote><example><title>Supprimez le gestionnaire de segments DOS</title>
<para>Supprimez le gestionnaire de segments DOS du disque <filename>sda</filename>.</para></example></blockquote>
  
  <note><title>NOTE</title>
<para>Dans l'exemple suivant, le gestionnaire de segments DOS a une partition primaire  sur le disque <filename>sda</filename>. Le segment est un volume de compatibilité dont le nom est <filename>/dev/evms/sda1</filename>.</para></note>


<sect2 id="removeseggui"><title>Utilisation du menu contextuel de l'interface d'EVMS</title>

<para>Suivez ces étapes pour supprimer un gestionnaire de segments avec le menu contextuel de l'interface :</para>

<orderedlist>
<listitem><para>Dans l'onglet <guimenuitem>Volumes</guimenuitem>, faites un clic droit sur <filename>/dev/evms/sda1</filename>..</para></listitem>
<listitem><para>Cliquez sur <guibutton>Delete</guibutton>.</para></listitem>
<listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu>
<guimenuitem>Remove</guimenuitem>
<guimenuitem>Segment Manager from Storage Object</guimenuitem></menuchoice>.</para></listitem>
<listitem><para>Sélectionnez <guimenuitem>DOS Segment Manager, sda</guimenuitem>.</para></listitem>
<listitem><para>Cliquez sur <guibutton>Remove</guibutton>.</para></listitem>
</orderedlist>

</sect2>

<sect2 id="removesegcur"><title>Utilisation de Ncurses</title>
<para>Suivez ces étapes pour supprimer un gestionnaire de segments avec l'interface  Ncurses :</para>
<orderedlist>
<listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu><guimenuitem>Delete</guimenuitem>
<guimenuitem>Volume</guimenuitem></menuchoice>.</para></listitem>
<listitem><para>Sélectionnez <filename>/dev/evms/sda1</filename>.</para></listitem>
<listitem><para>Activez <guibutton>Delete</guibutton>.</para></listitem>
<listitem><para>Sélectionnez <menuchoice><guimenu>Actions</guimenu><guimenuitem>Remove</guimenuitem>
<guimenuitem>Segment Manager from Storage Object</guimenuitem></menuchoice>.</para></listitem>
<listitem><para>Activez <guibutton>Remove</guibutton>.</para></listitem>

</orderedlist>

  </sect2>


<sect2 id="removesegcli"><title>Utilisation du CLI</title>

<para>Suivez ces étapes pour supprimer un gestionnaire de segments avec le CLI :</para>
    
    <programlisting>Delete:/dev/evms/sda1</programlisting>
  
    <programlisting>Remove: sda</programlisting>  
</sect2>  

 </sect1>

</chapter>