V unixových souborových systémech jsou adresáře pouze speciální soubory se speciálními adresářovými strukturami, které obsahují podřízený název souboru, velikost souboru a referenční číslo inodu.
Skutečná metadata souboru nad rámec tohoto jsou normálně uložena v samotném inodu.
Moje otázka zní. Jak lze číst skutečnou speciální adresářovou strukturu v její nezpracované podobě místo v její interpretované podobě.
Ano, vím, že můžete použít ls k zobrazení tamních souborů. To není to, co hledám.
Přijatá odpověď:
Jednoduchá odpověď je, že chcete číst soubor adresáře
pomocí příkazu jako cat .
, cat /etc
nebo cat mydir
.
Samozřejmě, protože se jedná o „surová“ data,
byste chtěli použít program, který se lépe hodí
k zobrazování dat bez ASCII způsobem přátelským pro člověka; např. hexdump
nebo od
.
Bohužel, jak je uvedeno v části Kdy přestaly být adresáře čitelné jako soubory?, většina verzí Unixu
, které byly vydány v posledních zhruba dvou desetiletích, to neumožňuje.
Takže odpověď na vaši otázku může být
„najít verzi Unixu, která stále umožňuje čtení adresářů“.
AIX, většina verzí BSD,
a všechny kromě nejnovějších verzí Solaris mohou být způsobilé.
Nalezení Linuxu, který to umožňuje, může vyžadovat použití stroje času.