Outils pour utilisateurs

Outils du site


parted

Partitionnement du disque

Le partitionnement se réalise en bootant en mode rescue pour une machine hébergée ou sur une clé USB pour une machine locale.

Attention : sauvegarder les données si nécessaire. Le partitionnement supprime les données présentes sur le disque.

Objectif

Créer une partition occupant tout le disque pour créer un volume physique lvm.

Préparation

Installation de parted

root@router:~# apt-get install parted
...
root@router:~#

Trouver le disque à partitionner

root@secours:~# df
Filesystem     1K-blocks   Used Available Use% Mounted on
udev             8185100      4   8185096   1% /dev
tmpfs            1639492    544   1638948   1% /run
/dev/loop0        407808 407808         0 100% /lib/live/mount/rootfs/img.current.squashfs
tmpfs            8197444      0   8197444   0% /lib/live/mount/overlay
aufs             8197444   5144   8192300   1% /
none                   4      0         4   0% /sys/fs/cgroup
none                5120      0      5120   0% /run/lock
none             8197444      0   8197444   0% /run/shm
none              102400      0    102400   0% /run/user
root@secours:~# 

On voit qu'aucun disque /dev/sd* n'est utilisé par le système de secours.

root@163-172-28-103:~# ll /dev/sd*
brw-rw---- 1 root disk 8, 0 avril 18 11:23 /dev/sda
brw-rw---- 1 root disk 8, 1 avril 18 11:23 /dev/sda1
root@163-172-28-103:~# 

Le seul disque présent est /dev/sda. On remarque qu'il possède déjà une partition dont il faut éventuellement sauvegarder les données si nécessaire.

Commandes

Lancement

root@router:~# parted /dev/sda
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)

Lancer parted pour partitionner le disque sda.

Liste des commandes de parted

(parted) help
  align-check TYPE N                        check partition N for TYPE(min|opt) alignment
  help [COMMAND]                           print general help, or help on COMMAND
  mklabel,mktable LABEL-TYPE               create a new disklabel (partition table)
  mkpart PART-TYPE [FS-TYPE] START END     make a partition
  name NUMBER NAME                         name partition NUMBER as NAME
  print [devices|free|list,all|NUMBER]     display the partition table, available devices, free space, all found partitions, or a particular
        partition
  quit                                     exit program
  rescue START END                         rescue a lost partition near START and END
  resizepart NUMBER END                    resize partition NUMBER
  rm NUMBER                                delete partition NUMBER
  select DEVICE                            choose the device to edit
  disk_set FLAG STATE                      change the FLAG on selected device
  disk_toggle [FLAG]                       toggle the state of FLAG on selected device
  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                                  display the version number and copyright information of GNU Parted
(parted)              

Unité de travail

(parted) help unit                                                        
  unit UNIT                                set the default unit to UNIT

	UNIT is one of: s, B, kB, MB, GB, TB, compact, cyl, chs, %, kiB, MiB, GiB, TiB
(parted) unit s                                                           
(parted)   

Parmi les unités de travail, je choisis “s”. Cette unité permet de garantir que l'alignement des partitions pour optimiser les accès au disque.

Rien n'empêche de passer d'une unité à une autre pour avoir connaitre la taille de façon plus agréable.

Vidage du disque

Situation initiale

(parted) print free                                                       
Model: ATA SAMSUNG MZ7LN256 (scsi)
Disk /dev/sda: 500118192s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start  End         Size        Type     File system  Flags
        63s    2047s       1985s                Free Space
 1      2048s  500118191s  500116144s  primary

(parted)                          

On affiche les partitions du disque avec la commande “print free”

Suppression des partitions existantes

(parted) rm 1
(parted)         

La partition existante est supprimée. La colonne “number” permet de connaitre le numéro des partitions à supprimer.

Le disque est vide

(parted) print free                                                       
Model: ATA SAMSUNG MZ7LN256 (scsi)
Disk /dev/sda: 500118192s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start  End         Size        Type  File system  Flags
        63s    500118191s  500118129s        Free Space

(parted)          

Le disque est vide.

Création de la partition

Taille de la partition

On remarque que le disque commence au secteur 63. Cela est du à la réservation pour le boot de la machine. A noter que pour le boot de XEN, ce n'est pas suffisant et qu'il vaut mieux commencer au secteur 2048 soit 1 Mo. C'est probablement le cas pour un boot EFI.

Pour le secteur de fin, on prendra le dernier secteur du disque : 500118191

Création de la partition

(parted) mkpart                                                           
Partition type?  primary/extended? primary
File system type?  [ext2]?                                                
Start? 2048                                                               
End? 500118191                                                            
(parted)      
(parted) print free                                                       
Model: ATA SAMSUNG MZ7LN256 (scsi)
Disk /dev/sda: 500118192s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start  End         Size        Type     File system  Flags
        63s    2047s       1985s                Free Space
 1      2048s  500118191s  500116144s  primary

(parted)        

Vérification de l'alignement

(parted) align-check min 1                                                
1 aligned
(parted) align-check opt 1                                             
1 aligned
(parted)     

Le fait d'utiliser des secteurs pour les partitions permet d'être assuré que l'alignement est correct.

Contrôle

root@router:~# partprobe
root@router:~#

La commande partprobe permet de faire prendre en compte par le noyau la nouvelle table de partitions.

root@router:~# ll /dev/sda
brw-rw---- 1 root disk 8, 0 août  15 23:11 /dev/sda
root@router:~# ls -l /dev/sda*
brw-rw---- 1 root disk 8, 0 août  15 23:11 /dev/sda
brw-rw---- 1 root disk 8, 1 août  15 23:11 /dev/sda1
root@router:~# 

On retrouve la partition créée.

Partitionnement final

(parted) print free                                                       
Model: ATA INTEL SSDSC2KB48 (scsi)
Disk /dev/sdb: 480GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name  Flags
        17,4kB  1049kB  1031kB  Free Space
 1      1049kB  27,3MB  26,2MB  fat16              boot, esp
 2      27,3MB  445GB   445GB                      raid
 3      445GB   480GB   34,7GB                     raid

(parted)  
(parted) print free                                                       
Model: ATA INTEL SSDSC2KB48 (scsi)
Disk /dev/sda: 937703088s
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start       End         Size        File system  Name  Flags
        34s         2047s       2014s       Free Space
 1      2048s       53247s      51200s      fat16              boot, esp
 2      53248s      870000639s  869947392s                     raid
 3      870000640s  937703054s  67702415s                      raid

(parted)                                                                  

Problèmes rencontrés

Partition swap

Il est possible qu'une partition de swap présente sur le disque soit utilisée et bloque la modification du disque. Dans ce cas, la commande “swapoff -a” permet de la libérer.

Suite

parted.txt · Dernière modification : 2023/07/04 10:55 de 127.0.0.1