Ext2: typy souborů

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Doplněno podrobnější vysvětlení implementace symlinku.)
(Přidány pevné a symbolické linky ve Windows.)
 
(Není zobrazena 1 mezilehlá verze od 1 uživatele.)
Řádka 2: Řádka 2:
  
 
Souborový systém ext2 (a souborové systémy z něj vycházející) rozlišují následující typy souborů.
 
Souborový systém ext2 (a souborové systémy z něj vycházející) rozlišují následující typy souborů.
 
<div class="Poznamka">
 
Nepleťte s pojmem „typ souboru“ ve smyslu „jaká data soubor obsahuje“!
 
 
Například typy souborů „obrázek JPEG“, „dokument OpenOffice“, „zvukový soubor OGG“ apod. určují pouze jaká data soubor obsahuje. Z hlediska následujícího rozdělení se ve všech případech jedná o typ „běžný soubor“.
 
</div>
 
  
 
== Běžný soubor (Regular File, -) ==
 
== Běžný soubor (Regular File, -) ==
Řádka 99: Řádka 93:
 
* Jak zjistíte, jestli je soubor hard-link?
 
* Jak zjistíte, jestli je soubor hard-link?
 
* Jak je v linuxových souborových systémech realizován adresář a jak pevný link (viz [[Ext2: adresáře]])?
 
* Jak je v linuxových souborových systémech realizován adresář a jak pevný link (viz [[Ext2: adresáře]])?
 +
* Zkuste vytvořit soubor <code>pokus.txt</code> a pevný link na tento soubor. Ověřte ve výpisu, zda se jedná o pevný link.
 +
* Zkuste vytvořit symbolický link na <code>pokus.txt</code>. Ověřte ve výpisu, zda se jedná o pevný link.
 +
* Bude symbolický link fungovat, když smažete původní soubor? Bude fungovat pevný link? Jak se změní množství obsazeného místa na disku?
 +
 +
 +
<div class="Poznamka">
 +
'''Upozornění:'''
 +
 +
Nepleťte si výše uvedené typy souborů s&nbsp;„typem souboru“ ve smyslu „jaká data soubor obsahuje“!
 +
 +
Například „typy souborů“ „obrázek JPEG“, „dokument OpenOffice“, „zvukový soubor OGG“ apod. určují pouze jaká data soubor obsahuje. Z&nbsp;pohledu výše uvedeného rozdělení se u&nbsp;všech těchto souborů jedná o&nbsp;„běžný soubor“.
 +
</div>
 +
 +
 +
== Pevné a symbolické linky ve Windows ==
 +
 +
* Souborový systém NTFS ve Windows podporuje pevné a symbolické linky už dlouho, ale dříve neměl uživatel možnost linky vytvářet.
 +
* V&nbsp;aktuálních verzích Windows (rok 2024) lze použít příkaz <code>mklink</code>.
  
  

Aktuální verze z 11. 11. 2024, 15:44


Souborový systém ext2 (a souborové systémy z něj vycházející) rozlišují následující typy souborů.

Obsah

Běžný soubor (Regular File, -)

Adresář (Directory, d)

Pevný odkaz (hardlink)

Proč bych chtěl mít dva názvy pro stejný soubor?
  • Hodí se to, když chci mít stejný soubor přístupný z více adresářů.
  • Třeba soubor BigBangTheory-Season1 chci mít v adresářích it-serialy, poslat-frantovishledni-dnes-vecer. Mohl bych vytvořit tři kopie souboru, ale zabíraly by mi trojnásobek místa. Je lepší vytvořit pevné linky na tentýž soubor.
  • Nebo chci mít soubor dokumentace.docx v adresáři maturitni-praceto-do. Přitom když změním obsah v jednom adresáři, chci, aby se změna promítla v obou souborech.

Symbolický odkaz (symbolic link, symlink l)

echo ahoj > ahoj.txt
ln -s ahoj.txt odkaz
cp odkaz odkaz2
ln -s odkaz odkaz3
ln -s /media/flash/seznam.txt seznam.txt

Všimněte si, že v souborových systémech ext2/3/4 odpovídá velikost souboru u symbolického linku délce cesty — „data souboru“ obsahují cestu k cílovému souboru.

Pokud je cesta k odkazovanému souboru krátká, uloží se cesta přímo v i-node a symbolický link nezabírá žádný datový blok. Pokud je cesta delší, uloží se cesta do datového bloku. Srovnete:

$ touch soubor
$ touch abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
$ ln -s soubor s1
$ ln -s abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz s2
$ ls -lis
celkem 4
399148 0 -rw-r--r-- 1 student student  0 dub 27 09:09 abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz
398178 0 -rw-r--r-- 1 student student  0 dub 27 09:08 soubor
399152 0 lrwxrwxrwx 1 student student  6 dub 27 09:09 s1 -> soubor
399154 4 lrwxrwxrwx 1 student student 78 dub 27 09:10 s2 -> abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz


Blokové a znakové zařízení (Block device, character device, b resp. c)

Příklady:

  • /dev/stdin
  • /dev/null
  • /dev/sda1


Pojmenovaná roura (named pipe)


Socket (Socket)


Zopakujte si


Upozornění:

Nepleťte si výše uvedené typy souborů s „typem souboru“ ve smyslu „jaká data soubor obsahuje“!

Například „typy souborů“ „obrázek JPEG“, „dokument OpenOffice“, „zvukový soubor OGG“ apod. určují pouze jaká data soubor obsahuje. Z pohledu výše uvedeného rozdělení se u všech těchto souborů jedná o „běžný soubor“.


Pevné a symbolické linky ve Windows


Související stránky


Použité zdroje:

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje