Augmenter la taille de la partition sur laquelle Ubuntu est installé?

47

J'ai Ubuntu installé sur un lecteur. Le problème est qu'il est à court d'espace disque. Ceci est installé sur vmware. J'ai étendu le lecteur virtuel et démarré dans Ubuntu. Mais quand j'ai ouvert gparted (sudo gparted), l'option déplacer / redimensionner n'est pas disponible. C'est la partition sur laquelle Ubuntu est installée, mais je dois la redimensionner. Des idées? Je suis à l'aise avec la ligne de commande

    
posée user51447 27.03.2012 - 09:41
la source

5 réponses

15

Vous y êtes presque.
Vous ne pouvez pas redimensionner la partition à l'aide de GParted pendant l'exécution d'Ubuntu.
Vous devrez joindre les ISO de GParted en tant que CD à la machine virtuelle et redémarrer la machine pour que le GParted soit chargé à la place d'Ubuntu (je pense que vous pouvez démarrer à partir du CD virtuel en appuyant sur F12 immédiatement après le démarrage de la machine). br> Une fois que vous avez démarré dans GParted, l'option de déplacement / redimensionnement sera activée car Ubuntu n'est pas en cours d'exécution.

    
réponse donnée yossile 27.03.2012 - 10:03
la source
112

En fait, vous pouvez agrandir le système de fichiers racine pendant que Ubuntu est en cours d’exécution (j’ai récemment appris cela ici ) - cela semble incroyable, mais c'est vrai:)

Voici la liste des étapes pour un scénario simple où vous avez deux partitions, /dev/sda1 est une partition ext4 à partir de laquelle le système d’exploitation est démarré et /dev/sdb2 est swap. Pour cet exercice, nous souhaitons supprimer la partition de swap et étendre /dev/sda1 à l’ensemble du disque.

  1. Comme toujours, assurez-vous d’avoir une sauvegarde de vos données - puisque nous allons modifier la table de partition, vous risquez de perdre toutes vos données si vous faites une faute de frappe, par exemple.

  2. Exécuter sudo fdisk /dev/sda

    • utilisez p pour répertorier les partitions. Notez le cylindre de départ de /dev/sda1
    • utilisez d pour supprimer d'abord la partition de swap ( 2 ), puis la partition /dev/sda1 . Ceci est très effrayant mais est réellement inoffensif car les données ne sont pas écrites sur le disque tant que vous n’avez pas écrit les modifications sur le disque.
    • utilisez n pour créer une nouvelle partition principale. Assurez-vous que son cylindre de départ est exactement le même que l'ancien /dev/sda1 avait. Pour le cylindre d'extrémité, le choix par défaut est de faire en sorte que la partition couvre tout le disque.
    • utiliser a pour basculer l'indicateur de démarrage sur le nouveau /dev/sda1
    • examinez vos modifications, respirez profondément et utilisez w pour écrire la nouvelle table de partitions sur le disque. Vous recevrez un message indiquant que le noyau n'a pas pu relire la table de partition car le périphérique est occupé, mais ça va.
  3. Redémarrez avec sudo reboot . Lorsque le système démarre, vous aurez un plus petit système de fichiers dans une plus grande partition .

  4. La prochaine commande magique est resize2fs . Exécutez sudo resize2fs /dev/sda1 - ce formulaire affichera par défaut le système de fichiers pour prendre tout l'espace disponible sur la partition.

C'est ça, nous venons de redimensionner une partition sur laquelle Ubuntu est installé, sans démarrer à partir d'un disque externe.

    
réponse donnée Sergey 27.03.2012 - 11:00
la source
10

Après avoir étendu le volume dans vmWare ESXi (shutdown vm, backup / export vm, supprimez tous les instantanés, puis augmentez le nombre de disques, effectuez à nouveau un instantané de vm avant de suivre les étapes suivantes afin de pouvoir rétablir les erreurs). / p>

L'exemple suivant étend le volume sur la partition racine sur un système qui utilise déjà LVM.

  1. SSH sur le système, basculez vers root et exécutez cfdisk
     # cfdisk

  2. Après avoir quitté cfdisk

     # fdisk -l /dev/sda 
     Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectors
     Units: sectors of 1 * 512 = 512 bytes
     Sector size (logical/physical): 512 bytes / 512 bytes
     I/O size (minimum/optimal): 512 bytes / 512 bytes
     Disklabel type: dos
     Disk identifier: 0xc8b647ff
    
     Device     Boot    Start      End  Sectors  Size Id Type
     /dev/sda1  *        2048   999423   997376  487M 83 Linux
     /dev/sda2        1001470 16775167 15773698  7.5G  5 Extended
     /dev/sda3       16775168 41943039 25167872   12G 8e Linux LVM (***** See new partition /dev/sda3*****)
     /dev/sda5        1001472 16775167 15773696  7.5G 8e Linux LVM
    
  3. Redémarrez le système avant la prochaine étape (sinon vous pourriez obtenir Device /dev/sda3 not found (or ignored by filtering) )

     # shutdown now -r
    
  4. Initialiser le nouveau volume

     # pvcreate /dev/sda3
       Physical volume "/dev/sda3" successfully created
    
  5. Obtenez le nom du volume à étendre

     # vgdisplay
       --- Volume group ---
       VG Name               linuxetc1-vg (***** this is vg i'm extending*****)
       System ID             
       Format                lvm2
       Metadata Areas        1
       Metadata Sequence No  3
       VG Access             read/write
       VG Status             resizable
       MAX LV                0
       Cur LV                2
       Open LV               2
       Max PV                0
       Cur PV                1
       Act PV                1
       VG Size               7.52 GiB
       PE Size               4.00 MiB
       Total PE              1925
       Alloc PE / Size       1925 / 7.52 GiB
       Free  PE / Size       0 / 0  
       ...
    
  6. Etendre le groupe de volumes

     # vgextend linuxetc1-vg /dev/sda3
       Volume group "linuxetc1-vg" successfully extended
    
  7. Étendre la racine

     # lvextend -l+100%FREE /dev/linuxetc1-vg/root
       Size of logical volume linuxetc1-vg/root changed from 6.52 GiB (1669 extents) to 18.52 GiB (4741 extents).
       Logical volume root successfully resized.
    
    
     Or if you only wanted to give 5 more GB to root
     # lvextend -L +5g /dev/linuxetc1-vg/root
    
  8. Récupère le nom du système de fichiers pour l’étape suivante

     # df -h
     Filesystem                      Size  Used Avail Use% Mounted on
     udev                            477M     0  477M   0% /dev
     tmpfs                           100M  4.6M   95M   5% /run
     /dev/mapper/linuxetc1--vg-root  6.3G  2.5G  3.5G  42% /            (***** this line*****)
     tmpfs                           497M     0  497M   0% /dev/shm
     tmpfs                           5.0M     0  5.0M   0% /run/lock
     tmpfs                           497M     0  497M   0% /sys/fs/cgroup
     /dev/sda1                       472M  105M  343M  24% /boot
     tmpfs                           100M     0  100M   0% /run/user/1000
    
  9. Etendre le système de fichiers

     # resize2fs /dev/mapper/linuxetc1--vg-root
     resize2fs 1.42.13 (17-May-2015)
     Filesystem at /dev/mapper/linuxetc1--vg-root is mounted on /; on-line resizing required
     old_desc_blocks = 1, new_desc_blocks = 2
     The filesystem on /dev/mapper/linuxetc1--vg-root is now 4854784 (4k) blocks long.
    
  10. Voir la taille accrue

     # df -h
     Filesystem                      Size  Used Avail Use% Mounted on
     udev                            477M     0  477M   0% /dev
     tmpfs                           100M  4.6M   95M   5% /run
     /dev/mapper/linuxetc1--vg-root   19G  2.5G   15G  15% /         (***** this line*****)
     tmpfs                           497M     0  497M   0% /dev/shm
     tmpfs                           5.0M     0  5.0M   0% /run/lock
     tmpfs                           497M     0  497M   0% /sys/fs/cgroup
     /dev/sda1                       472M  105M  343M  24% /boot
     tmpfs                           100M     0  100M   0% /run/user/1000
    

Articles:
lien
lien

    
réponse donnée jtlindsey 27.07.2017 - 18:25
la source
0

J'ai réussi à élargir ma partition Ext4 principale en utilisant la méthodologie décrite ici .

Quelques remarques tirées de mon expérience personnelle:

  • L'exemple de lien est destiné à réduire la partition, donc l'ordre est resize2fs d'abord, puis fdisk. Lors de l'agrandissement de la partition (comme dans mon cas), la commande devrait d'abord être fdisk, redémarrer puis redimensionner2fs. De même, lors de l’utilisation de fdisk, les partitions primaires ainsi que les partitions étendues doivent être supprimées et redéfinies.
  • J'ai démarré l'ubonto à partir d'un autre lecteur, puis j'ai travaillé sur ce lecteur qui était en réalité un miroir (en utilisant dd) de l'ancien lecteur. Il a été initialisé à l'aide de GParted
  • La version actuelle de resize2fs (j'utilise ubontu 12.04LTS) supporte ext4 - pas besoin de faire les actions décrites dans le lien pour le changer ext2.
réponse donnée Elchanan 30.03.2013 - 23:06
la source
0

La réponse de Sergey était excellente. Si vous ne disposez pas de l'espace vide directement dans l'appareil suivant, vous devrez cependant supprimer d'autres appareils. Par exemple:

Device     Boot    Start       End  Sectors Size Id Type
/dev/sda1  *        2048  33556477 33554430  16G 83 Linux
/dev/sda2       33556478  41940991  8384514   4G  5 Extended
/dev/sda3       41940992 125829119 83888128  40G 83 Linux
/dev/sda5       33556480  41940991  8384512   4G 82 Linux swap / Solaris

Dans le cas ci-dessus, si vous souhaitez fusionner /dev/sda3 avec /dev/sda1 , vous devrez supprimer /dev/sda1 , /dev/sda2 et /dev/sda3 (avec la commande d ), puis rajouter /dev/sda2 et actualise son type (avec les commandes n et t ).

    
réponse donnée jaycode 07.05.2017 - 12:10
la source

Lire d'autres questions sur les étiquettes