<appendix id="appxlvm2"><title>Le plug-in LVM2</title>
  
  <para>Le plug-in LVM2 est compatible avec le nouveau format de volume amené par les outils de LVM2 avec Red Hat (anciennement Sistina). Ce plug-in est pratiquement identique au plug-in LVM en terme de fonctionnalité. La principale différence est le format de metadonnées amélioré. LVM2 est toujours basé sur le concept de groupe de volumes (VG), lesquels sont construits à partir de volumes physiques (PV) et produisent des volumes logiques (LV).</para>
  
  <para>Tout comme le plug-in LVM, le plug-in LVM2 représente les groupes de volumes comme des conteneurs EVMS et les volumes logiques comme des régions EVMS. Les conteneurs LVM2 combinent des objets de stockage (disques, segments, ou d'autres régions) pour créer une zone d'espace libre. Les régions sont ensuite créées à partir de cet espace libre, avec toutes sortes de rattachement vers les objets consommés.</para>
  
  <!-- Appendice D 1 Les actions sur les conteneurs -->
  <sect1 id="contops"><title>Les actions sur les conteneurs</title>
    <!-- Appendice D 1.1 Création de conteneurs LVM2 -->
    <sect2><title>Création de conteneurs LVM2</title>
      <para>Dès leur création, les conteneurs auront un premier ensemble d'objets. Ces objets peuvent être des disques, des segments, ou des régions. Il y a deux options disponibles lors de la création de conteneurs LVM2:</para>
      
      <para><variablelist>
          <varlistentry><term>name</term>
            <listitem><para>Nom du nouveau conteneur.
              </para></listitem>
          </varlistentry>
          <varlistentry><term>extent_size</term>
            <listitem><para>Taille de la zone physique (PE), c'est-à-dire le niveau de granularité pour la création des régions. La taille par défaut est 32Mo. A l'inverse du plug-in LVM1, il n'y a pas de limitation pour le nombre de zones qui peuvent être allouées à une région LVM2.</para></listitem>
          </varlistentry>
        </variablelist></para>
    </sect2>
    
    <!-- Appendice D 1.2 Ajout d'objets à des conteneurs LVM2 -->
    <sect2><title>Ajout d'objets à des conteneurs LVM2</title>
      <para>On peut ajouter des objets à un conteneur LVM existant afin d'accroître la zone de stockage disponible pour créer des régions. Etant donné que les options name et extent-size sont définies lors de la création du conteneur, aucune option n'est disponible lorsqu'on ajoute de nouveaux objets à un conteneur. Chaque objet doit être assez grand pour contenir au moins une zone physique. Si un objet n'est pas assez grand, le plug-in LVM2 ne permettra pas l'ajout de l'objet dans le conteneur.</para>
    </sect2>
    
    <!-- Appendice D 1.3 Suppression des objets dans les conteneurs LVM2 -->
    <sect2><title>Suppression des objets dans les conteneurs LVM2</title>
      <para>On peut supprimer des objets dans les conteneurs tant qu'aucune région n'est rattachée à cet objet. Le plug-in LVM2 ne permet pas de supprimer d'un conteneur les objets en cours d'utilisation. Si un objet doit être éliminé, on peut supprimer ou réduire la région, ou déplacer des zones, pour que l'objet cesse d'être utilisé.</para>
      
      <para>Aucune option n'est disponible pour retirer des objets dans les conteneurs LVM.</para>
    </sect2>
    
    <!-- Appendice D 1.4 Agrandissement d'objets utilisés dans les conteneurs LVM2 -->
    <sect2><title>Agrandissement d'objets utilisés dans les conteneurs LVM2</title>
      <para>On peut non seulement ajouter de nouveaux objets à un conteneur LVM2, mais aussi augmenter l'espace dans le conteneur en agrandissant les objets utilisés (PV) existants. Par exemple, si un PV est un segment de disque avec de l'espace libre juste après sur le disque, on peut agrandir ce segment, ce qui augmentera la quantité d'espace libre dans le conteneur. De la même façon, si un PV est une région RAID-0 ou RAID-5, on peut agrandir cette région en ajoutant des objets supplémentaires, ce qui se traduit par une augmentation de l'espace libre dans le conteneur.</para>
      
      <para>Quand on se sert de l'interface graphique ou de l'interface texte, l'agrandissement du PV s'effectue par l'agrandissement du conteneur. Si des PV existants sont extensibles, ils apparaîtront dans la liste des points d'expansion. Sélectionnez le PV à agrandir, puis les options pour agrandir cet objet. Après agrandissement du PV, l'espace libre du conteneur correspondra à l'espace supplémentaire disponible sur ce PV.</para>
      
      <para>Quand on se sert du CLI, l'agrandissement du PV s'effectue en agrandissant directement l'objet correspondant. Le CLI et le moteur EVMS transmettront les commandes nécessaires et le conteneur s'agrandira en même temps.</para>
      
      <para>Les options d'agrandissement d'un PV dépendent du plug-in auquel cet objet appartient. Voir l'annexe du plug-in correspondante pour plus d'information sur les options pour cet objet.</para>
    </sect2>
    
    <!-- Appendice D 1.5 Réduction d'objets utilisés dans les conteneurs LVM2 -->
    <sect2><title>Réduction d'objets utilisés dans les conteneurs LVM2</title>
      <para>On peut non seulement retirer des objets existants d'un conteneur LVM2, mais aussi réduire la taille d'un conteneur en réduisant l'un des objets utilisés (PV) existants. Cela n'est permis que si, en fin d'objet, il y a des zones physiques qui ne sont pas allouées à des régions LVM2. Dans ce cas, LVM2 acceptera une réduction de l'objet équivalente au nombre de zones physiques inutilisées à la fin de cet objet.</para>
      
      <para>Par exemple, si un PV est un segment de disque, on peut réduire ce segment, ce qui réduira la quantité d'espace libre dans le conteneur. De plus, si un PV est une région RAID-0 ou RAID-5, on peut réduire cette région en retirant un des objets, ce qui se traduira par une réduction de l'espace libre dans le conteneur.</para>
      
      <para>Quand on se sert de l'interface graphique ou de l'interface texte, la réduction de PV s'effectue en réduisant le conteneur. Les PV existants qui peuvent être réduits apparaîtront dans la liste des points de réduction. Sélectionnez le PV à réduire, puis les options pour réduire l'objet. Après réduction du PV, l'espace libre du conteneur correspondra à l'espace réduit disponible sur ce PV.</para>
      
      <para>Quand on se sert du CLI, la réduction de PV s'effectue en réduisant directement l'objet correspondant. Le CLI et le moteur EVMS achemineront les commandes nécessaires et le conteneur sera réduit en même temps.</para>
      
      <para>Les options pour réduire un PV dépendent du plug-in auquel il appartient. Voir l'annexe des plug-in pour plus d'information sur les options pour cet objet.</para>
    </sect2>
    
    <!-- Appendice D 1.6 Suppression des conteneurs LVM2 -->
    <sect2><title>Suppression des conteneurs LVM2</title>
      <para>On peut supprimer un conteneur tant que celui-ci ne possède pas de régions. Le plug-in LVM2 ne permet pas de supprimer des conteneurs s'ils ont des régions. Aucune option n'est disponible pour supprimer les conteneurs LVM2.</para>
    </sect2>
    
    <!-- Appendice D 1.7 Modification du nom des conteneurs LVM2 -->
    <sect2><title>Modification du nom des conteneurs LVM2</title>
      <para>On peut renommer un conteneur LVM2 existant. Lorsque le nom d'un conteneur LVM2 est modifié, les noms de toutes les régions produites à partir de ce conteneur seront automatiquement modifiées également, car le nom du conteneur est inclus dans les noms des régions. Dans l'interface graphique d'EVMS et l'interface texte, cela se fait en utilisant la commande <command>modify properties</command> qui est disponible dans le menu "Actions" ou dans les menus contextuels. Dans le CLI d'EVMS, cela se fait en utilisant la commande <command>set</command>.</para>
      
      <para>Voir <xref linkend="renamereg2"></xref> pour plus d'informations sur ce qui se passe lorsque l'on modifie les noms de régions.</para>
      
    </sect2>
    
  </sect1>
  
  <!-- Appendice D 2 Les actions sur les régions -->
  <sect1 id="regionops"><title>Les actions sur les régions</title>
    <!-- Appendice D 2.1 Créer des régions LVM2 -->
    <sect2><title>Créer des régions LVM2</title>
      
      <para>On peut créer des régions LVM2 à partir de l'espace libre des conteneurs LVM2. S'il y a au moins une zone d'espace libre dans le conteneur, on peut créer une nouvelle région.</para>
      
      <para>Voici les options disponibles pour créer des régions LVM2 :</para>
      <variablelist>
        <varlistentry><term>name</term>
          <listitem>
            <para>Nom de la nouvelle région.</para>
          </listitem>
        </varlistentry>
        
        <varlistentry><term>size</term>
          <listitem>
            <para>Taille de la nouvelle région. Cette taille doit être un multiple de la taille de zone du conteneur. Si ce n'est pas le cas, la taille sera arrondie au nombre inférieur de telle sorte que ce soit le cas. Par défaut, tout l'espace libre disponible dans le conteneur sera utilisé pour la nouvelle région.</para>
          </listitem>
        </varlistentry>
        <varlistentry><term>stripes</term>
          <listitem>
            <para>Si le conteneur utilise deux d'objets ou plus, et que chaque objet a des zones non-allouées, la nouvelle région peut être répartie sur plusieurs objets. C'est le même type de répartition que pour RAID-0 et cela permet une augmentation du débit E/S. Cette option spécifie sur combien d'objets la nouvelle région peut être répartie. Par défaut, les nouvelles régions ne sont pas réparties, et cette valeur est fixée à 1.</para>
          </listitem>
        </varlistentry>
        <varlistentry><term>stripe_size</term>
          <listitem>
            <para>Granularité de la répartition. La valeur par défaut est 64 Ko. Utilisez cette option seulement si l'option stripes est plus grande que 1.</para>
          </listitem>
        </varlistentry>
        
        <varlistentry><term>pvs</term>
          <listitem>
            <para>Liste des noms des objets auxquels la nouvelle région doit être rattachée. Par défaut, cette liste est vide, ce qui signifie que tous les objets disponibles seront utilisés pour allouer de l'espace à la nouvelle région.</para>
          </listitem>
        </varlistentry>
      </variablelist>
    </sect2>
    
    <!-- Appendice D 2.2 Agrandissement des régions LVM2 -->
    <sect2><title>Agrandissement des régions LVM2</title>
      <para>Vous pouvez agrandir une région LVM existante s'il y a des zones inutilisées dans le conteneur. Voici les options disponibles pour agrandir les régions LVM :</para>
      
      <variablelist>
        <varlistentry><term>size</term>
          <listitem>
            <para>Quantité d'espace à ajouter à la région. Il s'agit d'une taille delta, pas de la nouvelle taille absolue de la région. Tout comme la création de nouvelles régions, cette taille doit être un multiple de la taille de zone du conteneur, et sera arrondie au nombre inférieur si nécessaire.</para>
          </listitem>
        </varlistentry>
        <varlistentry><term>stripes</term>
          <listitem>
            <para>Nombre d'objets sur lesquels doit être répartie cette nouvelle portion de la région. Cette valeur peut être différente du nombre de segments de données dans la région existante. Par exemple, si la région a été créée à l'origine avec trois segments, mais que maintenant deux objets sont disponibles, alors la nouvelle portion de la région pourrait être répartie juste sur ces deux objets. Le nombre de de bandes de données pour le dernier mappage dans la région servira de valeur par défaut.</para>
          </listitem>
        </varlistentry>
        <varlistentry><term>stripe_size</term>
          <listitem>
            <para>Granularité de la répartition. Tout comme le nombre de de bandes, cette valeur peut être différente de celle de la région existante. Par défaut, c'est la taille de la bande de données du dernier mappage dans la région qui est utilisée.</para>
          </listitem>
        </varlistentry>
        <varlistentry><term>pvs</term>
          <listitem>
            <para>Liste des objets sur lesquels la région devrait être étendue. Par défaut, la liste est vide, ce qui signifie que tous les objets seront utilisés pour allouer de l'espace supplémentaire à la région.</para>
          </listitem>
        </varlistentry>
        
      </variablelist>
      
    </sect2>
    
    <!-- Appendice D 2.3 Réduction des régions LVM2 -->
    <sect2><title>Réduction des régions LVM2</title>
      <para>Vous pouvez réduire des régions LVM existantes en enlevant des zones se trouvant à la fin de la région. Les régions doivent avoir au moins une zone; une région ne peut donc être réduite à zéro.</para>
      
      <para>Les options suivantes sont disponibles pour la réduction d'une région LVM. Etant donné que l'on réduit toujours les régions en enlevant de l'espace à la fin de la région, une liste d'objets ne peut être spécifiée dans cette commande.</para>
      
      <variablelist>
        <varlistentry><term>size</term>
          <listitem>
            <para>Quantité d'espace à enlever de la région. Il s'agit d'une taille delta, pas de la nouvelle taille absolue de la région. Tout comme la création et l'agrandissement de régions, cette taille doit être un multiple de la taille de zone du conteneur, et sera arrondie au nombre inférieur si nécessaire.</para>
          </listitem></varlistentry>
      </variablelist>
    </sect2>
    
    <!-- Appendice D 2.4 Suppression des régions LVM2 -->
    <sect2><title>Suppression des régions LVM2</title>
      <para>On peut effacer une région LVM existante tant qu'elle n'est pas à ce moment là un volume de compatibilité, un volume EVMS, ou un volume consommé par un autre plug-in EVMS. Aucune option n'est disponible pour effacer des régions LVM.</para>
    </sect2>
    
    <!-- Appendice D 2.5 Modification du nom des régions LVM2 -->
    <sect2 id="renamereg2"><title>Modification du nom des régions LVM2</title>
      <para>On peut renommer une région LVM2 existante. Dans l'interface graphique d'EVMS et l'interface texte, cela se fait en utilisant la commande <command>modify properties</command>, qui est disponible dans le menu "Actions" ou dans les menus contextuels. Dans le CLI d'EVMS, cela se fait avec la commande <command>set</command>.</para>
      
      <para>Si une région LVM2 avec un nouveau nom possède un volume de compatibilité, le nom de ce volume de compatibilité sera également changé. Pour que cela marche correctement, ce volume doit être démonté avant que le nom soit changé. En outre, veillez à bien mettre à jour votre fichier <filename>/etc/fstab</filename> si le volume apparaît dans la liste, sinon le volume de sera pas monté proprement au prochain redémarrage du système.</para>
      
      <para>Si la région LVM2 avec un nouveau nom possède un volume EVMS ou un autre objet de stockage, le changement de nom de la région sera visible par les couches supérieures. Dans ce cas, on peut faire le changement de nom pendant que le volume est monté.</para>
    </sect2>
    
  </sect1>
  
</appendix>
