GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo cambiar el tamaño (extender) un sistema de archivos basado en particiones en Linux

Nota :Cambiar el tamaño de un sistema de archivos en una partición de disco puede ser peligroso y puede provocar la pérdida de datos. Asegúrese de haber realizado la copia de seguridad antes de seguir los pasos que se describen a continuación.

Advertencias

1. El sistema de archivos que desea cambiar de tamaño debe residir en la última partición del disco. No hay pérdida de datos en este caso, ya que recreamos la partición sin destruir los datos reales que contiene.
2. En caso de que no sea la última partición, debe destruir los datos y volver a crear una nueva partición con el tamaño deseado.

Ampliación del sistema de archivos basado en particiones

1. Primero, verifique el tamaño existente del sistema de archivos.

# # df -hP /data01
Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme1n1p1 1014M   33M  982M   4% /data01
# mount | grep -w data01
/dev/nvme1n1p1 on /data01 type xfs (rw,relatime,seclabel,attr2,inode64,noquota)

Como se verificó a partir de la salida del comando 'mount' anterior, el sistema de archivos en la partición es 'xfs'.

2. Anote los detalles de la partición y los detalles del disco usando el comando 'partid'. Asegúrese de proporcionar el nombre del disco y no el nombre de la partición en el siguiente comando:

# parted /dev/nvme1n1 u s p
Model: NVMe Device (nvme)
Disk /dev/nvme1n1: 4194304s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start  End       Size      Type     File system  Flags
 1      2048s  2099199s  2097152s  primary  xfs

En el resultado anterior, puede ver que el tamaño de la partición (2099199s) es menor que el tamaño del disco (4194304s). Así que hay espacio para aumentar la partición.

3. Primero desmonte el sistema de archivos.

# umount /data01

4. Elimine la partición que tiene el sistema de archivos '/data01'.

# parted /dev/nvme1n1p1 rm 1
Information: You may need to update /etc/fstab.

Verifique si la partición se elimina. Solo tenía una partición en el disco, por lo que no debería ver ninguna partición ahora.

# parted /dev/nvme1n1 u s p
Model: NVMe Device (nvme)
Disk /dev/nvme1n1: 4194304s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start  End  Size  Type  File system  Flags

5. Ahora, recreemos la partición con un tamaño mayor. Tenga en cuenta el sector de inicio desde el paso 2, es decir, 2048s. Aumentaremos la partición de 1 GB a 1,5 GB.

# parted -s /dev/nvme1n1 mkpart primary 2048s 1.5G

Vuelva a verificar el nuevo tamaño de la partición.

# parted /dev/nvme1n1 u s p
Model: NVMe Device (nvme)
Disk /dev/nvme1n1: 4194304s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start  End       Size      Type     File system  Flags
 1      2048s  2930687s  2928640s  primary

6. Necesitamos ejecutar fsck en la partición recién creada. También tenga en cuenta que no estamos creando ningún sistema de archivos aquí, ya que ya está presente en la partición. Como estamos usando el sistema de archivos XFS, use el comando 'xfs_repair' en lugar de 'e2fsck'.

# xfs_repair /dev/nvme1n1p1
Phase 1 - find and verify superblock...
bad primary superblock - bad magic number !!!

attempting to find secondary superblock...
.................................................................................................................................................................................................................................................found candidate secondary superblock...
verified secondary superblock...
writing modified primary superblock
sb realtime bitmap inode 18446744073709551615 (NULLFSINO) inconsistent with calculated value 65
resetting superblock realtime bitmap ino pointer to 65
sb realtime summary inode 18446744073709551615 (NULLFSINO) inconsistent with calculated value 66
resetting superblock realtime summary ino pointer to 66
Phase 2 - using internal log
        - zero log...
        - scan filesystem freespace and inode maps...
sb_icount 0, counted 64
sb_ifree 0, counted 61
sb_fdblocks 259568, counted 259560
        - found root inode chunk
Phase 3 - for each AG...
        - scan and clear agi unlinked lists...
        - process known inodes and perform inode discovery...
        - agno = 0
        - agno = 1
        - agno = 2
        - agno = 3
        - process newly discovered inodes...
Phase 4 - check for duplicate blocks...
        - setting up duplicate extent list...
        - check for inodes claiming duplicate blocks...
        - agno = 0
        - agno = 1
        - agno = 2
        - agno = 3
Phase 5 - rebuild AG headers and trees...
        - reset superblock...
Phase 6 - check inode connectivity...
        - resetting contents of realtime bitmap and summary inodes
        - traversing filesystem ...
        - traversal finished ...
        - moving disconnected inodes to lost+found ...
Phase 7 - verify and correct link counts...
Note - stripe unit (0) and width (0) were copied from a backup superblock.
Please reset with mount -o sunit=,swidth= if necessary
done

7. Extienda el sistema de archivos, usando el comando 'xfs_growfs'. Además, antes de ejecutar este comando, debemos montar el sistema de archivos; de lo contrario, obtendrá el siguiente error:

# xfs_growfs /dev/nvme1n1p1
xfs_growfs: /dev/nvme1n1p1 is not a mounted XFS filesystem
# mount /dev/nvme1n1p1 /data01
# xfs_growfs /dev/nvme1n1p1
meta-data=/dev/nvme1n1p1         isize=512    agcount=4, agsize=65536 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=262144, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 262144 to 366080

8. Verifique el nuevo tamaño del punto de montaje.

# df -hP /data01
Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme1n1p1  1.4G   33M  1.4G   3% /data01


Linux
  1. Cómo particionar un disco en Linux

  2. ¿Cómo cambiar el nombre de un archivo en Linux?

  3. Cómo crear y montar sistemas de archivos en Linux

  4. Cómo montar y desmontar un sistema de archivos en Linux

  5. Cómo extender una partición de intercambio LVM en Linux

Cómo vincular un archivo en Linux

Cómo agregar un nuevo dispositivo al sistema de archivos BTRFS en Linux

Cómo verificar/reparar el sistema de archivos de Linux en el arranque

Cómo comprobar y reparar un sistema de archivos en RHEL Linux

Cómo reparar errores del sistema de archivos en Linux Mint

Cómo instalar el servidor de intercambio de archivos Samba en el sistema Linux