GNU/Linux >> Znalost Linux >  >> Linux

Použití příkazu mkfs v Linuxu k formátování systému souborů na disku nebo oddílu

Písmena v mkfs znamená "vytvořit souborový systém". Příkaz se běžně používá pro správu úložných zařízení v Linuxu. Mkfs si můžete představit jako nástroj příkazového řádku pro formátování disku do konkrétního souborového systému.

mkfs -t [fs type] [target device]

Můžete také použít příkaz mkfs následujícím způsobem.

mkfs.[fs type] [target device]

V tomto tutoriálu budu obecně diskutovat o tom, co je souborový systém. Uvedu také příklady efektivního použití příkazu mkfs.

Protože se příkaz mkfs zabývá disky a diskovými oddíly, vyžaduje, abyste byli uživatel root nebo sudo s přístupem ke spouštění příkazů správce.

mkfs je mocný nástroj. Je důležité pochopit potenciální důsledky změny souborového systému. Výběrem nesprávného uzlu zařízení vymažete všechna data na tomto zařízení. Tento příkaz používejte na vlastní nebezpečí. Byli jste varováni

Co je to souborový systém?

Systém souborů (fs) označuje strukturu a logiku, která spravuje data na zařízení. Systém souborů řídí, jak se data ukládají a načítají.

Existuje mnoho typů souborových systémů a každý má své výhody a nevýhody. Zde jsou nejběžnější typy souborových systémů:

  • TUK*
  • NTFS
  • ext*
  • APFS
  • HFS*

Pravděpodobně jste se již setkali s jedním nebo více z těchto typů souborových systémů. Můžete dokonce přiřadit typy k jejich příslušným operačním systémům.

Obecně řečeno, FAT/NTFS jsou určeny pro Windows, Ext se používá se systémy Linux a APFS/HFS jsou systémy souborů macOS. Každý z nich řeší logiku struktury souborů odlišně, což může vést k problémům.

To je důvod, proč je důležité na to myslet před deklarováním typu souborového systému nebo „formátováním“ vašeho zařízení. Každý případ použití je jiný a je na vás, abyste se rozhodli, který souborový systém nejlépe vyhovuje vašim potřebám.

příklady příkazů mkfs

Dovolte mi, abych vám ukázal některé z nejběžnějších použití příkazu mkfs.

Prosím, nezkoušejte žádný z těchto příkazů na svém skutečném systému naslepo. Zformátuje cílové zařízení/diskový oddíl a vymaže všechna data.

mkfs bez jakékoli možnosti vytvoří souborový systém ext2

Pokud neurčíte typ souborového systému pro cílové zařízení, použije výchozí souborový systém ext2.

sudo mkfs /dev/sdb1

Určení typu souboru pomocí mkfs

Použití ext2 není příliš pohodlné ani vhodné. Většina linuxových systémů v dnešní době doporučuje používat ext4. Systém souborů můžete určit následujícím způsobem:

sudo mkfs -t ext4 /dev/sdb1

Můžete to také použít takto:

sudo mkfs.ext4 /dev/sdb1

Kontrola chybných bloků na zařízení

Můžete také zkontrolovat, zda na zařízení nejsou špatné bloky, ale mějte na paměti, že kontrola často trvá dlouho.

sudo mkfs -c /dev/sdb1

Bonusový tip:Zkontrolujte typ souborového systému zařízení

Možná budete chtít zkontrolovat typ souborového systému zařízení, které jste právě naformátovali pomocí příkazu mkfs. K tomuto účelu můžete použít příkaz file.

sudo file -sL /device

Zde je příklad, který ukazuje, jaký druh výstupu by mohl zobrazit:

[email protected]:~$ sudo file -s /dev/nvme0n1p2
/dev/nvme0n1p2: Linux rev 1.0 ext4 filesystem data, UUID=34daa4b7-a2c4-4983-b5cc-df9baa6a6543 (extents) (64bit) (large files) (huge files)

Případ použití v reálném životě:Použití příkazu mkfs k vytvoření souboru Systém na zařízení USB

Nyní, když máte nějaké základní informace, můžete začít používat mkfs.

Nejpraktičtější ukázka, která mě napadá, je formátování USB flash disku. Tyto stejné principy budou platit pro jakýkoli typ úložiště, který si vyberete.

Najděte své zařízení

Nejprve budete muset najít své zařízení. Jedna metoda, kterou můžete použít, je sudo fdisk -l . Zobrazí se seznam všech uzlů disku, které jsou aktuálně připojeny.

[email protected]:~$ sudo fdisk -l
Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors
Disk model: VBOX HARDDISK   
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x3c62c49c

Device     Boot    Start      End  Sectors  Size Id Type
/dev/sda1  *        4096  1023998  1019903  498M 83 Linux
/dev/sda2        1024000 44036094 43012095 20.5G 83 Linux
/dev/sda3       44036096 52424702  8388607    4G 82 Linux swap / Solaris

Disk /dev/sdb: 28.93 GiB, 31040995328 bytes, 60626944 sectors
Disk model: Patriot Memory  
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 91A34D6F-E67B-E54D-B19C-5CC828DAAB9A

Device     Start      End  Sectors  Size Type
/dev/sdb1   2048 60626910 60624863 28.9G Linux filesystem

Váš výstup se bude samozřejmě lišit. Buďte velmi opatrní při určování požadovaného disku . Pokud si nejste jisti, vyjměte disk a spusťte fdisk -l příkaz znovu. Pokud máte správné zařízení, nebude při odpojení uvedeno.

Ověřte oddíl

Zařízení, které používám, je Patriot Memory USB a nachází se na adrese /dev/sdb . Kromě identifikace správného disku se budete muset ujistit, že měníte fs požadovaného oddílu.

Použil jsem nástroje fdisk k odstranění existujících dat a zapsání nové tabulky oddílů. Zatímco jsem to dělal, vytvořil jsem nový oddíl pro zápis. Tento oddíl bude naším cílem:/dev/sdb1 .

Odpojit

Než se pokusíte změnit systém souborů, budete jej muset odpojit pomocí umount příkaz.

[email protected]:~$ sudo umount /dev/sdb1

Vytvořte systém souborů

Nyní, když jste ověřili svůj cíl a odpojili disk, můžete přistoupit k vytvoření systému souborů.

Přidal jsem -v podrobná možnost zde pro zobrazení více informací při spuštění.

[email protected]:~$ sudo mkfs.ext4 /dev/sdb1 -v
mke2fs 1.45.5 (07-Jan-2020)
fs_types for mke2fs.conf resolution: 'ext4'
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1896832 inodes, 7578107 blocks
378905 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2155872256
232 block groups
32768 blocks per group, 32768 fragments per group
8176 inodes per group
Filesystem UUID: 73882769-7599-4c79-a00b-ef317ccd921d
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done 

Tento proces může nějakou dobu trvat, ale měl by skončit za méně než 20 minut, pokud cíl není větší než 2 TB.

Měl jsem několik problémů s programem visícím na poslední položce. Bohužel zde není žádný indikátor průběhu a nebyly vyvolány žádné chyby.

Ověřte nově vytvořený souborový systém

Nejprve zkontrolujte souborový systém zařízení, které jste právě použili. Je to ta, kterou jste chtěli?

sudo file -sL /dev/sdb1

Je důležité se ujistit, že zařízení je rozpoznáno na systémech, se kterými jej budete používat. Vytvořil jsem složku s názvem test a v ní soubor s názvem test.txt.

Chcete-li ušetřit čas, můžete sem zkopírovat a vložit mé příkazy.

mkdir test && cd test
touch test.txt
echo "THIS IS ONLY A TEST" > test.txt
cat test.txt

Pokud vše fungovalo, měli byste být schopni připojit disk k požadovaným systémům a přistupovat k souborům. Pokud nemáte přístup k souborům ve vašem systému, pravděpodobně došlo k problému s kompatibilitou.

Závěr

Doufám, že najdete tohoto rychlého průvodce mkfs užitečný příkaz. Pokud se vám tento návod líbí, sdílejte jej na sociálních sítích.

Pokud máte nějaké připomínky nebo dotazy, zanechte je níže. Pokud máte nějaké návrhy na témata, která byste rádi viděli, klidně je také zanechte.


Linux
  1. Jak extrahovat soubor tar.gz v Linuxu pomocí příkazového řádku

  2. Základní příklady příkazu File v Linuxu

  3. 4 nástroje ke stažení libovolného souboru pomocí příkazového řádku v Linuxu

  1. Odstraňte problémy s použitím souborového systému proc na Linuxu

  2. Použití síly na příkazovém řádku Linuxu

  3. Odstraňte soubor v systému Linux pomocí čísla inodu

  1. Používání Disku Google z příkazového řádku systému Linux

  2. Vytvářejte soubory pomocí příkazového řádku v Linuxu

  3. mkfs.ext4 Příklady příkazů v Linuxu