Kā pārvietot mājas direktoriju uz jaunu nodalījumu vai disku Linux


Jebkurā Linux sistēmā vienam no direktorijiem, kuru izmērs noteikti pieaugs, jābūt direktorijai /home . Tas ir tāpēc, ka sistēmas kontu (lietotāju) direktoriji atradīsies/home, izņemot root kontu - šeit lietotāji nepārtraukti glabās dokumentus un citus failus.

Vēl viens svarīgs direktorijs ar tādu pašu uzvedību ir /var , tajā ir žurnālfaili, kuru lielums pakāpeniski palielināsies, sistēmai turpinot darboties, piemēram, žurnālfaili, tīmekļa faili, spoles faili utt.

Kad šie direktoriji tiek aizpildīti, tas var izraisīt kritiskas problēmas sakņu failu sistēmā, kas var izraisīt sistēmas sāknēšanas kļūmi vai citas saistītās problēmas. Tomēr dažreiz to var pamanīt tikai pēc sistēmas instalēšanas un visu direktoriju konfigurēšanas saknes failu sistēmā/nodalījumā.

Šajā rokasgrāmatā mēs parādīsim, kā mājas direktoriju pārvietot uz īpašu nodalījumu, iespējams, uz jauna Linux atmiņas diska.

Jauna cietā diska instalēšana un sadalīšana Linux

Pirms turpināt darbu, mēs īsi paskaidrosim, kā pievienot jaunu cieto disku esošam Linux serverim.

Piezīme. Ja nodalījums jau ir gatavs darbībai, pārejiet uz sadaļu, kurā paskaidrotas darbības, kā pārvietot direktoriju /home tālāk esošajā nodalījumā.

Pieņemsim, ka esat pievienojis jauno disku sistēmai. Cietajā diskā izveidojamo nodalījumu skaitu, kā arī nodalījumu tabulu parasti nosaka pēc diska etiķetes veida, un pāris pirmie vietas baiti definēs MBR (Master Boot Record), kurā tiek saglabāta nodalījuma tabula, kā arī boot loader (sāknējamiem diskiem).

Lai gan ir daudz etiķešu tipu, Linux pieņem tikai divus: MSDOS MBR (516 baiti lielumā) vai GPT (GUID nodalījumu tabula) MBR.

Pieņemsim arī, ka jaunais jaunais cietais disks (/ dev/sdb 270 GB lielumā, ko izmanto šīs rokasgrāmatas vajadzībām, iespējams, ka lielai lietotāju bāzei serverī ir nepieciešama lielāka ietilpība.

Vispirms jums ir jāšķiras; šajā piemērā mēs izmantojām GPT etiķetes nosaukumu.

# parted /dev/sdb mklabel gpt

Piezīme: sadalīts atbalsta abas etiķetes.

Tagad izveidojiet pirmo nodalījumu (/ dev/sdb1) ar izmēru 106 GB. Mēs esam rezervējuši 1024 MB vietas MBR.

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

Paskaidrojot iepriekš minēto komandu:

  • a - iespēja norādīt nodalījuma izlīdzināšanu.
  • mkpart - sub komanda, lai izveidotu nodalījumu.
  • primārais - cietajā diskā iestata nodalījuma veidu kā galveno (citas vērtības ir loģiskas vai paplašinātas).
  • 1074 MB - nodalījuma sākums.
  • 107 GB - nodalījuma beigas.

Tagad pārbaudiet brīvo vietu diskā šādi.

# parted /dev/sdb print free

Mēs izveidosim vēl vienu nodalījumu (/ dev/sdb2) ar izmēru 154 GB.

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

Pēc tam katram nodalījumam iestatīsim failu sistēmas tipu.

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

Lai skatītu visas sistēmā pievienotās atmiņas ierīces, ierakstiet.

# parted -l

Tagad mēs esam pievienojuši jauno disku un izveidojuši nepieciešamo nodalījumu; ir pienācis laiks pārvietot mājas mapi vienā no nodalījumiem. Lai izmantotu failu sistēmu, tā jāpiestiprina saknes failu sistēmai pievienošanas punktā: mērķa direktorijā, piemēram,/home.

Vispirms uzskaitiet failu sistēmas lietojumu, izmantojot sistēmā df komandu.

# df -l

Sāksim ar jauna direktorija/srv/home izveidošanu, kurā pagaidām varēsim uzstādīt/dev/sdb1.

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

Pēc tam pārvietojiet/home saturu uz/srv/home (tādējādi tie praktiski tiks saglabāti mapē/dev/sdb1), izmantojot komandu cp.

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

Pēc tam mēs atradīsim diff rīku, ja viss ir kārtībā, turpiniet nākamo soli.

# diff -r /home /srv/home

Pēc tam izdzēsiet visu veco saturu/home šādi.

# rm -rf /home/*

Nākamais atvienot/srv/home.

# umount /srv/home

Visbeidzot, mums ir jāuzstāda failu sistēma/dev/sdb1 uz/home uz šo laiku.

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

Iepriekš minētās izmaiņas būs spēkā tikai pašreizējai sāknēšanai. Pievienojiet zemāk esošo rindu mapē/etc/fstab, lai izmaiņas būtu pastāvīgas.

Izmantojiet šādu komandu, lai iegūtu nodalījumu UUID.

# blkid /dev/sdb1

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

Kad esat uzzinājis nodalījuma UUID, atveriet failu/etc/fstab, pievienojiet šādu rindu.

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

Lauka izskaidrošana augšējā rindā:

  • UUID - norāda bloķēšanas ierīci. Varat arī izmantot ierīces failu/dev/sdb1.
  • /home - tas ir stiprinājuma punkts.
  • etx4 - apraksta faila sistēmas veidu ierīcē/nodalījumā.
  • noklusējumi - mount options (šeit šī vērtība nozīmē rw, suid, dev, exec, auto, nouser un async).
  • 0 - izmanto izgāztuves rīks, 0 nozīmē, ka neizmetiet, ja nav failu sistēmas.
  • 2 - fsck rīks izmanto, lai atklātu failu sistēmas pārbaudes secību, šī vērtība nozīmē pārbaudīt šo ierīci pēc saknes failu sistēmas.

Saglabājiet failu un restartējiet sistēmu.

Jūs varat palaist šo komandu, lai redzētu, vai/home katalogs ir veiksmīgi pārvietots uz īpašu nodalījumu.

# df -hl

Pagaidām tas ir viss! Lai uzzinātu vairāk par Linux failu sistēmu, izlasiet šīs rokasgrāmatas, kas attiecas uz failu sistēmas pārvaldību Linux.

  1. Kā dzēst lietotāju kontus, izmantojot Linux mājas direktoriju
  2. Kas ir Ext2, Ext3 un Ext4 un kā izveidot un konvertēt Linux failu sistēmas
  3. 7 veidi, kā noteikt failu sistēmas tipu operētājsistēmā Linux (Ext2, Ext3 vai Ext4)
  4. Kā uzstādīt attālo Linux failu sistēmu vai direktoriju, izmantojot SSHFS, izmantojot SSH

Šajā ceļvedī mēs paskaidrojām, kā pārvietot/home direktoriju uz īpašu nodalījumu Linux. Jūs varat dalīties domās par šo rakstu, izmantojot zemāk esošo komentāru veidlapu.