Com moure el directori d'inici a una partició o disc nova a Linux


En qualsevol sistema Linux, un dels directoris que segurament augmentarà de mida ha de ser el directori /home. Això es deu al fet que els directoris dels comptes del sistema (usuaris) residiran a /home excepte al compte root; aquí els usuaris emmagatzemaran contínuament documents i altres fitxers.

Un altre directori important amb el mateix comportament és /var, conté fitxers de registre la mida dels quals augmentarà gradualment a mesura que el sistema segueixi funcionant, com ara fitxers de registre, fitxers web, fitxers de col·locació d'impressió, etc.

Quan aquests directoris s'omplen, això pot causar problemes crítics al sistema de fitxers arrel que es tradueixin en un error d'arrencada del sistema o altres problemes relacionats. Tanmateix, de vegades només ho podeu notar després d'instal·lar el vostre sistema i configurar tots els directoris del sistema/partició de fitxers arrel.

En aquesta guia, mostrarem com moure el directori d'inici a una partició dedicada possiblement en un nou disc d'emmagatzematge a Linux.

Instal·lació i partició d'un nou disc dur a Linux

Abans de continuar, explicarem breument com afegir un nou disc dur a un servidor Linux existent.

Nota: Si ja teniu una partició preparada per a l'operació, aneu a la secció que explica els passos per moure el directori /home en una partició pròpia a continuació.

Suposem que heu connectat el disc nou al sistema. En un disc dur, el nombre de particions a crear així com la taula de particions normalment es determina pel tipus d'etiqueta del disc i els primers bytes d'espai definiran el MBR (Registre d'arrencada mestre) que emmagatzema la taula de particions així com el carregador d'arrencada (per a discs d'arrencada).

Encara que hi ha molts tipus d'etiquetes, Linux només n'accepta dos: MSDOS MBR (516 bytes de mida) o GPT (GUID Partition Table) MBR.

Suposem també que el nou disc dur nou (/dev/sdb de mida 270 GB utilitzat per a aquesta guia, probablement necessiteu una capacitat més gran en un servidor per a una gran base d'usuaris.

Primer cal separar-se; hem utilitzat el nom de l'etiqueta GPT en aquest exemple.

# parted /dev/sdb mklabel gpt

Nota: parted admet ambdues etiquetes.

Ara creeu la primera partició (/dev/sdb1) amb una mida de 106 GB. Hem reservat 1024 MB d'espai per a l'MBR.

# parted -a cylinder /dev/sdb mkpart primary 1074MB 107GB

Explicant l'ordre anterior:

  • a: opció per especificar l'alineació de la partició.
  • mkpart: subordre per crear la partició.
  • primary: estableix el tipus de partició com a principal al disc dur (altres valors són lògics o estesos).
  • 1074 MB: inici de la partició.
  • 107 GB: final de la partició.

Ara comproveu l'espai lliure al disc de la següent manera.

# parted /dev/sdb print free

Crearem una altra partició (/dev/sdb2) amb una mida de 154 GB.

# parted -a cylinder /dev/sdb mkpart primary 115GB 268GB

A continuació, establim el tipus de sistema de fitxers a cada partició.

# mkfs.ext4 /dev/sdb1
# mkfs.xfs /dev/sdb2

Per veure tots els dispositius d'emmagatzematge connectats al sistema, escriviu.

# parted -l

Ara hem afegit el nou disc i hem creat la partició necessària; ara és el moment de moure la carpeta d'inici a una de les particions. Per utilitzar un sistema de fitxers, s'ha de muntar al sistema de fitxers arrel en un punt de muntatge: el directori de destinació com ara /home.

Primer enumereu l'ús del sistema de fitxers mitjançant l'ordre df al sistema.

# df -l

Començarem creant un nou directori /srv/home on puguem muntar /dev/sdb1 de moment.

# mkdir -p /srv/home
# mount /dev/sdb1 /srv/home 

A continuació, moveu el contingut de /home a /srv/home (de manera que pràcticament s'emmagatzemaran a /dev/sdb1) mitjançant l'ordre cp.

# rsync -av /home/* /srv/home/
OR
# cp -aR /home/* /srv/home/

Després d'això, trobarem l'eina de diferència, si tot està bé, continueu amb el pas següent.

# diff -r /home /srv/home

Després, suprimiu tot el contingut antic de /home de la següent manera.

# rm -rf /home/*

A continuació, desmunteu /srv/home.

# umount /srv/home

Finalment, hem de muntar el sistema de fitxers /dev/sdb1 a /home durant el temps mitjà.

# mount /dev/sdb1 /home
# ls -l /home

Els canvis anteriors només duraran per a l'arrencada actual, afegiu la línia de sota a /etc/fstab per fer que els canvis siguin permanents.

Utilitzeu l'ordre següent per obtenir l'UUID de la partició.

# blkid /dev/sdb1

/dev/sdb1: UUID="e087e709-20f9-42a4-a4dc-d74544c490a6" TYPE="ext4" PARTLABEL="primary" PARTUUID="52d77e5c-0b20-4a68-ada4-881851b2ca99"

Un cop conegueu l'UUID de la partició, obriu el fitxer /etc/fstab i afegiu la línia següent.

UUID=e087e709-20f9-42a4-a4dc-d74544c490a6   /home   ext4   defaults   0   2

Explicant el camp de la línia anterior:

  • UUID: especifica el dispositiu de bloqueig, també podeu utilitzar el fitxer del dispositiu /dev/sdb1.
  • /home: aquest és el punt de muntatge.
  • etx4: descriu el tipus de sistema de fitxers al dispositiu/partició.
  • Valors per defecte: opcions de muntatge (aquí aquest valor significa rw, suid, dev, exec, auto, nouser i async).
  • 0: utilitzat per l'eina d'abocament, 0 significa que no s'ha d'abocar si el sistema de fitxers no està present.
  • 2: utilitzat per l'eina fsck per descobrir l'ordre de comprovació del sistema de fitxers, aquest valor significa que comproveu aquest dispositiu després del sistema de fitxers arrel.

Deseu el fitxer i reinicieu el sistema.

Podeu executar l'ordre següent per veure que el directori /home s'ha mogut correctament a una partició dedicada.

# df -hl

Això és per ara! Per entendre més sobre el sistema de fitxers Linux, llegiu aquestes guies relacionades amb la gestió del sistema de fitxers a Linux.

  1. Com esborrar comptes d'usuari amb el directori d'inici a Linux
  2. Què és Ext2, Ext3 i Ext4 i com crear i convertir sistemes de fitxers Linux
  3. 7 maneres de determinar el tipus de sistema de fitxers a Linux (Ext2, Ext3 o Ext4)
  4. Com muntar un directori o un sistema de fitxers Linux remot mitjançant SSHFS sobre SSH

En aquesta guia, us vam explicar com moure el directori /home a una partició dedicada a Linux. Podeu compartir qualsevol reflexió sobre aquest article mitjançant el formulari de comentaris a continuació.