Ampliar un sistema de archivos Linux después de cambiar el tamaño de un volumen - Amazon Elastic Compute Cloud

Ampliar un sistema de archivos Linux después de cambiar el tamaño de un volumen

nota

En el siguiente tema, obtendrá información sobre el proceso de ampliación de los sistemas de archivos XFS y Ext4 para Linux. Para obtener información sobre otros sistemas de archivos, consulte las instrucciones en su documentación.

Después de aumentar el tamaño de un volumen de EBS, debe utilizar comandos específicos del sistema de archivos para ampliar y renovar el tamaño del sistema de archivos. Puede hacerlo en cuanto el volumen pase al estado optimizing.

Para ampliar un sistema de archivos en Linux, debe hacer lo siguiente:

  1. Extienda la partición, en caso de que su volumen tenga una.

  2. Amplíe el sistema de archivos.

Antes de empezar

  • Cree una instantánea del volumen por si más adelante es necesario revertir los cambios. Para obtener más información, consulte Crear instantáneas de Amazon EBS .

  • Confirme que la modificación del volumen se realizó correctamente y que se encuentra en el estado optimizing o completed. Para obtener más información, consulte Monitorear el progreso de las modificaciones del volumen .

  • Asegúrese de que el volumen esté adjunto a la instancia y de que esté formateado y montado. Para obtener más información, consulte Dar formato y montar un volumen asociado .

  • Si utiliza volúmenes lógicos en el volumen de Amazon EBS, debe usar el administrador de volúmenes lógicos (LVM) para extender dicho volumen. Para obtener instrucciones sobre cómo hacerlo, consulte la sección Extend the logical volume (Ampliar el volumen lógico) en el artículo How do I create an LVM logical volume on an entire EBS volume? (¿Cómo puedo crear un volumen lógico del LVM en un volumen completo de EBS?). AWS Centro de conocimientos.

Amplíe el sistema de archivos de los volúmenes de EBS.

Utilice el siguiente procedimiento para ampliar el sistema de archivos de un volumen redimensionado. Tenga en cuenta que los nombres de los dispositivos y las particiones difieren para las instancias de Xen y las instancias de Nitro. Para determinar si la instancia está basada en Xen o en Nitro, utilice el siguiente comando:

[ec2-user ~]$ aws ec2 describe-instance-types --instance-type instance_type --query "InstanceTypes[].Hypervisor"

Para ampliar el sistema de archivos de los volúmenes de EBS

  1. Conéctese a la instancia.

  2. Cambie el tamaño de la partición, en caso de ser necesario. Para ello:

    1. Compruebe si el volumen tiene una partición. Use el comando lsblk.

      Nitro instance example

      En el siguiente resultado de ejemplo, el volumen raíz (nvme0n1) tiene dos particiones (nvme0n1p1 y nvme0n1p128), mientras que el volumen adicional (nvme1n1) no tiene particiones.

      [ec2-user ~]$ sudo lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme1n1 259:0 0 30G 0 disk /data nvme0n1 259:1 0 16G 0 disk └─nvme0n1p1 259:2 0 8G 0 part / └─nvme0n1p128 259:3 0 1M 0 part
      Xen instance example

      En el siguiente resultado de ejemplo, el volumen raíz (xvda) tiene una partición (xvda1), mientras que el volumen adicional (xvdf) no tiene particiones.

      [ec2-user ~]$ sudo lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 16G 0 disk └─xvda1 202:1 0 8G 0 part / xvdf 202:80 0 24G 0 disk

      Si el volumen tiene una partición, continúe con el siguiente paso. Si el volumen no tiene particiones, vaya al paso 3.

      Consejo para la solución de problemas

      Si no ve el volumen en la salida del comando, asegúrese de que el volumen esté adjunto a la instancia, y que esté formateado y montado.

    2. Compruebe si es necesario ampliar la partición. En la salida del comando lsblk del paso anterior, compare el tamaño de la partición y el tamaño del volumen.

      Si el tamaño de la partición es menor que el tamaño del volumen, continúe con el siguiente paso. Si el tamaño de la partición es igual al tamaño del volumen, no se puede ampliar la partición.

      Consejo para la solución de problemas

      Si el volumen sigue reflejando el tamaño original, confirme que la modificación del volumen se realizó correctamente.

    3. Amplíe la partición. Utilice el comando growpart y especifique la partición que se ampliará.

      Nitro instance example

      Por ejemplo, para ampliar una partición denominada nvme0n1p1, utilice el siguiente comando.

      importante

      Observe el espacio entre el nombre del dispositivo (nvme0n1) y el número de partición (1).

      [ec2-user ~]$ sudo growpart /dev/nvme0n1 1
      Xen instance example

      Por ejemplo, para ampliar una partición denominada xvda1, utilice el siguiente comando.

      importante

      Observe el espacio entre el nombre del dispositivo (xvda) y el número de partición (1).

      [ec2-user ~]$ sudo growpart /dev/xvda 1
      Consejos para la solución de problemas
      • mkdir: cannot create directory ‘/tmp/growpart.31171’: No space left on device FAILED: failed to make temp dir: indica que no hay suficiente espacio libre en disco en el volumen para que growpart cree el directorio temporal que necesita para cambiar el tamaño. Libere espacio en el disco e inténtelo de nuevo.

      • must supply partition-number: indica que especificó una partición incorrecta. Utilice el comando lsblk para confirmar el nombre de la partición y asegúrese de escribir un espacio entre el nombre del dispositivo y el número de partición.

      • NOCHANGE: partition 1 is size 16773087. it cannot be grown: indica que la partición ya amplía todo el volumen y no se puede ampliar. Confirme que la modificación del volumen se haya realizado correctamente.

    4. Compruebe que la partición se haya ampliado. Use el comando lsblk. El tamaño de la partición ahora debe ser igual al tamaño del volumen.

      Nitro instance example

      En el siguiente resultado de ejemplo se muestra que el volumen (nvme0n1) y la partición (nvme0n1p1) tienen el mismo tamaño (16 GB).

      [ec2-user ~]$ sudo lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT nvme1n1 259:0 0 30G 0 disk /data nvme0n1 259:1 0 16G 0 disk └─nvme0n1p1 259:2 0 16G 0 part / └─nvme0n1p128 259:3 0 1M 0 part
      Xen instance example

      En el siguiente resultado de ejemplo se muestra que el volumen (xvda) y la partición (xvda1) tienen el mismo tamaño (16 GB).

      [ec2-user ~]$ sudo lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 16G 0 disk └─xvda1 202:1 0 16G 0 part / xvdf 202:80 0 24G 0 disk
  3. Amplíe el sistema de archivos.

    1. Obtenga el nombre, el tamaño, el tipo y el punto de montaje del sistema de archivos que necesita ampliar. Use el comando df -hT.

      Nitro instance example

      En el siguiente resultado de ejemplo se muestra que el sistema de archivos /dev/nvme0n1p1 tiene un tamaño de 8 GB, su tipo es xfs y su punto de montaje es /.

      [ec2-user ~]$ df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/nvme0n1p1 xfs 8.0G 1.6G 6.5G 20% / /dev/nvme1n1 xfs 8.0G 33M 8.0G 1% /data ...
      Xen instance example

      En el siguiente resultado de ejemplo se muestra que el sistema de archivos /dev/xvda1 tiene un tamaño de 8 GB, su tipo es ext4 y su punto de montaje es /.

      [ec2-user ~]$ df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/xvda1 ext4 8.0G 1.9G 6.2G 24% / /dev/xvdf1 xfs 24.0G 45M 8.0G 1% /data ...
    2. Los comandos para ampliar el sistema de archivos varían según el tipo de sistema de archivos. Elija el siguiente comando correcto según el tipo de sistema de archivos que anotó en el paso anterior.

      • [Sistema de archivos XFS] Utilice el comando xfs_growfs y especifique el punto de montaje del sistema de archivos que anotó en el paso anterior.

        Nitro and Xen instance example

        Por ejemplo, para ampliar un sistema de archivos montado en /, utilice el siguiente comando.

        [ec2-user ~]$ sudo xfs_growfs -d /
        Consejos para la solución de problemas
        • xfs_growfs: /data is not a mounted XFS filesystem: indica que especificó el punto de montaje incorrecto o que el sistema de archivos no es XFS. Para verificar el punto de montaje y el tipo de sistema de archivos, utilice el comando df -hT.

        • data size unchanged, skipping: indica que el sistema de archivos ya amplía todo el volumen. Si el volumen no tiene particiones, confirme que la modificación del volumen se haya realizado correctamente. Si el volumen tiene particiones, asegúrese de que la partición se haya ampliado como se describe en el paso 2.

      • [Sistema de archivos Ext4] Utilice el comando resize2fs y especifique el nombre del sistema de archivos que anotó en el paso anterior.

        Nitro instance example

        Por ejemplo, para ampliar un sistema de archivos montado denominado /dev/nvme0n1p1, utilice el siguiente comando.

        [ec2-user ~]$ sudo resize2fs /dev/nvme0n1p1
        Xen instance example

        Por ejemplo, para ampliar un sistema de archivos montado denominado /dev/xvda1, utilice el siguiente comando.

        [ec2-user ~]$ sudo resize2fs /dev/xvda1
        Consejos para la solución de problemas
        • resize2fs: Bad magic number in super-block while trying to open /dev/xvda1: indica que el sistema de archivos no es Ext4. Para verificar el tipo de sistema de archivos, utilice el comando df -hT.

        • open: No such file or directory while opening /dev/xvdb1: indica que especificó una partición incorrecta. Para verificar la partición, utilice el comando df -hT.

        • The filesystem is already 3932160 blocks long. Nothing to do!: indica que el sistema de archivos ya amplía todo el volumen. Si el volumen no tiene particiones, confirme que la modificación del volumen se haya realizado correctamente. Si el volumen tiene particiones, asegúrese de que la partición se haya extendido, como se describe en el paso 2.

      • [Otro sistema de archivos] Consulte la documentación del sistema de archivos para obtener instrucciones.

    3. Compruebe que el sistema de archivos se haya ampliado. Utilice el comando df -hT y confirme que el tamaño del sistema de archivos sea igual al tamaño del volumen.