Jak spravovat oddíly pomocí GNU Parted v Linuxu

  • Noah Scott
  • 0
  • 1481
  • 358
>

Objektivní

Naučte se, jak spravovat oddíly pomocí správce dělených oddílů GNU v systému Linux.

Požadavky

  • Kořenová oprávnění

Konvence

  • # - vyžaduje, aby byl daný příkaz linux proveden s oprávněním root buď přímo jako uživatel root, nebo pomocí sudo příkaz
  • $ - daný příkaz linux má být proveden jako běžný neprivilegovaný uživatel

Úvod

Správa diskových oddílů je jedním z nejdůležitějších a nejnebezpečnějších úkolů při práci s operačními systémy. V tomto tutoriálu se zaměříme na použití GNU parted a uvidíme, jak jej můžeme použít k vytvoření, změně velikosti a odstranění oddílů z rozhraní příkazového řádku. Parted může pracovat jak v interaktivním, tak neinteraktivním režimu, což je zvláště užitečné, když chceme automatizovat některé operace nebo když příkazy musí běžet v bezobslužném kontextu, třeba ve skriptu nebo uvnitř kickstart soubor.

Inicializace zařízení s tabulkou oddílů

Je to zařízení, na kterém budu v tomto tutoriálu pracovat / dev / sdb: první věc, kterou chceme udělat, je nechat parted ukázat aktuální stav tohoto disku. Běžet dovnitř interaktivní režim musíme spustit rozdělený s oprávněním root, předat jako argument příkazu cestu k zařízení, na kterém chceme pracovat, v tomto případě:
$ sudo parted / dev / sdb
Otevře se rozdělená výzva:
GNU Parted 3.2 Použití / dev / sdb Vítejte v GNU Parted! Zadejte „help“ pro zobrazení seznamu příkazů. (rozešli) 
V tomto bodě, jak je navrženo na obrazovce, můžeme psát Pomoc, pro získání seznamu dostupných příkazů. V tomto případě, mimochodem, chceme vizualizovat aktuální stav jednotky, proto použijeme tisk příkaz:
Chyba: / dev / sdb: nerozpoznaný štítek disku Model: Obecný - disk SD / MMC / MS PRO (scsi) Disk / dev / sdb: 7743 MB Velikost sektoru (logická / fyzická): 512B / 512B Tabulka oddílů: neznámé příznaky disku: 
Jak vidíte, protože / dev / sdb neobsahuje tabulku oddílů, rozdělí nám pouze informace o modelu disku, celkové velikosti a velikosti sektoru. Abychom mohli disk používat, musíme jej inicializovat, proto na něm musíme vytvořit tabulku oddílů. Příkaz, který nám to umožní, je mklabel. Pokud neurčíme, jaký druh tabulky oddílů chceme vytvořit, parted se nás na výzvu zeptá:
(parted) mklabel Nový typ štítku disku? msdos 
V tomto případě vytvoříme tradiční tabulku oddílů msdos. Další platné hodnoty jsou „aix“, „amiga“, „bsd“, „dvh“, „gpt“, „loop“, „mac“, „pc98“ a „sun“. Jak již bylo řečeno, mohli jsme také zadat typ tabulky oddílů jako argument příkazu mklabel:
(rozdělené) mklabel msdos
To je velmi podobné příkazu, který chceme použít, pokud chceme provést stejný úkol, ale neinteraktivně. Pokud musí být příkaz spuštěn v bezobslužném kontextu, měli bychom také poskytnout -s možnost, (zkratka pro --skript): budeme si jisti, že zásah uživatele, o který se nikdy nepožaduje:
$ sudo parted -s / dev / sdb mklabel msdos

Vytvoření oddílu

Nyní vytvořme náš první oddíl na zařízení: musíme poskytnout typ oddílu, výběr mezi primárním nebo rozšířeným typem souborového systému (volitelně), počátečním bodem oddílu a koncovým bodem oddílu. Opět, pokud nejsou poskytnuty přímo, budou tyto hodnoty požadovány interaktivně. Příkaz k vytvoření oddílu je mkpart:
(rozdělené) mkpart Typ oddílu? primární / rozšířený? primární typ systému souborů? [ext2]? Start? 1MiB konec? 1025 MB 


Jedna věc, která by měla být jasná, je, že i když parted požádá o typ souborového systému, nikdy jej na diskovém oddílu nevytvoří: informace jsou požadovány pouze pro nastavení GUID (Globální jedinečný identifikátor) oddílu.
Specifikovali jsme 1 MB jako výchozí bod pro oddíl, takže bude začínat v sektoru 2048 disku (1 sektor je 512 bajtů, tedy 2048 * 512 = 1048576 bajtů = 1MiB). V tomto případě jsme mohli také použít s jako jednotka, což znamená sektor, poskytující přímo sektor, od kterého chceme, aby oddíl začínal. Výchozí bod oddílu je velmi důležitý pro zarovnání, ale o tom uvidíme později.
Protože jsme chtěli 1GiB oddíl (1024 MiB), zadali jsme 1025 MiB jako koncový bod, protože oddíly začínají na 1MiB. V případě, že bychom chtěli, aby oddíl pokrýval veškeré dostupné místo v zařízení, mohli jsme jej právě poskytnout 100% jako hodnota. Je také důležité si uvědomit, že při poskytování oddílu se doporučuje použít počáteční nebo konečný bod binární jednotky jako MiB nebo GiB. Při spuštění v neinteraktivním režimu se výše uvedený příkaz stane:
$ sudo parted -s / dev / sdb mkpart primární 1MiB 1025MiB
Pokud nyní znovu spustíte příkaz print, můžeme vidět právě vytvořený oddíl:
(rozdělený) tisk Model: Obecný - SD / MMC / MS PRO (scsi) Disk / dev / sdb: 7743 MB Velikost sektoru (logická / fyzická): 512B / 512B Tabulka oddílů: msdos Příznaky disku: Číslo Začátek Konec Velikost Typ Příznaky systému souborů 1 1049 kB 1075 MB 1074 MB primární 
Zobrazí se číslo oddílu, jeho počáteční a koncový bod, plus jeho velikost a typ. Můžeme dát pokyn, aby při zobrazování těchto informací použili konkrétní měrnou jednotku. Řekněme například, že chceme použít MiB jako jednotka: mohli bychom použít jednotka zadejte jej a poté spusťte tisk znovu:
(rozdělená) jednotka MiB (rozdělená) tisk Model: Obecný - SD / MMC / MS PRO (scsi) Disk / dev / sdb: 7384MiB Velikost sektoru (logická / fyzická): 512B / 512B Tabulka oddílů: Vlajky disku msdos: Číslo Začátek Konec Velikost Typ Souborový systém Vlajky 1 1,00MiB 1025MiB 1024MiB primární 
Jak vidíte, jednotka, kterou jsme zadali, se nyní používá.

Kontrola zarovnání oddílu

Jak jsme již řekli, zarovnání oddílu je velmi důležitým faktorem pro optimalizaci výkonu. V části můžeme zkontrolovat dva typy zarovnání, minimální a optimální. V minimálním režimu program kontroluje, zda oddíl respektuje minimální hodnotu zarovnání na fyzické bloky, zatímco v optimálním režimu kontroluje, zda je oddíl zarovnán na násobek velikosti fyzického bloku, aby zajistil optimální výkon. Příkaz, který se má použít k provedení těchto kontrol, je kontrola zarovnání:
(rozdělené) zarovnat - zkontrolovat typ zarovnání (min / opt) [optimální] / minimální? Číslo oddílu? 1 1 zarovnáno 
Jakmile je příkaz spuštěn v interaktivním režimu, zobrazí se výzva k zadání typu zarovnání, které chceme zkontrolovat (ve výchozím nastavení je použito optimální), a čísla oddílu (1). V tomto případě parted potvrdil, že je oddíl správně zarovnán. Neinteraktivní verze příkazu je:
$ sudo parted -s / dev / sdb align-check optimální 1
Protože jsme použili -s znovu příznak, nepozorovali jsme žádný výstup z příkazu, ale můžeme zjistit, zda byl úspěšný, kontrolou jeho kódu ukončení:
 $ echo $? 0 
Jak víte $? proměnné obsahuje hodnotu ukončení posledního spuštěného příkazu a protože je 0, víme, že samotný příkaz byl úspěšný. Pokud neposkytujete -s Možnost vrátí výsledek kontroly podobně jako v interaktivním režimu:
 $ sudo parted / dev / sdb align-check optimální 1 1 zarovnáno 


Změna velikosti oddílu

Změna velikosti oddílu je také velmi nebezpečná operace, zvláště pokud oddíl již obsahuje souborový systém. Uvědomte si, že při změně velikosti oddílu parted nikdy nepřizpůsobí souborový systém tomuto systému, proto, zejména při zmenšování, musíte nejprve použít vyhrazené nástroje pro změnu velikosti používaného souborového systému. Příkaz použitý k provedení změny velikosti oddílu je resizepart. Velikost našeho oddílu je v současné době 1 GiB; pokud bychom jej například chtěli rozšířit tak, aby pokryl veškerý zbývající prostor v zařízení, zadali bychom:
(rozdělená) změna velikosti Číslo oddílu? 1 Konec? [1075 MB]? 100% 
Poté, co jsme napsali resizepart Příkaz parted nás vyzval k zadání čísla oddílu a hodnoty jeho nového konce. V tomto případě jsme poskytli 100%, což je nejkratší způsob, jak zajistit pokrytí veškerého zbývajícího místa v zařízení. Neinteraktivní verze příkazu je:
sudo parted -s / dev / sdb resizepart 1100%
Kde opět 1 je číslo oddílu a 100% jeho nová hodnota pro koncový bod oddílu. Pokud běžíme tisk opět můžeme mít potvrzení, že změny, které jsme provedli, byly použity:
Vítejte v GNU Parted! Zadejte „help“ pro zobrazení seznamu příkazů. (rozdělená) jednotka MiB (rozdělená) tisk Model: Obecný - SD / MMC / MS PRO (scsi) Disk / dev / sdb: 7384MiB Velikost sektoru (logická / fyzická): 512B / 512B Tabulka oddílů: Příznaky disku msdos: Číslo Začátek Konec Velikost Typ Souborový systém Vlajky 1 1,00MiB 7384MiB 7383MiB primární 
Oddíl nyní pokrývá veškerý prostor v zařízení.

Odebrání oddílu

Odstranění oddílu je stejně snadné. Je zřejmé, že bychom měli provádět takovou operaci s největší pozorností. Příkaz, který se v tomto případě použije, je rm:
(rozdělené) rm Číslo oddílu? 1 
Opět, protože jsme neposkytli číslo oddílu přímo, parted nás vyzval k poskytnutí potřebných informací. Mohli jsme to poskytnout přímo, psát rm 1. Při spuštění v neinteraktivním režimu se příkaz stane:
$ sudo parted -s / dev / sdb rm 1
Jak se dalo očekávat, po spuštění příkazu oddíl již neexistuje:
(rozdělený) tisk Model: Obecný - SD / MMC / MS PRO (scsi) Disk / dev / sdb: 7743 MB Velikost sektoru (logická / fyzická): 512B / 512B Tabulka oddílů: msdos Příznaky disku: Číslo Začátek Konec Velikost Typ Příznaky systému souborů 

Závěry

Správa diskových oddílů je nebezpečný úkol, který by měl být prováděn s maximální pozorností. Přestože na linuxu existuje mnoho grafických nástrojů pro splnění potřebných úkolů (nejznámější je pravděpodobně Gparted, který je založen na samotném rozdělení), někdy potřebujeme jednoduchost a sílu příkazového řádku. V takových situacích je rozdělený správný nástroj. Jako vždy se vždy doporučuje konzultovat stránku programu. Bavte se a buďte opatrní!



Zatím žádné komentáře

Sbírka užitečných informací o operačním systému Linux a nových technologiích
Nejnovější články, praktické tipy, podrobné recenze a průvodci. Ve světě operačního systému Linux se budete cítit jako doma