Hogyan lehet áthelyezni a kezdőkönyvtárat új partícióra vagy lemezre Linux alatt
Bármely Linux rendszeren az egyik könyvtárnak, amely biztosan növekedni fog, a /home
könyvtárnak kell lennie. Ennek az az oka, hogy a rendszerfiókok (felhasználók) könyvtárai a /home könyvtárban találhatók, kivéve a root fiókot – itt a felhasználók folyamatosan tárolják a dokumentumokat és egyéb fájlokat.
Egy másik fontos, hasonló viselkedésű könyvtár a /var
, amely naplófájlokat tartalmaz, amelyek mérete fokozatosan növekszik, ahogy a rendszer továbbra is fut, például naplófájlokat, webfájlokat, nyomtatási spoolfájlokat stb.
Amikor ezek a könyvtárak megtelnek, ez kritikus problémákat okozhat a gyökérfájlrendszerben, ami rendszerindítási hibához vagy más kapcsolódó problémákhoz vezethet. Néha azonban ezt csak a rendszer telepítése és a gyökérfájlrendszeren/partíción lévő könyvtárak konfigurálása után veheti észre.
Javasolt olvasmány: A Linux címtárszerkezetének és a fontos fájlok elérési útjainak magyarázata
Ebben az útmutatóban bemutatjuk, hogyan helyezheti át a kezdőkönyvtárat egy dedikált partícióra, esetleg egy új tárolólemezre Linuxban.
Új merevlemez telepítése és particionálása Linux alatt
Mielőtt továbblépnénk, röviden elmagyarázzuk, hogyan lehet új merevlemezt hozzáadni egy meglévő Linux-kiszolgálóhoz.
Megjegyzés: Ha már rendelkezik egy partícióval, amely készen áll a műveletre, lépjen arra a szakaszra, amely elmagyarázza a /home
könyvtár áthelyezésének lépéseit egy saját partíció alább.
Feltételezzük, hogy csatlakoztatta az új lemezt a rendszerhez. A merevlemezen a létrehozandó partíciók számát és a partíciós táblát általában a lemezcímke típusa határozza meg, és az első néhány bájtnyi hely határozza meg az MBR (Master Boot Record ), amely a partíciós táblát, valamint a rendszertöltőt (indítólemezekhez) tárolja.
Bár számos címketípus létezik, a Linux csak kettőt fogad el: MSDOS MBR (516 bájt méretű) vagy GPT (GUID partíciós tábla) >MBR.
Tételezzük fel azt is, hogy az új merevlemez (/dev/sdb mérete 270 GB), amelyet ebben az útmutatóban használunk, valószínűleg nagyobb kapacitásra van szüksége a szerveren nagy felhasználói bázis.
Először be kell állítania a lemezcímke típusát az fdisk vagy parted használatával; ebben a példában a GPT címkenevet használtuk.
parted /dev/sdb mklabel gpt
Megjegyzés: az fdisk egyelőre csak az MSDOS MBR-t támogatja, a parted pedig mindkét címkét.
Most hozza létre az első partíciót (/dev/sdb1), amelynek mérete 106 GB. 1024 MB helyet foglaltunk le az MBR számára.
parted -a cylinder /dev/sdb mkpart primary 1074MB 107GB
A fenti parancs magyarázata:
- a – lehetőség a partíció igazításának megadására.
- mkpart – alparancs a partíció létrehozásához.
- elsődleges – a partíció típusát állítja be elsődlegesnek a merevlemezen (a többi érték logikai vagy kiterjesztett).
- 1074 MB – a partíció kezdete.
- 107 GB – a partíció vége.
Most ellenőrizze a szabad helyet a lemezen az alábbiak szerint.
parted /dev/sdb print free
Létrehozunk egy másik partíciót (/dev/sdb2), amelynek mérete 154 GB.
parted -a cylinder /dev/sdb mkpart primary 115GB 268GB
Ezután állítsuk be a fájlrendszer típusát az egyes partíciókon.
mkfs.ext4 /dev/sdb1
mkfs.xfs /dev/sdb2
A rendszerhez csatlakoztatott összes tárolóeszköz megtekintéséhez írja be a következőt:
parted -l
A Home Directory áthelyezése egy dedikált partícióba
Most hozzáadtuk az új lemezt és létrehoztuk a szükséges partíciót; itt az ideje áthelyezni a home mappát valamelyik partícióra. Fájlrendszer használatához a gyökér fájlrendszerhez kell csatolni egy csatolási ponton: a célkönyvtárban, például a /home-ban.
Először listázza ki a fájlrendszer használatát a rendszer df parancsával.
df -l
Kezdjük azzal, hogy létrehozunk egy új /srv/home könyvtárat, ahová egyelőre csatlakoztathatjuk a /dev/sdb1 címet.
mkdir -p /srv/home
mount /dev/sdb1 /srv/home
Ezután helyezze át a /home tartalmát az /srv/home mappába (így gyakorlatilag a /dev/sdb1 mappába kerül) az rsync paranccsal vagy cp parancsot.
rsync -av /home/* /srv/home/
OR
cp -aR /home/* /srv/home/
Ezt követően a diff eszköz segítségével megkeressük a különbséget a két könyvtár között, ha minden rendben van, folytassuk a következő lépéssel.
diff -r /home /srv/home
Ezt követően törölje az összes régi tartalmat a /home mappából az alábbiak szerint.
rm -rf /home/*
Következő leválasztása /srv/home.
umount /srv/home
Végül a /dev/sdb1 fájlrendszert időközben a /home mappába kell csatolnunk.
mount /dev/sdb1 /home
ls -l /home
A fenti változtatások csak az aktuális rendszerindításra érvényesek. A változtatások véglegessé tételéhez adja hozzá az alábbi sort az /etc/fstab fájlhoz.
Használja a következő parancsot az UUID partíció lekéréséhez.
blkid /dev/sdb1
/dev/sdb1: UUID="e087e709-20f9-42a4-a4dc-d74544c490a6" TYPE="ext4" PARTLABEL="primary" PARTUUID="52d77e5c-0b20-4a68-ada4-881851b2ca99"
Ha ismeri az UUID partíciót, nyissa meg az /etc/fstab fájlt, és adja hozzá a következő sort.
UUID=e087e709-20f9-42a4-a4dc-d74544c490a6 /home ext4 defaults 0 2
A mező magyarázata a fenti sorban:
- UUID – meghatározza a blokkolóeszközt, vagy használhatja a /dev/sdb1 eszközfájlt.
- /home – ez a csatlakozási pont.
- etx4 – az eszköz/partíció fájlrendszerének típusát írja le.
- alapértelmezettek – csatolási lehetőségek (itt ez az érték rw, suid, dev, exec, auto, nouser és async) jelentésű.
- 0 – a kiíratási eszköz használja, a 0 azt jelenti, hogy ne írja ki, ha nincs jelen a fájlrendszer.
- 2 – az fsck eszköz használja a fájlrendszer-ellenőrzési sorrend felderítésére, ez az érték azt jelenti, hogy a root fájlrendszer után ellenőrizze ezt az eszközt.
Mentse el a fájlt, és indítsa újra a rendszert.
A következő parancs futtatásával ellenőrizheti, hogy a /home könyvtár sikeresen át lett-e helyezve egy dedikált partícióba.
df -hl
Egyelőre ennyi! Ha többet szeretne megtudni a Linux fájlrendszerről, olvassa el ezeket a Linux fájlrendszer-kezeléssel kapcsolatos útmutatókat.
- Felhasználói fiókok törlése a Home Directory segítségével Linuxban
- Mi az Ext2, Ext3 és Ext4, valamint Linux fájlrendszerek létrehozása és konvertálása
- 7 módszer a fájlrendszer típusának meghatározására Linuxban (Ext2, Ext3 vagy Ext4)
- Távoli Linux fájlrendszer vagy könyvtár csatlakoztatása SSHFS használatával SSH-n keresztül
Ebben az útmutatóban elmagyaráztuk, hogyan helyezheti át a /home könyvtárat egy dedikált partícióba Linuxban. Az alábbi megjegyzés űrlapon keresztül megoszthatja gondolatait ezzel a cikkel kapcsolatban.