GNU/Linux >> Znalost Linux >  >> Linux

Jak změnit schéma rozdělení na vašem linuxovém serveru?

Jakmile získáte VPS u poskytovatele hostingu, jako je DigitalOcean nebo OVH, možná budete chtít upravit rozložení oddílů. Často však nemáte na výběr:vyberete požadovaný operační systém a ten se nainstaluje na jeden oddíl, přičemž zabere veškerý dostupný prostor na disku.

VPS však nejsou pouze pro webové servery s jedním oddílem! V závislosti na vašich potřebách můžete chtít přidat odkládací oddíl, další pro vaše data…

Naštěstí většina poskytovatelů hostingu nabízí záchranný režim , alternativní operační systém na jiném pevném disku, ze kterého můžete vyladit běžný operační systém a „normální“ pevný disk.

Zbytek této příručky předpokládá, že jediný existující oddíl je typu Ext4 (nebo Ext2/3); jedná se o případ, kdy jste nainstalovali Debian nebo Ubuntu.

Nezkoušejte tuto metodu ze systému, použijte záchranný režim. Pokud si nejste jisti, zkontrolujte prosím svého poskytovatele VPS, zda poskytuje přístup k záchranné konzoli. Změna velikosti souborového systému a oddílu nevymaže data, protože nová požadovaná velikost je větší než aktuální množství dat. Přesto proveďte zálohu na externí disk/zařízení/server.

Řekněme, že musíte zmenšit oddíl ze 40 GiB na 2 GiB (začíná na začátku disku), abyste za ním vytvořili další oddíly.

Krok 1:Přepněte do záchranného režimu a identifikujte disk

První věc, kterou musíte udělat, je restartovat počítač do záchranného režimu, což je obvykle systém Debian GNU/Linux. Získáte dočasný root heslo pro tento dočasný systém, stačí k němu SSH.

Poté identifikujte disk používaný vaším normálním systémem; můžete použít fdisk -l .

Zde /dev/sdb je disk, na kterém chceme upravit schéma oddílů, a /dev/sdb1 zatím jediný oddíl. /dev/sda je disk, kde se nachází dočasný záchranný systém. Ve zbytku tohoto kurzu samozřejmě nahraďte sdb1 pokud to není správný název zařízení.

Krok 2:Zmenšete souborový systém

Zkontrolujte souborový systém pomocí e2fsck -f /dev/sdb1 (jinak další příkaz, resize2fs , nemusí fungovat):

e2fsck a resize2fs jsou pravděpodobně již nainstalovány v záchranném systému, ale v případě, že nejsou přítomny, nainstalujte balíček e2fsprogs. V Debianu spusťte apt install e2fsprogs.

Také se ujistěte, že velikost souborového systému nepřesahuje 2 GiB. Poskytování /mnt je prázdný, připojte souborový systém pomocí mount /dev/sdb1 /mnt a zkontrolujte jeho velikost pomocí df :

Odpojte souborový systém:umount /dev/sdb1 .

Než budete pokračovat s následujícími příkazy a v případě, že jste již systém přizpůsobili nebo přidali důležitá data, doporučujeme zálohovat soubory!

Pojďme:spusťte resize2fs /dev/sdb1 2G .

"2G" znamená 2 GiB, můžete to napsat i "2048M". Když jsem pořídil níže uvedený snímek obrazovky, nesprávně jsem si myslel resize2fs pochopil to jako 2000M, takže jsem místo toho poskytl řadu sektorů (4194304 * 512 bajtů na sektor =2GiB). Výsledek je úplně stejný.

Zde program hlásí „524288 (4k) bloků“. 524288 * 4096 B =2 GiB, takže je to v pořádku.

4k je velikost jednotky (bloku) na úrovni souborového systému, zatímco 512 je velikost jednotky (sektoru) na úrovni disku. Jak poznám, že je to 512? Podívejte se na snímek obrazovky „fdisk“ výše!

Krok 3:Zmenšení oddílu

Doposud jste redukovali souborový systém, to znamená, že do něj nemůžete přidávat data, která se nevejdou do jeho logické velikosti 2 GiB. Ale oddíl, na kterém leží souborový systém, stále zabírá veškeré místo na disku.

Doporučuji parted pro správu oddílů v Linuxu. V Debianu jej získejte pomocí apt install parted . Tento nástroj lze používat interaktivně. Spusťte jej pomocí /dev/sdb jako argument:

Použijte unit s , takže všechny velikosti jsou zobrazeny jako počet sektorů (místo MiB, GiB atd.), což je užitečné pro přesné ovládání věcí. V opačném případě se můžete setkat s problémy, jako je "Výsledný oddíl není správně zarovnán pro nejlepší výkon" . print free příkaz vám umožní zobrazit stav disku:

Chcete, aby oddíl 1 byl dlouhý 2 GiB, což se rovná 2*1024*1024*1024/512 =4194304 sektorů.

Spusťte resizepart 1 . Poté budete dotázáni na umístění na disku, vyjádřené v sektorech od začátku disku, kde musí oddíl končit. Protože existuje rezervovaná oblast , před oddílem, který končí sektorem 2047, musíte zadat 4194304 + 2047 =4196351s .

Nezapomeňte na koncové „s“.

Po varovné zprávě odpovězte "Ano" a poté print free znovu, abyste potvrdili, že velikost oddílu byla změněna.

Podle mých zkušeností může zastavení zde a restartování „obnovit“ rozložení diskových oddílů v předchozím stavu, tedy jako byste nikdy disk nezmenšovali!

Pro "ověření" změn je nyní lepší přidat alespoň jeden oddíl na volné místo.

Krok 4:Přidání dalších oddílů

Řekněme, že chcete přidat oddíl 12 GiB, Ext4 za oddíl, který převzal OS.

Nejprve musíte "deklarovat" oddíl, takže je přidán záznam do tabulky oddílů (někde ve vyhrazené zóně). Použijte mkpart primary ext4 :

Stejně jako v tomto příkladu spusťte oddíl jeden sektor po konci předchozího, takže nedochází k plýtvání místem. Zde je 4196351 + 1 =4196352s .

Konec je 12*1024*1024*1024/512 sektorů (velikost, kterou chcete pro tento oddíl) + 4196351 sektorů (offset jako 2. oddíl) =29362175s .

Poté ukončete parted (C^d) a efektivně vytvořte souborový systém Ext4 na sdb2. Chcete-li použít výchozí nastavení Ext4, příkaz je:
mkfs.ext4 /dev/sdb2

Konec

Tento článek byl pouze úvodem o tom, jak manipulovat s oddíly a souborovými systémy na příkazovém řádku, se zaměřením na praktický případ serverů, které mají ve výchozím nastavení jeden velký oddíl (a kam jej možná budete chtít rozdělit). Doufám, že to bylo užitečné.

Informace o autorovi:Paul Desplanque je 100% samouk ve věcech souvisejících s počítačem. S 8 lety zkušeností s vývojem PHP za sebou je Paul docela zběhlý v self-hostingu.


Linux
  1. Jak změnit časové pásmo na serveru RHEL7 Linux

  2. Jak změnit identitu systému Linux

  3. Jak změnit rozlišení serveru VNC v Linuxu

  1. Jak vytvořit souborový systém na linuxovém oddílu nebo logickém svazku

  2. Jak změnit výchozí prostředí v Linuxu

  3. Jak změním swapovací oddíl v Linuxu?

  1. Jak změnit barvu vašeho terminálu Linux

  2. Jak připojit váš linuxový server k projektu fondu NTP

  3. Jak porovnat nebo zkontrolovat rychlost serveru DNS v systému Linux?