Vyhledávání na webu

Jak přesunout domovský adresář do nového oddílu nebo disku v Linuxu


Na jakémkoli linuxovém systému musí být jedním z adresářů, jejichž velikost se jistě zvětší, adresář /home. Je to proto, že adresáře systémových účtů (uživatelů) budou umístěny v /home kromě účtu root – zde budou uživatelé průběžně ukládat dokumenty a další soubory.

Dalším důležitým adresářem se stejným chováním je /var, obsahuje log soubory, jejichž velikost se bude postupně zvětšovat, jak bude systém pokračovat, jako jsou log soubory, webové soubory, tiskové spool soubory atd.

Když se tyto adresáře zaplní, může to způsobit kritické problémy v kořenovém souborovém systému vedoucí k selhání spouštění systému nebo k jiným souvisejícím problémům. Někdy si toho však můžete všimnout až po instalaci systému a konfiguraci všech adresářů v kořenovém souborovém systému/oddílu.

Doporučená četba: Vysvětlení adresářové struktury Linuxu a důležitých souborů

V této příručce si ukážeme, jak přesunout domovský adresář do vyhrazeného oddílu, případně na novém úložném disku v Linuxu.

Instalace a rozdělení nového pevného disku v Linuxu

Než budeme pokračovat, stručně vysvětlíme, jak přidat nový pevný disk na existující server Linux.

Poznámka: Pokud již máte oddíl připravený k operaci, přejděte k části, která vysvětluje kroky pro přesunutí adresáře /home v adresáři vlastní oddíl níže.

Budeme předpokládat, že jste připojili nový disk k systému. Na pevném disku je počet oddílů, které mají být vytvořeny, stejně jako tabulka oddílů obvykle určen typem jmenovky disku a prvních několik bajtů prostoru bude definovat MBR (Hlavní spouštěcí záznam ), ve kterém je uložena tabulka oddílů a také zavaděč (pro spouštěcí disky).

Přestože existuje mnoho typů štítků, Linux přijímá pouze dva: MSDOS MBR (velikost 516 bajtů) nebo GPT (Tabulka oddílů GUID) MBR.

Předpokládejme také, že nový nový pevný disk (/dev/sdb o velikosti 270 GB použitý pro účely této příručky pravděpodobně potřebujete větší kapacitu na serveru pro velká uživatelská základna.

Nejprve musíte nastavit typ štítku disku pomocí fdisk nebo parted; v tomto příkladu jsme použili název štítku GPT.

parted /dev/sdb mklabel gpt

Poznámka: fdisk zatím podporuje pouze MSDOS MBR a parted podporuje oba štítky.

Nyní vytvořte první oddíl (/dev/sdb1) o velikosti 106 GB. Vyhradili jsme 1024 MB prostoru pro MBR.

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

Vysvětlení příkazu výše:

  • a – možnost určit zarovnání oddílu.
  • mkpart – dílčí příkaz pro vytvoření oddílu.
  • primary – nastaví typ diskového oddílu jako primární na pevném disku (ostatní hodnoty jsou logické nebo rozšířené).
  • 1074 MB – začátek oddílu.
  • 107 GB – konec oddílu.

Nyní zkontrolujte volné místo na disku následovně.

parted /dev/sdb print free

Vytvoříme další oddíl (/dev/sdb2) o velikosti 154 GB.

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

Dále nastavíme typ souborového systému na každém oddílu.

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

Chcete-li zobrazit všechna úložná zařízení připojená k systému, zadejte.

parted -l

Přesunutí domovského adresáře do vyhrazeného oddílu

Nyní jsme přidali nový disk a vytvořili potřebný oddíl; nyní je čas přesunout složku home do jednoho z oddílů. Chcete-li použít souborový systém, musí být připojen ke kořenovému souborovému systému v bodě připojení: v cílovém adresáři, jako je /home.

Nejprve vypište použití souborového systému pomocí příkazu df v systému.

df -l

Začneme vytvořením nového adresáře /srv/home, kam můžeme prozatím připojit /dev/sdb1.

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

Poté přesuňte obsah /home do /srv/home (takže budou prakticky uloženy v /dev/sdb1) pomocí příkazu rsync popř. příkaz cp.

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

Poté najdeme rozdíl mezi těmito dvěma adresáři pomocí nástroje diff, pokud je vše v pořádku, pokračujte dalším krokem.

diff -r /home /srv/home

Poté smažte veškerý starý obsah v /home následujícím způsobem.

rm -rf /home/*

Dále odpojit /srv/home.

umount /srv/home

Nakonec musíme mezitím připojit souborový systém /dev/sdb1 k /home.

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

Výše uvedené změny budou platné pouze pro aktuální spouštění, přidejte řádek níže do /etc/fstab, aby byly změny trvalé.

Pomocí následujícího příkazu získáte oddíl UUID.

blkid /dev/sdb1

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

Jakmile znáte oddíl UUID, otevřete soubor /etc/fstab a přidejte následující řádek.

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

Vysvětlení pole v řádku výše:

  • UUID – určuje blokové zařízení, alternativně můžete použít soubor zařízení /dev/sdb1.
  • /home – toto je přípojný bod.
  • etx4 – popisuje typ souborového systému na zařízení/diskovém oddílu.
  • defaults – možnosti připojení (zde tato hodnota znamená rw, suid, dev, exec, auto, nouser a async).
  • 0 – používá se nástrojem dump, 0 znamená nevypisovat, pokud není přítomen souborový systém.
  • 2 – používá nástroj fsck pro zjištění pořadí kontroly souborového systému, tato hodnota znamená kontrolu tohoto zařízení po kořenovém souborovém systému.

Uložte soubor a restartujte systém.

Můžete spustit následující příkaz, abyste viděli, že adresář /home byl úspěšně přesunut do vyhrazeného oddílu.

df -hl

To je prozatím vše! Chcete-li porozumět více o souborovém systému Linux, přečtěte si tyto příručky týkající se správy souborového systému v systému Linux.

  1. Jak odstranit uživatelské účty pomocí domovského adresáře v systému Linux
  2. Co je Ext2, Ext3 & Ext4 a jak vytvářet a převádět systémy souborů Linux
  3. 7 způsobů, jak určit typ systému souborů v Linuxu (Ext2, Ext3 nebo Ext4)
  4. Jak připojit vzdálený souborový systém Linux nebo adresář pomocí SSHFS přes SSH

V této příručce jsme vám vysvětlili, jak přesunout adresář /home do vyhrazeného oddílu v systému Linux. Jakékoli myšlenky týkající se tohoto článku můžete sdílet prostřednictvím formuláře níže.