Ajouter un disque dur pour stocker un ou plusieurs atelier(s)

Au fil du temps, il arrive que la capacité de stockage du disque dur sur lequel vous avez installé Fee-Eos 1.3.3 devienne insuffisante. Nous allons donc voir une procédure permettant d'ajouter un nouveau disque dur pour stocker un ou plusieurs atelier(s) voire même la totalité de /home/ si vous le souhaitez.

Pour simplifier les choses, nous allons imaginer que sur le nouveau disque dur il n'y aura, au final, qu'un atelier contenant par exemple des images ISO (nous l'appellerons ibay_iso) :

  1. Avant tout, éteignez le serveur et montez le nouveau disque dur. On va dire qu'il est branché en esclave sur la nappe IDE primaire (donc, en /dev/hdb). Si vous branchez votre disque ailleurs (sur un autre connecteur ou bien même en SCSI), modifiez le device en fonction de votre configuration

  2. Démarrez votre serveur et ouvrez un shell avec le compte root

  3. Il va maintenant falloir créer la partition nécessaire au stockage de notre atelier. Nous allons pour cela utiliser l'utilitaire fdisk et ensuite taper p pour voir la table de partitions du disque (vous n'obtiendrez bien sûr pas les mêmes valeurs que celles indiquées ici) :

    fdisk /dev/hdb
    
    Le nombre de cylindres pour ce disque est initialisé à 1305.
    Il n'y a rien d'incorrect avec cela, mais c'est plus grand que 1024,
    et cela pourrait causer des problèmes en fonction pour certaines configurations:
    1) logiciels qui sont exécutés à l'amorçage (i.e., vieilles versions de LILO)
    2) logiciels d'amorçage et de partitionnement pour d'autres SE
       (i.e., DOS FDISK, OS/2 FDISK)
    
    Commande (m pour l'aide): p
    
    Disque /dev/hdb: 10.7 Go, 10737418240 octets
    255 têtes, 63 secteurs/piste, 1305 cylindres
    Unités = cylindres de 16065 * 512 = 8225280 octets
    
    Périphérique Boot   Start         End      Blocks   Id  System
    /dev/hdb1    *          1        1200     9638968+  83  Linux
    /dev/hdb3            1201        1305      843412+  82  Linux swap

    Dans le cas que j'expose ici, nous voyons que le disque dur a déjà été utilisé et qu'il possède deux partitions (hdb1 et hdb3) que nous allons supprimer avant de créer les nouvelles :

    Commande (m pour l'aide): d
    Numéro de partition (1-4): 1
    
    Commande (m pour l'aide): d
    Partition sélectionnée 3

    Vous pouvez vérifier avec la commande p qu'il n'existe plus la moindre partition sur le disque. Nous pouvons maintenant créer notre nouvelle partition (nous allons utiliser la totalité de l'espace, mais ce n'est pas obligatoire). Pour l'exemple, je vais créer une partition principale,

    Commande (m pour l'aide): n
    Action de commande
       e   étendue
       p   partition primaire (1-4)
    p
    Numéro de partition (1-4): 1
    Premier cylindre (1-1305, default 1): 1
    Dernier cylindre ou +taille or +tailleM ou +tailleK (1-1305, default 1305): 1305

    Là encore, vous pouvez vérifier avec la commande p que vos changements ont étés correctement pris en compte. Pour les valider, il ne vous reste plus qu'à taper la commande w :

    Commande (m pour l'aide): w
    La table de partitions a été altérée!
    
    Appel de ioctl() pour relire la table de partitions.
    Synchronisation des disques.
  4. La partition étant créée, il nous faut maintenant la formater pour pouvoir copier ensuite des données dedans:

    Attention! ne formatez pas votre disque avec une solution externe du genre live CD sauf si vous êtes sur que la version de ext2 utilisé sera compatible avec le noyo 2.2 qui fait tourner votre serveur

    /sbin/mkfs.ext2 /dev/hdb1
    mke2fs 1.35 (28-Feb-2008)
    Filesystem label=
    OS type: Linux
    Block size=4096 (log=2)
    Fragment size=4096 (log=2)
    368000 inodes, 734965 blocks
    36748 blocks (5.00%) reserved for the super user
    First data block=0
    Maximum filesystem blocks=754974720
    23 block groups
    32768 blocks per group, 32768 fragments per group
    16000 inodes per group
    Superblock backups stored on blocks:
            32768, 98304, 163840, 229376, 294912
    
    Writing inode tables: done
    Creating journal (8192 blocks): done
    Writing superblocks and filesystem accounting information: done
    
    This filesystem will be automatically checked every 36 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
  5. Pour faciliter et automatiser le montage de cette partition au démarrage, nous allons devoir ajouter une entrée au fichier /etc/fstab. Vous devrez donc éditer ce fichier (avec votre éditeur favori .) et y ajouter la ligne suivante :

    /dev/hdb1   /home/e-smith/files/ibays/ibay_iso  ext2    default        0 0
  6. Si l'atelier n'existe pas encore, créez-le dans le server-manager

  7. Il faut maintenant monter la partition (dans un répertoire temporaire), recopier les données de l'atelier existant dedans, la démonter, supprimer le répertoire utilisé pour le montage, supprimer le contenu de l'atelier et monter la nouvelle partition dedans :

    mkdir /mnt/tmp/
    mount /dev/hdb1 /mnt/tmp/
    rsync -arPv /home/e-smith/files/ibays/ibay_iso/ /mnt/tmp/
    umount /dev/hdb1
    rmdir /mnt/tmp/
    rm -rf /home/e-smith/files/ibays/ibay_iso/*
    mount /dev/hdb1
  8. Ici il faut recréer les quotas sur le point de montage :
    je n'est personnellement pas réussi a faire fonctionner la ligne de commande suivante
    (si vous ne passer pas cette ligne tous fonctionnera bien sauf les quotas)

    quotacheck -cguv /home/e-smith/files/ibays/ibay_iso/
  9. Enfin, il faut mettre à jour l'atelier :

    /sbin/e-smith/signal-event ibay-modify ibay_iso

Réutiliser un disque dur contenant un ou plusieurs atelier(s)

Si vous avez suivi la première partie de cette page et que vous êtes un jour ammené à refaire une installation totale de votre serveur, je vous propose cette méthode pour remettre votre disque en place :

Avant tout, n'oubliez surtout pas de débrancher ce disque avant de commencer la nouvelle installation !
Et dans tous les cas, sauvegardez vos données avant de vous lancer dans ce genre d'opération !

Pour automatiser le montage de cette partition au démarrage, il faut ajouter une entrée au fichier /etc/fstab. Vous devez donc éditer ce fichier (avec votre éditeur favori .) et y ajouter la ligne suivante (adaptez-la en fonction de votre device et du point de montage) :

/dev/hdb1   /home/e-smith/files/ibays/ibay_iso  ext2    default       0 0
        mount /dev/hdb1

Ce tutoriel est une adaptation pour Free-Eos du tutoriel de Grand Pa pour SME7