Ici nous allons expliquer comment récupérer de l'espace disque non utilisé ou après désinstallation de windows.

1. Théorie sur le partitionnement d'un disque

Il existe trois sortes de partition sur un disque : la partition principale (appelée aussi partition primaire), la partition étendue et les lecteurs logiques. Vous pouvez installer jusqu'à 4 partitions principales mais une seule ne pourra être active (ceci est une limite de l'architecture des PC). Afin de pallier à cette limitation, il est possible de créer ce que l'on appelle une partition étendue puis ensuite créer dessus des lecteurs logiques.

Ainsi sur windows, vous pourrez avoir quelques chose de la forme suivante :
partition1















2. Exemple concret

2.1 Configuration actuelle

Soit la machine suivante : Un disque dur de 60 Go.

Nous avons la configuration suivante :

Disk geometry for /dev/hda: 0.000-57241.898 megabytes
Disk label type: msdos
Minor     Start       End           Type    Filesystem  Flags
1          0.031       266.704      primary   ext3       boot
2          266.704    19336.047  extended
5          266.735    5036.000    logical     ext3
6          5036.032   7899.147   logical     ext3
7          7899.179   9413.085   logical     linux-swap
8          9413.117   9797.453   logical     ext3
9          9797.484   19336.047  logical     ext3


Nous avons donc une partition primaire et une partition étendue avec 5 lecteurs logiques.

Device Boot            Start         End         Blocks   Id          System

/dev/hda1   *         1              34           273073+  83          Linux
/dev/hda2              35            2465        19527007+   5      Extended
/dev/hda5              35            642          4883728+  83        Linux
/dev/hda6              643           1007        2931831   83        Linux
/dev/hda7              1008          1200        1550241   82       Linux swap / Solaris
/dev/hda8              1201          1249        393561 83          Linux
/dev/hda9              1250          2465        9767488+  83      Linux


Nous avons donc la partition primaire /dev/hda1 et /dev/hda2 la partition étendue sur laquelle réside nt 5 lecteurs logiques (hda5, hd6, hd7 pour la swap, hd8 et hda9).

2.1 Créer un nouveau lecteur logique /dev/hda10

Nous avons dit plus haut que nous utilisions 20 Go de notre disque dur de 60 Go. Nous voulons créer un nouveau système de fichier dont le nom sera film et qui devra faire une taille de 30 Go. Il va donc nous falloir étendre notre partition étendue /dev/hda2 de 30 Go et donc créer un nouveau lecteur logique.

Pour cela, j'ai utilisé QtParted du cd SystemRescueCD (www.sysresccd.org). lorsque vous bootez sur le CD, il faut alors taper la commande
run_qtparted
A partir de là, cela ressemble à partition magique. vous créez simplement votre nouveau lecteur logique.

2.2 Nouvelle configuration après partitionnement

   Device Boot        Start           End          Blocks   Id    System
/dev/hda1   *          1              34          273073+  83   Linux
/dev/hda2                 35           6564      52452225    f   W95 Ext'd (LBA)
/dev/hda5                 35          642        4883728+    83  Linux
/dev/hda6                643         1007       2931831       83  Linux
/dev/hda7               1008          1200      1550241   82   Linux swap / Solaris
/dev/hda8               1201          1249       393561   83    Linux
/dev/hda9               1250          2465       9767488+  83 Linux
/dev/hda10             2466          6564       32925186   83  Linux


On voit maintenant que notre partition étendue hda2 est augmenté et un nouveau lecteur logique hda10 a été créé d'une taille environ de 32 Go.

2.3 Création d'un nouveau système de fichier

Il s'agit maintenant de créer notre nouveau système de fichier /films.
- Formatage de la partition en ext3 : dans un premier temps, nous allons formater notre nouvelle partition (ou lecteur logique) afin de pouvoir créer un système fichier dessus. Nous allons la formater pour créer un système fichier journalisé ext3.

# mkfs.ext3 /dev/hda10
mke2fs 1.37 (21-Mar-2005)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
4120704 inodes, 8231296 blocks
411564 blocks (5.00%) reserved for the super user
First data block=0
252 block groups
32768 blocks per group, 32768 fragments per group
16352 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624

Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 38 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.


- Création du point de montage : maintenant nous allons créer notre point de montage. Pour cela, nous allons créer notre répertoire films sous / pour faire au plus simple. Nous allons le faire appartenir à l'utilisateur tagger.
# mkdir films
#ls -ld films

drwxr-xr-x  2 root root 1024 Jan 14 15:29 films
# chown tagger:tagger /films
# ls -ld films

drwxr-xr-x  2 tagger tagger 1024 Jan 14 15:29 films

Voilà notre point de montage est créé.

- Montage du système de fichier : maintenant, nous allons monter notre partition /dev/hda10 qui fait 30 Go environ sur notre répertoire servant de point de montage /films.
# mount -t ext3 /dev/hda10 /films

maintenant regardons si notre nouveau système de fichier est bien monté (on peut utiliser la commande mount mais pour avoir plus détail nous utilisons df -k)
# df -k
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hda1              255912    96210    146049  40% /
tmpfs                 257860         0    257860   0% /dev/shm
/dev/hda9             9614116 1168408   7957336  13% /home
/dev/hda5             4807056 2087244   2475628  46% /usr
/dev/hda6             2885780   704892   2034300  26% /var
/dev/hda10           32407936    32828  30728852   1% /films


Voilà notre système de fichier est bien monté sur /films et fait environ 30 Go.

- Montage automatique du système de fichier au boot : maintenant nous allons ajouter une entrée dans le fichier /etc/fstab afin que notre système de fichier monte automatiquement à chaque démarrage. Il faut donc éditer le fichier fstab et ajouter la ligne suivante :
/dev/hda10     /films          ext3    defaults        0      2

Ce qui donne le fichier /etc/fstab suivant :
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type> <options>       <dump> <pass>
proc          /proc           proc   defaults        0      0
/dev/hda1       /              ext3    defaults,errors=remount-ro 0       1
/dev/hda9      /home          ext3    defaults        0      2
/dev/hda5       /usr           ext3    defaults        0       2
/dev/hda6      /var          ext3    defaults       0       2
/dev/hda10    /films          ext3    defaults        0       2
/dev/hda7      none          swap    sw             0       0
/dev/hdb        /media/cdrom0   iso9660 ro,user,noauto  0       0
/dev/hdc        /media/cdrom1   iso9660 ro,user,noauto  0       0
/dev/fd0       /media/floppy0  auto    rw,user,noauto  0       0
/dev/sda1      /mnt/usbkey     vfat    defaults,noauto,user,sync,uid=1000,gid=1000,umask=022 0       0

Voilà à chaque démarrage, notre nouveau système de fichiers sera monté automatiquement.