Mémo pour changer la taille d’une partition.
Suite à une restauration d’une image d’un disque dur d’une taille de 15Go (backup d’une carte microSD de mon Raspberry Pi 3) sur un disque du de 160Go, j’ai cherché à agrandir la partition rootfs au maximum permis par le disque dur.
Et le tout via SSH. Donc exit Gparted (j’aime pô sudo ) !
Rechercher la taille détectée par le système avec hdparm :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
root@pistorm:~# hdparm -I /dev/sda /dev/sda: ATA device, with non-removable media Model Number: WDC WD1600BEVT-22A23T0 Serial Number: WD-WXH1A40U7234 Firmware Revision: 01.01A01 Transport: Serial, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6 Standards: Supported: 8 7 6 5 Likely used: 8 Configuration: Logical max current cylinders 16383 16383 heads 16 16 sectors/track 63 63 -- CHS current addressable sectors: 16514064 LBA user addressable sectors: 268435455 LBA48 user addressable sectors: 312581808 Logical/Physical Sector size: 512 bytes device size with M = 1024*1024: 152627 MBytes device size with M = 1000*1000: 160041 MBytes (160 GB) cache/buffer size = 8192 KBytes Nominal Media Rotation Rate: 5400 Capabilities: LBA, IORDY(can be disabled) Queue depth: 32 Standby timer values: spec'd by Standard, with device specific minimum R/W multiple sector transfer: Max = 16 Current = 0 Advanced power management level: 96 Recommended acoustic management value: 128, current value: 254 DMA: *mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 udma6 Cycle time: min=120ns recommended=120ns PIO: pio0 pio1 pio2 pio3 pio4 Cycle time: no flow control=120ns IORDY flow control=120ns Commands/features: Enabled Supported: * SMART feature set Security Mode feature set * Power Management feature set * Write cache * Look-ahead * Host Protected Area feature set * WRITE_BUFFER command * READ_BUFFER command * NOP cmd * DOWNLOAD_MICROCODE * Advanced Power Management feature set SET_MAX security extension Automatic Acoustic Management feature set * 48-bit Address feature set * Device Configuration Overlay feature set * Mandatory FLUSH_CACHE * FLUSH_CACHE_EXT * SMART error logging * SMART self-test * General Purpose Logging feature set * WRITE_{DMA|MULTIPLE}_FUA_EXT * 64-bit World wide name * IDLE_IMMEDIATE with UNLOAD * {READ,WRITE}_DMA_EXT_GPL commands * Segmented DOWNLOAD_MICROCODE * Gen1 signaling speed (1.5Gb/s) * Gen2 signaling speed (3.0Gb/s) * Native Command Queueing (NCQ) * Host-initiated interface power management * Phy event counters * Idle-Unload when NCQ is active * NCQ priority information DMA Setup Auto-Activate optimization Device-initiated interface power management * Software settings preservation * SMART Command Transport (SCT) feature set * SCT Read/Write Long (AC1), obsolete * SCT Write Same (AC2) * SCT Features Control (AC4) * SCT Data Tables (AC5) unknown 206[12] (vendor specific) unknown 206[13] (vendor specific) unknown 206[14] (vendor specific) Security: Master password revision code = 65534 supported not enabled not locked not frozen not expired: security count supported: enhanced erase 58min for SECURITY ERASE UNIT. 58min for ENHANCED SECURITY ERASE UNIT. Logical Unit WWN Device Identifier: 50014ee6aad1de8e NAA : 5 IEEE OUI : 0014ee Unique ID : 6aad1de8e Checksum: correct |
La ligne suivante m’informe donc que je suis bien en présence de mon disque de 160Gb :
1 |
device size with M = 1000*1000: 160041 MBytes (160 GB) |
Ensuite, j’utilise parted :
1 |
command parted /dev/sda |
Un « print » pour avoir le numéro de la partition à agrandir :
1 2 3 4 5 6 7 8 9 10 |
(parted) print Model: ATA WDC WD1600BEVT-2 (scsi) Disk /dev/sda: 160GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 4194kB 48,0MB 43,8MB primary fat32 lba 2 50,3MB 15,6GB 15,5GB primary ext4 |
Puis un « resizepart 2 », pour agrandir la partition 2.
Je saisie ensuite la taille maximum.
Noter que j’ai déjà une partition de 50Mo, donc (160*1024-50)/1024 = 159.95Go
1 2 |
(parted) resizepart 2 End? [110GB]? 159.95GB |
On vérifie avec un « print » :
1 2 3 4 5 6 7 8 9 10 |
(parted) print Model: ATA WDC WD1600BEVT-2 (scsi) Disk /dev/sda: 160GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 4194kB 48,0MB 43,8MB primary fat32 lba 2 50,3MB 159GB 159GB primary ext4 |
Puis on quitte parted avec « quit »
Une petite vérification avec :
1 |
command e2fsck -f /dev/sda2 |
Résultat :
1 2 3 4 5 6 7 8 |
root@pistorm:~# e2fsck -f /dev/sda2 e2fsck 1.43.4 (31-Jan-2017) Passe 1 : vérification des i-noeuds, des blocs et des tailles Passe 2 : vérification de la structure des répertoires Passe 3 : vérification de la connectivité des répertoires Passe 4 : vérification des compteurs de référence Passe 5 : vérification de l'information du sommaire de groupe rootfs : 46527/6468160 fichiers (0.2% non contigus), 734254/26843180 blocs |
Puis on retaille effectivement la partition système avec :
1 |
command resize2fs /dev/sda2 |
Résultat :
1 2 3 4 |
root@pistorm:~# resize2fs /dev/sda2 resize2fs 1.43.4 (31-Jan-2017) En train de redimensionner le système de fichiers sur /dev/sda2 à 38806071 (4k) blocs. Le système de fichiers sur /dev/sda2 a maintenant une taille de 38806071 blocs (4k). |
Je monte la partition /dev/sda2 sur /media/externe et je lance Disk Free pour vérifier :
1 2 3 |
root@pistorm:~# df -h /media/externe/ Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur /dev/sda2 146G 1,3G 139G 1% /media/externe |
Terminé !
Sources :
Merci pour ton tuto , c’etait parfait pour un débutant 🙂