This is Gentoo's testing wiki. It is a non-operational environment and its textual content is outdated.

Please visit our production wiki at https://wiki.gentoo.org

Příprava disků

From Gentoo Wiki (test)
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:AMD64/Installation/Disks and the translation is 100% complete.
AMD64 Handbook
Installation
About the installation
Choosing the media
Configuring the network
Preparing the disks
Installing stage3
Installing base system
Configuring the kernel
Configuring the system
Installing tools
Configuring the bootloader
Finalizing
Working with Gentoo
Portage introduction
USE flags
Portage features
Initscript system
Environment variables
Working with Portage
Files and directories
Variables
Mixing software branches
Additional tools
Custom package repository
Advanced features
Network configuration
Getting started
Advanced configuration
Modular networking
Wireless
Adding functionality
Dynamic management


Úvod k blokovým zařízením

Bloková zařízení

Pojďme se podrobně podívat na aspekty Gentoo Linuxu a Linuxu obecně ohledně disků, včetně Linuxových systémů souborů, diskových oddílů a blokových zařízení. Jakmile budou všechny podrobnosti pochopeny, diskové oddíly a systémy souborů mohou být vytvořeny k instalaci Gentoo Linuxu.

To begin, let's look at block devices. The most famous block device is probably the one that represents the first drive in a Linux system, namely /dev/sda. SCSI and Serial ATA drives are both labeled /dev/sd*; even IDE drives are labeled /dev/sd* with the libata framework in the kernel. When using the old device framework, then the first IDE drive is /dev/hda.

The block devices above represent an abstract interface to the disk. User programs can use these block devices to interact with the disk without worrying about whether the drives are IDE, SCSI, or something else. The program can simply address the storage on the disk as a bunch of contiguous, randomly-accessible 512-byte blocks.


Tabulky oddílů

Although it is theoretically possible to use a raw, unpartitioned disk to house a Linux system (when creating a btrfs RAID for example), this is almost never done in practice. Instead, disk block devices are split up into smaller, more manageable block devices. On amd64 systems, these are called partitions. There are currently two standard partitioning technologies in use: MBR and GPT.

MBR

"MBR (Master Boot Record") používá 32bitové identifikátory startovního sektoru a délky oddílů a podporuje tři typy oddílů: primární, rozšířený a logický. Informace o primárního oddílech jsou uloženy v master boot record samotném - velmi malé (obvykle 512 bytů) oblasti na začátku disku. V důsledku tohoto malého prostoru jsou podporovány pouze čtyři primární oddíly (například /dev/sda1/dev/sda4).

Pro podporu více oddílů je nutné označit jeden z primárních oddílů jak rozšířený oddíl. Tento oddíl pak může obsahovat logické oddíly (oddíly v oddílech).

Important
Although still supported by most motherboard manufacturers partition tables are considered legacy. Unless working with hardware that is pre-2010, it best to partition a disk using a GUID Partition Table. Readers who must proceed with MBR should acknowledge the following information:
  • Most post-2010 motherboards consider MBR a legacy (supported, but not ideal) boot mode.
  • Due to using 32-bit identifiers, master boot record partitioning tables cannot handle disks that are greater than 2 TiBs in size.
  • Unless a extended partition is created, MBR supports a maximum of four partitions.
  • The MBR setup does not provide any backup-MBR, so if an application or user overwrites the MBR, all partition information is lost.

The Handbook authors suggest using GPT whenever possible for Gentoo installations.

GPT

The GPT (GUID Partition Table) setup uses 64-bit identifiers for the partitions. The location in which it stores the partition information is much bigger than the 512 bytes of an MBR, which means there is practically no limit on the amount of partitions for a GPT disk. Also the size of a partition is bounded by a much greater limit (almost 8 ZiB - yes, zettabytes).

Pokud je systémovým softwarovým rozhraním mezi operačním systémem a firmwarem UEFI (namísto BIOSu), GPT je téměř nezbytné, jinak se objeví problémy kompatibility s MBR.

GPT also takes advantage of checksumming and redundancy. It carries CRC32 checksums to detect errors in the header and partition tables and has a backup GPT at the end of the disk. This backup table can be used to recover damage of the primary GPT near the beginning of the disk.

GPT nebo MBR

Z popisu uvedeného shora může člověk nabýt dojmu, že GPT by mělo být pokaždé doporučeným postupem, nicméně existuje tu několik háčků.

Using GPT on a BIOS-based computer works, but then one cannot dual-boot with a Microsoft Windows operating system. The reason is that Microsoft Windows will boot in UEFI mode if it detects a GPT partition label.

Some buggy motherboard firmware configured to boot in BIOS/CSM/legacy mode might also have problems with booting from GPT labeled disks. If that is the case, it might be possible to work around the problem by adding the boot/active flag on the protective MBR partition which has to be done through fdisk with the -t dos option to force it to read the partition table using the MBR format.

V takovém případě spusťte fdisk a přepněte označení pomocí klávesy a. Stisknutím 1 vyberete první oddíl, stisknutím w zapíšete změny na disk a opustíte aplikaci fdisk.

user $fdisk -t dos /dev/sda
Welcome to fdisk (util-linux 2.24.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
  
Command (m for help): a
Partition number (1-4): 1
  
Command (m for help): w

Použití UEFI

When installing Gentoo on a system that uses UEFI to boot the operating system (instead of BIOS), then it is important that an EFI System Partition (ESP) is created. The instructions for parted below contain the necessary pointers to correctly handle this operation.

The ESP must be a FAT variant (sometimes shown as vfat on Linux systems). The official UEFI specification denotes FAT12, 16, or 32 filesystems will be recognized by the UEFI firmware, although FAT32 is recommended for the ESP. Proceed in formatting the ESP as FAT32:

root #mkfs.fat -F 32 /dev/sda2
Important
If a FAT variant is not used for the ESP, the system's UEFI firmware is not guaranteed to find the bootloader (or Linux kernel) and most likely be unable to boot the system!

Pokročilá úložiště

Btrfs RAID

Jak je uvedeno shora, btrfs má schopnost vytvářet systém souborů napříč mnoha zařízeními. Systémy souborů btrfs generované tímto způsobem mohou fungovat v následujících módech: raid0, raid1, raid10, raid5 a raid 6. Módy RAID 5 a 6 byly podstatně vylepšeny, avšak nadále jsou považovány za nestabilní. Po vytvoření systému souborů napříč několik zařízeními je možné pomocí pár příkazů přidávat nová zařízení a stará odstraňovat. Btrfs vyžaduje větší zapojení než jiné systémy souborů, čímž činí záležitost méně přívětivou začátečníkům.

Systém souborů ext4 může být konvertován na systém souborů btrfs, což může být užitečné těm, kteří by rádi nainstalovali Gentoo na stabilní a dobře vyzkoušený systém souborů a postupně zvyšovali svoje znalosti o novějších systémech souborů, jako je btrfs, experimentováním.

LVM

The amd64 Installation CDs provide support for Logical Volume Manager (LVM). LVM increases the flexibility offered by the partitioning setup. The installation instructions below will focus on "regular" partitions, but it is good to know LVM is supported if that route is desired. Visit the LVM article for more details. Newcomers beware: although fully supported LVM is outside the scope of this guide.

Výchozí schéma oddílů

Po celý zbytek této příručky bude využíváno následující schéma oddílů jako jednoduchý příklad rozdělení:

Partition Filesystem Size Description
/dev/sda1 (bootloader) 2M BIOS boot partition
/dev/sda2 ext2 (or fat32 if UEFI is being used) 128M Boot/EFI system partition
/dev/sda3 (swap) 512M or higher Swap partition
/dev/sda4 ext4 Rest of the disk Root partition

Pokud je to dostatečné a čtenář se vydá cestou GPT, může okamžitě přejít na Výchozí: Použití parted k rozdělení disku. Ti, kteří se stále zajímají o MBR (hej - stává se to!) a používají výchozí rozdělení, mohou přeskočit na Alternativa: Použití fdisku k rozdělení disku.

fdisk a parted jsou obě utility k rozdělení disku. fdisk je dobře známá, stabilní, doporučená k rozdělení podle MBR, zatímco parted byla jedna z prvních utilit pro správu oddílů podporujících GTP oddíly. Ti, kterým se líbí rozhraní programu fdisk mohou použít gdisk (GPT disk) jako alternativu k parted.

Před uvedením instrukcí k tvorbě se první části budou věnovat detailnějšímu popisu toho, jak mohou být oddíly tvořeny a zmíní nejčastější problémy.

Návrh rozdělení oddílů

How many partitions and how big?

The number of partitions is highly dependent on the environment. For instance, if there are lots of users, then it is advised to have /home/ separate as it increases security and makes backups easier. If Gentoo is being installed to perform as a mail server, then /var/ should be separate as all mails are stored inside /var/. A good choice of filesystem will then maximize the performance. Game servers will have a separate /opt/ as most gaming servers are installed there. The reason is similar for the /home/ directory: security and backups. In most situations, /usr/ is to be kept big: not only will it contain the majority of applications, it typically also hosts the Gentoo ebuild repository (by default located at /usr/portage) which already takes around 650 MiB. This disk space estimate excludes the packages/ and distfiles/ directories that are generally stored within this ebuild repository.

It very much depends on what the administrator wants to achieve. Separate partitions or volumes have the following advantages:

  • Vyberete nejlepší systém souborů pro každý oddíl nebo svazek
  • Systému nemůže dojít volné místo na disku, pokud bude jediný nefunkční nástroj neustále zapisovat soubory na oddíl nebo svazek
  • Kontrola systému souborů je v případě potřeby časově zkrácena, jelikož kontroly lze činit paralelně (ačkoli tato výhoda se týká spíše více disků než více oddílů).
  • Bezpečnost může být zvýšena připojením některých oddílů v režimu pouze pro čtení, s volbou nosuid (setuid bity jsou ignorovány), noexec (spouštěcí bity jsou ignorovány) etc.

Nicméně mnohost oddílů má také nevýhody. Pokud nejsou správně nakonfigurovány, systém může skončit s velkým množstvím volného místa ne jednom oddíle a žádným na jiném. Další nepříjemností je to, že oddělené oddíly - zvláště u důležitých přípojných bodů jako je /usr/ nebo /var/ - často vyžadují od administrátora, aby startoval s pomocí initramfs a připojil oddíl ještě před startem zaváděcího skriptu. Ne vždy je to však pravidlem a výsledky se mohou lišit.

U SCSI a SATA platí limit 15 oddílů, pokud disk nepoužívá popisky GPT.

A co swap?

Neexistuje perfektní hodnota pro swap oddíl. Účelem swapu je poskytnout úložiště na disku v případě, že interní paměť jádra je pod tlakem. Swap umožňuje jádru přesunout stránky paměti, které nejspíše nebudou v krátkém časovém okamžiku potřebné na disk (swap nebo page-out) a paměť tak uvolnit. Samozřejmě pokud je tato paměť opět potřeba, je nutné tyto stránky opět vložit zpět do paměti (page-in), což zabere nějaký čas (jelikož disky jsou oproti vnitřní paměti pomalé).

Pokud systém nebude spouštět aplikace náročné na paměť nebo pokud má k dispozici hodně paměti, pak pravděpodobně nepotřebuje mnoho prostoru pro swap. Swap je však také používán pro uložení veškeré paměti v případě uspání. Pokud systém bude potřebovat uspávat, pak bude potřeba většího prostoru pro swap, obvykle nejméně v množství paměti instalované v systému.


Co je to bootovací oddíl BIOSu?

Bootvací oddíl BIOSu je velmi malý (1 až 2 MB) oddíl, do něhož mohou zavaděče jako GRUB2 umístit dodatečná data, která se nevejdou do přiděleného úložiště (několik stovek bytů v případě MBR) a která nemohou být umístěna jinam.

Tento oddíl není vždy potřeba, ale vezmeme-li v úvahu nízké nároky na prostor a těžkosti, které by nám vznikly při dokumentaci ostatních možností dělení, doporučujeme tak jako tak jej vytvořit.

For completeness, the BIOS boot partition is needed when a GPT partition layout is used with GRUB2 in PC/BIOS mode. It is not required when booting in EFI/UEFI mode.

Výchozí: Použití parted k rozdělení disku

V této kapitole budeme používat příkladmé rozdělení zmíněné v pokynech již dříve:

Partition Description
/dev/sda1 BIOS boot partition
/dev/sda2 Boot partition
/dev/sda3 Swap partition
/dev/sda4 Root partition

Rozdělení změňte dle osobních preferencí.

Prohlížení současného rozdělení oddílů pomocí parted

Aplikace parted poskytuje jednoduché rozhraní pro rozdělení disků a podporuje velmi velké oddíly (více než 2 TB). Spusťte parted nad diskem (v našem příkladu použijeme /dev/sda). Doporučuje se zvolit, aby parted použilo optimální zarovnání oddílů:

root #parted -a optimal /dev/sda
GNU Parted 2.3
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.

Zarovnání znamená, že oddíly začínají na dobře známých hranicích v disku, což zajišťuje že operace na disku na úrovni operačního systému (získávání stránek z disku) používají co nejméně vnitřních diskových operací. Nezarovnané oddíly mohou vyžadovat, aby disk načítal dvě stránky, ačkoli operační systém žádal pouze jedinou.

Se všemi volbami podporovanými parted se lze seznámit napsáním příkazu help a stisknutím enteru.

Nastavení popisku GPT

Většina disků na architekturách x86 nebo amd64 je předpřipravena s popiskem "msdos". Příkazem k označení popiskem GPT je v parted mklabel gpt:

Warning
Změna typu oddílu vymaže všechny oddíly z disku. Všechna data na disku budou ztracena.
(parted)mklabel gpt

Pro rozdělení disku dle MBR, použijte mklabel msdos.

Odstranění všech oddílů s parted

Není-li tak již učiněno (například prostřednictvím dřívější operace mklabel nebo proto, že jde o čerstvě formátovaný disk), nejprve odstraňte všechny existující oddíly z disku. Napiště print, abyste viděli existující oddíly a rm <N>, kde <N> představuje číslo oddílu, který má být odstraněn.

(parted)rm 2

Udělejte to stejné pro všechny zbývající oddíly, které nejsou potřeba. Nicméně dejte pozor na jakékoli chyby - parted vykonává změny bezprostředně (narozdíl od fdisk, který je uchovává a umožňuje uživateli jejich vzetí zpět před uložením nebo odchodem z programu).

Tvorba oddílů

Now parted will be used to create the partitions with the following settings:

  • Typ použitého oddílu. Většinou se jedná o primární. Pokud používáte popisek oddílů msdos, nezapomeňte, že nelze mít více než 4 primární oddíly. Pokud potřebujete více než 4 oddíly, vytvořte jeden z prvních čtyř oddílů jako rozšířený a vytvořte logické oddíly uvnitř něj.
  • Počátek umístění oddílu (může být vyjádřen v MB, GB, ...)
  • Konec oddílu (může být vyjádřen v MB, GB, ...)

Nejprve sdělte parted, že jednotky s nimiž budeme pracovat jsou megabyty (ve skutečnosti mebibyty, zkrácené na MiB, což je "standardní" zápis, nicméně mi budeme nadále používat MB, neboť je běžnější):

(parted)unit mib

Nyní vytvořte 2MB oddíl, který bude později použit zavaděčem GRUB2. K tomu použijte příkaz mkpart a sdělte parted, aby začalo na 1 MB a skončilo na 3 MB (čímž se vytvoří oddíl o velikosti 2 MB).

(parted)mkpart primary 1 3
(parted)name 1 grub
(parted)set 1 bios_grub on
(parted)print
Model: Virtio Block Device (virtblk)
Disk /dev/sda: 20480MiB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
  
Number   Start      End      Size     File system  Name   Flags
 1       1.00MiB    3.00MiB  2.00MiB               grub   bios_grub

To stejné udělejte s oddílem boot (128 MB), swap oddílem (v tomto příkladu 512 MB) a kořenovým oddílem který se rozprostírá po zbývající části disku (pročež označíme koncové umístění jako -1, což znamená konec disku mínus jeden MB, to je nejvzdálenější místo, kam mohou oddíly dosahovat).

(parted)mkpart primary 3 131
(parted)name 2 boot
(parted)mkpart primary 131 643
(parted)name 3 swap
(parted)mkpart primary 643 -1
(parted)name 4 rootfs

Používáte-li k bootování rozhraní UEFI (namísto BIOSu), označte bootovací oddíl jako systémový oddíl EFI. Parted tak učiní automaticky, pokud nastavíte na oddíle volbu "boot":

(parted)set 2 boot on

Výsledek vypadá takto:

(parted)print
Model: Virtio Block Device (virtblk)
Disk /dev/sda: 20480MiB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
  
Number   Start      End      Size     File system  Name   Flags
 1       1.00MiB    3.00MiB  2.00MiB               grub   bios_grub
 2       3.00MiB    131MiB   128MiB                boot   boot
 3       131MiB     643MiB   512MiB                swap
 4       643MiB     20479MiB 19836MiB              rootfs
Note
On an UEFI installation, the boot and esp flags will show up on the boot partition.

K ukončení parted použijte příkaz quit.

Alternativa: Použití fdisku k rozdělení disku

Note
Ačkoli by aktuální fdisk měl podporovat GPT, stále se ukazuje, že s ním má problémy. Instrukce níže uvedené předpokládají, že je použito rozdělení MBR.

Následující části vysvětlují jak vytvořit příkladmé rozdělení disku pomocí příkazu fdisk. Příkladmé rozdělení oddílů bylo zmíněno dříve:

Partition Description
/dev/sda1 BIOS boot partition
/dev/sda2 Boot partition
/dev/sda3 Swap partition
/dev/sda4 Root partition

Rozložení oddílů změňte podle osobních preferencí.

Prohlížení současného rozdělení oddílů

fdisk je populární a silný nástroj k rozdělení disku na oddíly. Spusťte jej nad diskem (v našem případě použijeme /dev/sda):

root #fdisk /dev/sda
Note
Podporu GPT využijte pomocí volby -t gpt. Doporučuje se pozorně studovat výstup příkazu fdisk v případě, že by aktuální vývoj fidsku změnil výchozí volbu na MBR. Zbývající část instrukcí předpokládá rozdělení MBR.

Použijte p k zobrazení aktuální konfigurace rozdělení disku:

Command (m for help):p
Disk /dev/sda: 240 heads, 63 sectors, 2184 cylinders
Units = cylinders of 15120 * 512 bytes
  
   Device Boot    Start       End    Blocks   Id  System
/dev/sda1   *         1        14    105808+  83  Linux
/dev/sda2            15        49    264600   82  Linux swap
/dev/sda3            50        70    158760   83  Linux
/dev/sda4            71      2184  15981840    5  Extended
/dev/sda5            71       209   1050808+  83  Linux
/dev/sda6           210       348   1050808+  83  Linux
/dev/sda7           349       626   2101648+  83  Linux
/dev/sda8           627       904   2101648+  83  Linux
/dev/sda9           905      2184   9676768+  83  Linux

Tento konkrétní disk byl nastaven tak, aby obsahoval sedm linuxových souborů systémů (každý z odpovídajícím oddílem označeným jako "Linux") a oddíl swap (označený jako "Linux swap").

Odstranění všech oddílů s fdiskem

Nejprve odstraníme všechny oddíly z disku. Pro vymazání oddílu stiskněte d. Vymazání existujícího oddílu /dev/sda1:

Command (m for help):d
Partition number (1-4): 1

The partition has now been scheduled for deletion. It will no longer show up when printing the list of partitions (p, but it will not be erased until the changes have been saved. This allows users to abort the operation if a mistake was made - in that case, type q immediately and hit Enter and the partition will not be deleted.

Opakovaně stiskněte p pro zobrazení výpisu oddílů a stiskněte d a číslo oddílu k vymazání. Nakonec bude tabulka oddílů prázdná:

Command (m for help):p
Disk /dev/sda: 30.0 GB, 30005821440 bytes
240 heads, 63 sectors/track, 3876 cylinders
Units = cylinders of 15120 * 512 = 7741440 bytes
  
Device Boot    Start       End    Blocks   Id  System

Nyní, když je tabulka oddílů v paměti prázdná, můžeme vytvářet oddíly.

Tvorba bootovacího oddílu BIOSu

First create a very small BIOS boot partition. Type n to create a new partition, then p to select a primary partition, followed by 1 to select the first primary partition. When prompted for the first sector, make sure it starts from 2048 (which is needed for the boot loader) and hit Enter. When prompted for the last sector, type +2M to create a partition 2 Mbyte in size:

Note
Začátek od sektoru 2048 je pojistkou v případě, že zavaděč nedetekuje tento oddíl k dispozici ke svému použití.
Command (m for help):n
Command action
  e   extended
  p   primary partition (1-4)
p
Partition number (1-4): 1
First sector (64-10486533532, default 64): 2048
Last sector, +sectors +size{M,K,G} (4096-10486533532, default 10486533532): +2M

Označte oddíl pro účely UEFI:

Command (m for help):t
Selected partition 1
Hex code (type L to list codes): 4
Changed system type of partition 1 to 4 (BIOS boot)
Note
Použití UEFI s rozdělení oddílů MBR se nedoporučuje. Pokud používáte systém s UEFI, použijte prosím rozdělení GPT.

Tvorba bootovacího oddílu

Nyní vytvořte malý bootovací oddíl. Pro vytvoření nového oddílu stiskněte n, potom p pro vytvoření primárního oddílu, následně 2 ke zvolení druhého primárního oddílu. Na dotaz ohledně prvního sektoru přijměte výchozí volbu stisknutím klávesy Enter. Na dotaz ohledně posledního sektoru, napište +128M pro vytvoření oddílu o velikosti 128 MB:

Command (m for help):n
Command action
  e   extended
  p   primary partition (1-4)
p
Partition number (1-4): 2
First sector (5198-10486533532, default 5198): (Hit enter)
Last sector, +sectors +size{M,K,G} (4096-10486533532, default 10486533532): +128M

Nyní po stisknutí p se zobrazí následující výpis:

Command (m for help):p
Disk /dev/sda: 30.0 GB, 30005821440 bytes
240 heads, 63 sectors/track, 3876 cylinders
Units = cylinders of 15120 * 512 = 7741440 bytes
  
   Device Boot    Start       End    Blocks   Id  System
/dev/sda1             1         3      5198+  ef  EFI (FAT-12/16/32)
/dev/sda2             3        14    105808+  83  Linux

Stiskněte a pro přepnutí bootovací značky na oddíle a zvolte 2. Po opětovném stisknutí p si všimněte, že ve sloupci "Boot" se nachází *.

Vytvoření swap oddílu

Pro vytvoření swap oddílu stiskněte n pro vytvoření nového oddílu, poté p pro vytvoření primárního oddílu. Po té stiskněte 3 pro vytvoření třetího primárního oddílu, /dev/sda3. Na dotaz ohledně prvního sektoru stiskněte Enter. Na dotaz ohledně posledního sektoru napište +512M (nebo jinou hodnotu dle potřebného prostoru pro swap) k vytvoření oddílu velkého 512 MB.

Po tomto všem stiskněte t k nastavení typu oddílu, stisknutím 3 vyberete právě vytvořený oddíl a po té vepiště "82" pro nastavení typu na "Linux Swap".

Vytvoření kořenového oddílu

Nakonec vytvoříme kořenový oddíl, k vytvoření nového oddílu stiskněte n, po té p pro vytvoření primárního oddílu. Po té stiskněte 4 k vytvoření čtvrtého primárního oddílu /dev/sda4. Na dotaz ohledně prvního sektoru stiskněte Enter. Na dotaze ohledně posledního sektoru, stiskněte Enter, čímž vytvoříte zaplníte zbývající prostor na disku. Po dokončení těchto kroků by mělo stisknutí p zobrazit tabulku oddílu, která bude vypadat podobně jako takto:

Command (m for help):p
Disk /dev/sda: 30.0 GB, 30005821440 bytes
240 heads, 63 sectors/track, 3876 cylinders
Units = cylinders of 15120 * 512 = 7741440 bytes
  
   Device Boot    Start       End    Blocks   Id  System
/dev/sda1             1         3      5198+  ef  EFI (FAT-12/16/32)
/dev/sda2   *         3        14    105808+  83  Linux
/dev/sda3            15        81    506520   82  Linux swap
/dev/sda4            82      3876  28690200   83  Linux

Uložení rozložení oddílů

K uložení rozdělení oddílů disků a ukončení programu fdisk stiskněte w.

Command (m for help):w

Po té, co jsme vytvořili oddíly, je čas umístit na ně systém souborů.


Vytvoření systému souborů

Úvod

Po té, co jsme vytvořili diskové oddíly, přichází čas umístit na ně systém souborů. V následující sekci si popíšeme různé systémy souborů, které Linux podporuje. Čtenáři, kteří už vědí, jaký systém souborů použít, mohou pokračovat na Aplikaci systému souborů na diskový oddíl. Ostatní by měli číst dál a zjistit, jaké systémy souborů jsou jim k dispozici.

Systémy souborů

Several filesystems are available. Some of them are found stable on the amd64 architecture - it is advised to read up on the filesystems and their support state before selecting a more experimental one for important partitions.

btrfs
Systém souborů příští generace, který poskytuje mnoho pokročilých funkcí jako je tvorba snapshotů, samoléčení prostřednictvím kontrolních součtů, transparentní komprese, pododdíly a integrovaný RAID. Pár distribucí jej začalo poskytovat jako výchozí volbu, nicméně není ještě připraven pro běžný provoz. Zprávy o porušených systémech souborů jsou časté. Jeho vývojáři naléhají na uživatele, aby používali z bezpečnostních důvodů nejnovější verze jádra, jelikož ty staré obsahují známé chyby. Taková situace panuje už léta a je příliš brzy na to říci, jestli došlo ke změně. Opravy narušení jsou zřídka opravovány ve starých jádrech. Při použití tohoto systému souborů postupujte obezřetně!
ext2
Toto je vyzkoušený a opravdový linuxový systém souborů, který ovšem nemá žurnál metadat, což znamená, že běžná kontrola systému souborů během startu může být značně časově náročná. V současnosti je na výběr celá řada systémů souborů nové generace, jejichž konzistence může být zkontrolována rychle a proto jsou obecně upřednostňovány oproti svým bezžurnálovým protějšků. Žurnálovací systémy souborů předchází dlouhým prodlevám při bootování systému, když je systém souborů v nekonzistentním stavu.
ext3
Žurnálem vybavená verze systému souborů ext2, která poskytuje žurnálování metadat pro rychlou obnovu s přídavkem dalších vylepšených módů žurnálu jako je full data nebo ordered data žurnálování. Používá HTree index, který umožňuje vysoký výkon téměř ve všech situacích. ve zlratce je ext3 velmi dobrý a spolehlivý systém souborů.
ext4
Ext4 byl od počátku oddělen z ext3 a přináší nové funkce, vylepšení výkonu a odstraňuje velikostní limity s menšími změna ve formátu dat na disku. Může pokrýt svazky až do velikosti 1 EB s maximální velikostí jednoho souboru 16TB. Na rozdíl od klasické alokace bloků pomocí bitmap z ext2/3, ext4 používá extenty, což vylepšuje výkon při práci s velkými soubory a snižuje fragmentaci. Ext4 přináší také sofistikovanější algoritmy pro alokaci bloků (zpožděná alokace a vícebloková alokace) poskytující ovladači systému souborů více cest k optimalizaci uložení dat na disku. Ext4 je doporučeným všestranným systémem souborů na všech platformách.
f2fs
Flash-Friendly File System byl původně vytořen společností Samsung k použití v pamětech NAND flash. Ke 2. čtvrtletí roku 2016 je stále považován za nezralý, ale jedná se o dobrou volbu při instalaci Gentoo na microSD karty, USB disky a další úložná zařízení založená na technologii flash.
JFS
Vysoce výkonný žurnálovací systém souborů společnosti IBM. JFS je lehký, rychlý a spolehlivý systém souborů založený na B+tree, s dobrým výkonem v různých podmínkách.
ReiserFS
B+tree žurnálovací systém souborů, který má dobrý celkový výkon, zejména při práci s mnoha malými soubory za cenu více spotřebovaných cyklů CPU. ReiserFS je méně udržován, než ostatní systémy souborů.
XFS
Systém souborů s žurnálováním metadat, který robustní sadou vlastností a je optimalizován ke škálování. XFS je náchylnější k různým problémům s hardwarem.
vfat
Systém souborů známý také jako FAT32 je Linuxem podporován, avšak neobsahuje podporu pro nastavení práv. Nejvíce je používán z důvodů interoperability s ostatními operečními systémy (především Microsoft Windows), ale je nepostradatelný také pro určitý systémový firmware (jako je UEFI).
NTFS
"New Technology" systém souborů je hlavním systémem souborů Microsoft Windows. Podobně jako výše uvedený vfat neukládá nastavení práv nebo rozšířené atributy nezbytné pro řádné fungování BSD nebo Linux, protože nemůže být použit jako kořenový systém souborů. Měl by být použit pouze pro interoperabilitu se systémy Microsoft Windows (povšimněte si zvýrazněného slova pouze).

Pokud používáte ext2, ext3 nebo ext4 na malých oddílech (méně než 8 GB), pak jej musíte vytvořit s pomocí správných voleb, aby byl rezervován dostatek uzlů. Aplikace mke2fs (mkfs.ext2) používá nastavení "bytes-per-inode" k výpočtu toho, kolik uzlů by měl systém souborů mít. U menších oddílů je radno toto číslo zvýšit.

U ext2 tak lze učinit pomocí následujícího příkazu:

root #mkfs.ext2 -T small /dev/<device>

U ext3 a ext4 přidejte volbu -j, abyste zapnuli žurnálování:

root #mkfs.ext2 -j -T small /dev/<device>

To obvykle zečtyřnásobí množství uzlů daného systému souborů, jelikož hodnota "bytes-per-inode" se zmenší z každých 16kB na každé 4kB. Dále lze tuto hodnotu nastavovat poskytnutím poměru:

root #mkfs.ext2 -i <poměr> /dev/<device>

Aplikace systému souborů na diskový oddíl

Systém souborů vytvoříme pomocí uživatelských utilit, které jsou k dispozici pro každý z možných systémů souborů. Klikněte na název systému souborů v níže uvedené tabulce pro doplňující informace o každém z nich.

Systém souborů Příkaz k vytvoření Na minimálním CD? Balíček
btrfs mkfs.btrfs Ano sys-fs/btrfs-progs
ext2 mkfs.ext2 Ano sys-fs/e2fsprogs
ext3 mkfs.ext3 Ano sys-fs/e2fsprogs
ext4 mkfs.ext4 Ano sys-fs/e2fsprogs
f2fs mkfs.f2fs Ano sys-fs/f2fs-tools
jfs mkfs.jfs Ano sys-fs/jfsutils
reiserfs mkfs.reiserfs Ano sys-fs/reiserfsprogs
xfs mkfs.xfs Ano sys-fs/xfsprogs
vfat mkfs.vfat Ano sys-fs/dosfstools
NTFS mkfs.ntfs Ano sys-fs/ntfs3g

For instance, to have the boot partition (/dev/sda2) in ext2 and the root partition (/dev/sda4) in ext4 as used in the example partition structure, the following commands would be used:

root #mkfs.ext2 /dev/sda2
root #mkfs.ext4 /dev/sda4

Nyní vytvořte systém souborů na nově vytvořených oddílech (nebo logických svazcích).

Aktivace swap oddílu

mkswap je příkaz použitý k inicializaci swap oddílů:

root #mkswap /dev/sda3

K aktivaci oddílu swap použijte příkaz swapon:

root #swapon /dev/sda3

Vytvořte a aktivujte swap s příkazy uvedenými shora.

Připojení

Now that the partitions are initialized and are housing a filesystem, it is time to mount those partitions. Use the mount command, but don't forget to create the necessary mount directories for every partition created. As an example we mount the root partition:

root #mount /dev/sda4 /mnt/gentoo
Note
Pokud je nutné, aby adresář /tmp/ byl na vlastním oddíle, ujistěte se, že oprávnění budou po připojení změněna:
root #chmod 1777 /mnt/gentoo/tmp
To stejné platí pro adresář /var/tmp.

Později dojde k připojení systému souborů proc (virtuální rozhraní jádra) stejně jako dalších pseudo systémů souborů. Nejprve však nainstalujeme instalační soubory Gentoo.