En cualquier sistema Linux, uno de los directorios que seguramente aumentará de tamaño tiene que ser el /home
directorio. Esto se debe a que los directorios de cuentas del sistema (usuarios) residirán en /home excepto la cuenta raíz: aquí los usuarios almacenarán continuamente documentos y otros archivos.
Otro directorio importante con el mismo comportamiento es /var
, contiene archivos de registro cuyo tamaño aumentará gradualmente a medida que el sistema continúe funcionando, como archivos de registro, archivos web, archivos de cola de impresión, etc.
Cuando estos directorios se llenan, esto puede causar problemas críticos en el sistema de archivos raíz que resultan en fallas en el arranque del sistema u otros problemas relacionados. Sin embargo, a veces solo puede notar esto después de instalar su sistema y configurar todos los directorios en el sistema de archivos raíz / partición.
Lectura sugerida:Explicación de la estructura de directorios de Linux y las rutas de archivos importantes
En esta guía, mostraremos cómo mover el directorio de inicio a una partición dedicada posiblemente en un nuevo disco de almacenamiento en Linux.
Antes de continuar, explicaremos brevemente cómo agregar un nuevo disco duro a un servidor Linux existente.
Nota: Si ya tiene una partición lista para la operación, pase a la sección que explica los pasos para mover /home
directorio en una partición propia a continuación.
Asumiremos que ha conectado el nuevo disco al sistema. En un disco duro, el número de particiones que se crearán, así como la tabla de particiones, normalmente se determina por el tipo de etiqueta del disco y los primeros bytes de espacio definirán la MBR (Registro de arranque principal) que almacena la tabla de particiones y el cargador de arranque (para discos de arranque).
Aunque hay muchos tipos de etiquetas, Linux solo acepta dos: MSDOS MBR (516 bytes de tamaño) o GPT (Tabla de particiones GUID) MBR.
Supongamos también que el nuevo disco duro nuevo (/dev/sdb de tamaño 270 GB utilizado para el propósito de esta guía, probablemente necesite una mayor capacidad en un servidor para una gran base de usuarios.
Primero necesitas establecer el tipo de etiqueta del disco utilizando fdisk o partió; Hemos usado GPT nombre de etiqueta en este ejemplo.
# parted / dev / sdb mklabel gpt.
Nota: fdisk solo es compatible con MSDOS MBR por ahora y partió admite ambas etiquetas.
Ahora crea la primera partición (/dev/sdb1) con tamaño 106 GB. Nosotros hemos reservado 1024 MB de espacio para el MBR.
# parted -a cilindro / dev / sdb mkpart primario 1074MB 107GB.
Explicando el comando anterior:
Ahora verifique el espacio libre en el disco de la siguiente manera.
# parted / dev / sdb imprimir gratis.
Crearemos otra partición (/dev/sdb2) con tamaño 154 GB.
# parted -un cilindro / dev / sdb mkpart primario 115GB 268GB.
A continuación, configuremos el tipo de sistema de archivos en cada partición.
# mkfs.ext4 / dev / sdb1. # mkfs.xfs / dev / sdb2.
Para ver todos los dispositivos de almacenamiento conectados al sistema, escriba.
# parted -l.
Ahora hemos agregado el nuevo disco y creado la partición necesaria; ahora es el momento de mover el casa carpeta en una de las particiones. Para utilizar un sistema de archivos, debe montarse en el sistema de archivos raíz en un punto de montaje: el directorio de destino, como /home.
Primero enumere el uso del sistema de archivos usando comando df en el sistema.
# df -l.
Empezaremos creando un nuevo directorio. /srv/home donde podemos montar /dev/sdb1 Siendo por el momento.
# mkdir -p / srv / home. # mount / dev / sdb1 / srv / home
Luego mueva el contenido de /home en /srv/home (por lo que prácticamente se almacenarán en /dev/sdb1) utilizando comando rsync o comando cp.
# rsync -av / home / * / srv / home / O. # cp -aR / home / * / srv / home /
Después de eso, encontraremos el diferencia entre los dos directorios utilizando la herramienta diff, si todo va bien, continúe con el siguiente paso.
# diff -r / inicio / srv / inicio.
Luego, elimine todo el contenido antiguo en el /home como sigue.
# rm -rf / inicio / *
Siguiente desmontar /srv/home.
# umount / srv / home.
Finalmente, tenemos que montar el sistema de archivos. /dev/sdb1 para /home por el momento.
# montar / dev / sdb1 / home. # ls -l / inicio.
Los cambios anteriores durarán solo para el inicio actual, agregue la línea a continuación en el /etc/fstab para que los cambios sean permanentes.
Use el siguiente comando para obtener la partición UUID.
# blkid / dev / sdb1 / dev / sdb1: UUID = "e087e709-20f9-42a4-a4dc-d74544c490a6" TYPE = "ext4" PARTLABEL = "principal" PARTUUID = "52d77e5c-0b20-4a68-ada4-881851b2ca99"
Una vez que conozca la partición UUID, abierto /etc/fstab archivo agregue la siguiente línea.
UUID = e087e709-20f9-42a4-a4dc-d74544c490a6 / home ext4 por defecto 0 2.
Explicando el campo en la línea de arriba:
Guarde el archivo y reinicie el sistema.
Puede ejecutar el siguiente comando para ver que /home El directorio se ha movido con éxito a una partición dedicada.
# df -hl.
¡Eso es todo por ahora! Para comprender más sobre el sistema de archivos de Linux, lea estas guías relacionadas con la administración del sistema de archivos en Linux.
En esta guía, le explicamos cómo mover el /home directorio en una partición dedicada en Linux. Puede compartir sus pensamientos sobre este artículo a través del formulario de comentarios a continuación.