Linux / Comando parted: consultar particiones, espacio libre y límites

parted es una herramienta GNU para consultar la tabla de particiones de un disco y crear, eliminar o cambiar el tamaño de las particiones. Es necesario distinguir estrictamente entre la operación de lectura de la estructura del disco y la operación de cambio real.

print muestra la tabla de particiones actual, y print free muestra incluso el espacio libre entre las particiones. Los comandos de cambio interactivo de parted pueden aplicarse al disco inmediatamente sin esperar un botón de guardar separado. resizepart consiste en cambiar los límites de la partición, y el redimensionamiento del sistema de archivos es un procedimiento aparte.

Sintaxis básica

parted [OPCIONES] [DISCO] [COMANDO]

La implementación instalada y las opciones pueden variar según la distribución. Verifique la descripción de man parted en el sistema actual.

Ejemplos de uso

Consulta de toda la estructura del disco

Se verifica la tabla de particiones por disco reconocida por el sistema.

sudo parted -l

Espacio vacío de un disco específico

Se examinan en modo de solo lectura el disco objetivo y los límites de las particiones.

sudo parted /dev/sdb unit MiB print free

Comparación con otras herramientas

Se verifican junto el modelo del dispositivo, la capacidad y el estado actual de montaje.

lsblk -o NAME,SIZE,MODEL,TYPE,MOUNTPOINTS

Distinguir los límites de la partición y el sistema de archivos

parted print muestra el tipo de tabla de particiones del disco y la posición de inicio y fin de las particiones. El comando de consulta no crea particiones ni formatea sistemas de archivos.

sudo parted /dev/sdb print

Estructura de la salida de ejemplo (los números varían según el dispositivo):

Model: ...
Disk /dev/sdb: 20.0GB
Partition Table: gpt
Number  Start   End     Size    File system  Name

Las operaciones de crear o cambiar el tamaño de una partición y el cambio de tamaño del sistema de archivos son independientes. Cambiar los límites en parted no extiende o reduce automáticamente de manera segura el sistema de archivos existente. Especialmente en operaciones de reducción, primero se debe verificar la copia de seguridad de datos, si se puede desmontar y el soporte de herramientas según el tipo de sistema de archivos.

Opciones y formatos principales

Opciones·Formato Descripción
-l Lista todas las tablas de particiones de todos los dispositivos.
-s Se ejecuta en modo script. Puede reducir los procedimientos de confirmación al cambiar.
unit UNIDAD Configura las unidades de visualización y entrada.
print free Muestra las particiones y el espacio libre.
resizepart NÚMERO FIN Cambiar los límites finales de una partición. El tamaño del sistema de archivos es independiente.

Precauciones al usar

mklabel reemplaza la tabla de particiones existente y rm elimina los elementos de la partición, así que no lo ejecute sin respaldo. -s puede reducir la protección interactiva durante la operación de cambio. Planifique juntos el cambio de límites y la secuencia de redimensionamiento del sistema de archivos, cifrado y capas LVM, y siga los procedimientos de mantenimiento en discos en uso.

Preguntas frecuentes

¿Se debe guardar el cambio antes de salir en parted?

Los comandos de cambio en parted interactivo generalmente se aplican inmediatamente al disco. Pensarlo como fdisk, donde se guarda al final con w, es peligroso.

Cambiar los límites en un nuevo archivo de imagen en lugar del disco real

Este ejemplo edita solo un nuevo archivo de laboratorio de 64 MiB de su propiedad y no crea dispositivos /dev, montajes ni sistemas de archivos reales. Realícelo en Linux con GNU Parted y truncate instalados. ext4 en mkpart es solo una sugerencia de tipo de partición y no significa que se haya ejecutado mkfs.ext4. -s reduce las verificaciones, así que mantenga como destino la imagen nueva del laboratorio y no sustituya su ruta por un disco en uso.

(
set -eu
labdir=$(mktemp -d)
image="$labdir/disk.img"
truncate -s 64M "$image"
parted --script "$image" mklabel gpt
parted --script "$image" mkpart lab ext4 1MiB 33MiB
parted "$image" unit MiB print free
parted --script "$image" resizepart 1 49MiB
parted "$image" unit MiB print free
printf 'Lab image: %s\n' "$image"
)

La primera salida muestra la partición 1 en GPT con un inicio de aproximadamente 1 MiB y un final de aproximadamente 33 MiB, y después de resizepart, el final se incrementa aproximadamente a 49 MiB. Puede haber diferencias en la unidad mostrada y el redondeo. Como no se creó un sistema de archivos, esta práctica solo verifica el cambio de límites. En un disco que tenga un sistema de archivos real, se debe revisar por separado el soporte de expansión y reducción por capas y el orden correspondiente. Al limpiar, solo se elimina disk.img del directorio temporal mostrado al final, y no se aplica al dispositivo /dev real.

Documentación oficial

Puede comprobar el funcionamiento exacto de las opciones y las diferencias según la implementación en la documentación oficial relacionada con parted.