Ve výchozím nastavení se při instalaci jakéhokoli systému Linux automaticky vytvoří adresář /tmp v kořenovém oddílu (‘/’). V některých situacích možná budete chtít oddělit adresář /tmp na jiném přípojném bodu nebo oddílu úplně. Zvláště, když jej chcete spravovat samostatně a mít velké množství dat, které mají být uloženy pod /tmp.
Viděl jsem případy, kdy uživatelé ukládají spoustu dat do adresáře /tmp, což způsobuje zaplnění kořenového souborového systému a omezuje mnoho důležitých funkcí systému. Když je /tmp na samostatném přípojném bodu, nemusí tento problém vůbec nastat. Tento příspěvek vysvětluje krok za krokem postup pro přesun /tmp z kořenového souborového systému na samostatný přípojný bod.
Poznámka :Upozorňujeme, že níže uvedený postup je online. Ale ujistěte se, že máte validní zálohu kořenového souborového systému, jen si buďte jisti v případě jakýchkoliv selhání.1. Prohlédněte si dostupné místo ve stávajících VG a discích. V případě, že na stávající skupině svazků není k dispozici místo, přidejte nový disk nebo nový oddíl. Pomocí níže uvedených příkazů můžete zobrazit dostupné místo a disky v systému.
# vgdisplay # fdisk -l
2. Inicializujte nový disk nebo oddíl na disku, který použije LVM k vytvoření nového přípojného bodu. V našem příkladu používáme oddíl na disku sdc.
# pvcreate /dev/sdc1
3. Vytvořte novou skupinu svazků pomocí tohoto oddílu:
# vgcreate tmp_vg /dev/sdc1
4. Ověřte volné místo dostupné v nově vytvořené skupině disků tmp_vg:
# vgdisplay tmp_vg
5. Vytvořte nový logický disk (tmp_lv) v této skupině disků. V mém případě mám 20GB volného místa ve VG. Velikost můžete upravit podle dostupnosti volného místa VG.
# lvcreate -L 20G -n tmp_lv tmp_vg
6. Vytvořte souborový systém pro /tmp.
# mkfs.ext4 /dev/vg_tmp/lv_tmp
7. Zálohujte obsah adresáře /tmp/ do záložního adresáře.
# mkdir /tmp_bkp # rsync -avz /tmp/ /tmp_bkp
8. Připojte nově vytvořený souborový systém /tmp:
# mount /dev/tmp_vg/tmp_lv /tmp/
V tomto okamžiku nenajdete žádná data přítomná v bodě připojení nebo adresáři /tmp.
9. Zkopírujte veškerý obsah ze záložního adresáře do nově připojeného /tmp.
# rsync -avz /tmp_bkp/ /tmp/
Provádění trvalých změn
Udělejme výše uvedené změny, aby přetrvávaly po restartování. K tomu potřebujeme mít položku souborového systému v /etc/fstab soubor.
1. Nejprve najděte UUID pro logický svazek tmp_lv pomocí příkazu níže:
# blkid
2. Proveďte a zadejte, jak je uvedeno níže, pomocí UUID z výše uvedeného příkazu.
# cat /etc/fstab UUID=[UUID-for-tmp_lv] /tmp ext4 defaults 0 0
nahraďte [UUID-for-tmp_lv] skutečným UUID z příkazu blkid, který jsme právě spustili výše.
3. Nyní můžete odpojit /tmp a zkusit jej připojit pomocí příkazu „mount -a“, abyste ověřili, zda je záznam, který jsme právě provedli v /etc/fstab, správný.
# umount /tmp # mount -a ### (or mount /tmp)
4. Ujistěte se také, že jste nastavili oprávnění nového /tmp na 1777, pokud ještě nejsou nastavena. Toto je vyžadováno pro nastavení sticky bitu na /tmp přípojném bodu.
# chmod 1777 /tmp