Redimensionner une partition avec GNU Parted
publié par pampryl, le mercredi 20 mai 2009 à 12:08, dans la catégorie Tutoriels.
Contexte
C'est en voulant essayer une nouvelle distribution sur mon laptop que l'idée de redimensionner mes partition m'a pris. C'est une opération que j'ai souvent effectué par le passé mais toujours à partir d'un liveCD. En l'occurence, ce jour là, pour cause de déménagement qui approche, impossible de mettre la main sur un liveCD sans déballer les cartons si durement remplis...
L'idée est donc de quitter la session graphique, de démonter le système de fichier visé, et de lancer la manipulation à la main. Comme la manipulation n'a pas été évidente et m'a même donné quelques sueurs froides, je fais ce billet pour mémoen quelque sorte.
Présentation succinte de GNU Parted
GNU Parted est un outil en ligne de commande qui permet de créer, supprimer, modifier, copier les partitions d'un disque dur. Il est souvent utilisé avec une interface graphique telle que GParted ou QtParted.
Voyons un peu à quoi ressemble l'utilisation de cet outil :
user:/path/$ sudo parted
GNU Parted 1.8.8
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) help
check NUMBER do a simple check on the file system
cp [FROM-DEVICE] FROM-NUMBER TO-NUMBER copy file system to another partition
help [COMMAND] prints general help, or help on
COMMAND
mklabel LABEL-TYPE create a new disklabel (partition
table)
mkfs NUMBER FS-TYPE make a FS-TYPE file system on
partititon NUMBER
mkpart PART-TYPE [FS-TYPE] START END make a partition
mkpartfs PART-TYPE FS-TYPE START END make a partition with a file system
move NUMBER START END move partition NUMBER
name NUMBER NAME name partition NUMBER as NAME
print [free|NUMBER|all] display the partition table, a
partition, or all devices
quit exit program
rescue START END rescue a lost partition near START
and END
resize NUMBER START END resize partition NUMBER and its file
system
rm NUMBER delete partition NUMBER
select DEVICE choose the device to edit
set NUMBER FLAG STATE change the FLAG on partition NUMBER
toggle [NUMBER [FLAG] ] toggle the state of FLAG on partition
NUMBER
unit UNIT set the default unit to UNIT
version displays the current version of GNU
Parted and copyright information
(parted)
Plus d'infos sur :
Les choses sérieuses
Je ne vais parler ici que d'une diminution de l'espace allouée à une partition pour en créer une nouvelle à la suite. Dans le cas inverse, les principes sont les mêmes, mais il faudra commencer les manipulation par un rm et ensuite faire le redimensionnement.
Voir l'état du disque
Rien de plus simple :
(parted) print all Disk /dev/sda: 160GB Sector size (logical/physical): 512B/512B Partition Table: msdos Number Start End Size Type File system Flags 1 32,3kB 8480MB 8480MB primary ext3 boot 2 8480MB 160GB 152GB extended 5 8480MB 9015MB 535MB logical linux-swap 6 9015MB 160GB 151GB logical ext3
On obtient plusieurs informations intéressantes :
- Numéro de la partition
- Déput et fin de la partition à XMB ou XGB
- Type de partition et de sytème de fichier
- Eventuellement la présence d'un flag de boot
C'est parti !
On lance le redimensionnement avec la commande resize de GNU Parted :
(parted) resize 6 9015MB 120GB
Une confirmation OK et le redimensionnement se lance.
Nouvelle partition
Nous avons à présent une partition redimensionnée et donc un espace vide qu'il faut utiliser. Ici nous allon créer une partion en ext3 qui commencera là où s'arrête celle qu'on vient de réduire et s'arrêtera au bout du disque.
mkpartfs logical ext3 120GB 160GB
On vérifie le résultat avec :
(parted) print all
(parted) check 7
Ensuite on s'échappe de parted avec un quit et il ne reste plus qu'à monter la nouvelle partition ou mieux, la vérifier avant avec :
user:/path/$ sudo fsck.ext3 /dev/sdXY