Inode - egy

részletek

A fájlrendszer is teremtett és adatszerkezetek amelyek információt tartalmaznak a fájlokat. Minden fájlnak van egy leíró, amely a inode szám (gyakran nevezik „i-szám” vagy "inode), a fájlrendszerben található, amely a fájl maga.

Inode információt tárol a fájlokat, mint például a tartozás a tulajdonos (felhasználó és csoport), a hozzáférési mód (olvasás, írás, kezdeni, hogy végre) és a fájl típusát. Számos inode-ot, ami azt jelzi, a fájlok maximális számát engedélyezett egy adott fájlrendszer. Általában, ha a fájlrendszer létrehozása körülbelül 1% -át elkülönített leírója.

  • Inode szám tárolása a inode tábla egy bizonyos helyen eszköz; inode számát, a kernel tudja olvasni a tartalmát a inode, beleértve az adatok mutatók és egyéb fájl tartalmát.
  • Inode szám fájl segítségével lehet megtekinteni az ls -i parancsot. és ls -l parancs megmutatja a tárolt információ a leírója.
  • Fájlrendszerek, amelyek nem tartoznak a hagyományos UNIX fájlrendszer, mint például a stat - rendszer hívást. Így az információk programokat.

A fájlnevek és a könyvtár tartalmát

  • Fájlleírók nem tárolja a fájlneveket, csak információt azok tartalmát.
  • Könyvtárak Unix listái „referencia” szerkezetek, amelyek mindegyike tartalmaz egy fájlnevet és egy inode számát.
  • A kernel kell tekintenünk azt a könyvtárat a fájl nevét, majd átalakítani, hogy a nevét a megfelelő inode szám, siker esetén.

Képviselete az adatokat a központi memória úgynevezett struct inode (inode strukturális) (BSD a operációs rendszer használja a kifejezést vnode. Letter v jelzi, hogy melyik virtuális fájl rendszer kernel.

Leírás inode POSIX

Unix szabványoknak. Állandó fájlokat kell a következő tulajdonságokkal rendelkezik:

  • Fájl bájtban.
  • Eszköz azonosító (amely azonosítja az eszközt tartalmazó fájl).
  • User ID. A tulajdonos a fájl.
  • ID fájlcsoportban.
  • Fájl mód határozza meg, hogy mely felhasználók tudja olvasni, írni és végrehajtani a fájlt.
  • ctime. változás ideje), a legújabb a fájl tartalmát módosítási (mtime. módosítás ideje), és az utolsó lapot (atime. elérési idő).
  • A referencia száma jelzi a hard linkek száma. inode mutatva.
  • Rámutatnak a lemezegység tároló fájl tartalma (lásd szerkezete a inode pointer).

A stat hívás beolvassa a fájl inode számát és néhány információt a leírója.

Szó eredete

A pontos okát a használata „és” a csomópontok (nodah) ismeretlen. Válaszul arra a kérdésre egyik úttörője Unix alapú rendszerek Dennis Ritchie azt mondta:

Őszintén szólva, én nem tudtam róla. Ez csak egy kifejezés elkezdtük használni. „Index”, azt hiszem, azért szükséges, mert a kissé szokatlan szerkezet a fájlrendszer adatait tárolja fájlhozzáférést lapos (két dimenziós) tömb a lemezre, és az összes könyvtárhierarchiában információkat elkülönítve tárolják. Így még-szám az index ebbe tömb, és node-- kiválasztott tömbelem. (Az előtag „u” használták az első változatát az útmutató; végül leállítását a kötőjel).

Ie index csomópont (csomópont index, elem) → index-csomópont → inode → inode - fokozatos rövidülését és a fúziós kifejezést index csomópontot. Szerint a másik változat, az eredeti levél i az i -node szóból származik információt (információ).

Jellemzők fájlrendszer, ami azt eredményezi, hogy a használata a inode, elriasztja sok felhasználó nem ismeri ezt a fogalmat:

  • Ha több név ugyanarra a inode (hard linkeket), a nevek egyenértékűnek tekintik. Először létre nevét semmilyen különleges helyzetben nem rendelkezik. Ez eltér a viselkedése hasonló szimbolikus linkeket. amely függ az eredeti nevet.
  • Inode lehet, hogy nincs linkeket. Tipikusan ilyen fájlt törölni kell a lemez (ezért a törlés visszavonása műsortípus Unix nem teszik lehetővé, hogy létrehozza a pontos távoli fájl neve), és a források szabadon (ez egy normális fájl törlési folyamat), de ha bármilyen folyamatok nyitva tartani egy fájlt, akkor tudja tartani az ahhoz való hozzáférés, és a fájl véglegesen törlődik csak ha zárva van az utolsó utalás. Ez vonatkozik a végrehajtható másolatait, amelyek nyitva tartják folyamat, hogy eleget tegyen. Emiatt a frissítési program ajánlott eltávolítani a régi példányt, és hozzon létre egy új inode frissített változata, amely egyetlen példányát sem a régi verzió nem folytatódik.
  • Általában nincs mód összehasonlítani a nyitott fájlt, és azt a nevet, amellyel megnyitották. Az operációs rendszer átalakítja a fájl nevét a inode szám az első lehetőséget, majd a „elfelejti” a fájl nevét. Így getwd könyvtár function () elkezdik keresni a szülő könyvtár inode fájlt, amely megegyezik a fájlt „” könyvtárba. majd keresse meg a szülő könyvtár az aktuális, és így tovább, amíg el nem érik a „/” könyvtárban. SVR4 és
  • Korábban úgy volt, lehetséges, hogy kemény a könyvtár linkekkel. Ez tette a könyvtár szerkezete egy irányított gráf helyett egy fa. azaz összefüggő gráf N-1 csomópontok N és élek. Például a katalógusban volt lehetősége, hogy egy megfelelő szülő. Modern rendszerek nem teszik lehetővé az ilyen kétértelműség, kivéve a gyökérkönyvtárban, amely tekinthető a szülők.
  • Fájl inode szám ugyanaz marad, ha a fájl áthelyezése másik könyvtárba ugyanazon az eszközön vagy töredezettségmentesítés. Ezért, mozgó vagy tartalmazó könyvtárhoz vagy annak tartalmát (vagy mindketten együtt) nem elég ahhoz, hogy megakadályozza a hozzáférést meg futó folyamat, ha a folyamat lehet számítani a inode számát. Azt is kimondja, hogy teljes mértékben szabályozza a viselkedését az inode nem hajtható végre a különböző nem-UNIX fájlrendszer, mint a FAT és utódai, akik nem tudják, hogy az ilyen állandó „állandóság”, ha a fájl könyvtárat és annak tartalmát át.

gyakorlati alkalmazása

A változatos programok. rendszergazdák használják az operációs rendszer merevlemezek pfiles példaként szolgálhatnak a jelen esetben, mert az igény egy olyan természetes módon átalakítani az inode számát a fájl elérési útját, és fordítva. Ezt végre lehet hajtani -inum kereső program files vagy -i parancs).

Inode lehet „befejezni”. Ebben az esetben nem lehet írni az adatokat a készülék, akkor is, ha van elég szabad hely.

A probléma Y2038

Bizonyos fájlrendszerek alapján egy leíró, védve Y2038 probléma (más néven Unix idő), azzal a céllal, hogy megakadályozza „túlcsordulás” dátum, de sajnos, nem minden ilyen fájlrendszerek védve vannak ilyen problémák. Ha a kiszolgáló konfigurálása nem használja ezeket

Kapcsolódó cikkek