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.
- Jak odstranit uživatelské účty pomocí domovského adresáře v systému Linux
- Co je Ext2, Ext3 & Ext4 a jak vytvářet a převádět systémy souborů Linux
- 7 způsobů, jak určit typ systému souborů v Linuxu (Ext2, Ext3 nebo Ext4)
- 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.