Ero sivun ”Inode” versioiden välillä

Wikipediasta
Siirry navigaatioon Siirry hakuun
[katsottu versio][katsottu versio]
Poistettu sisältö Lisätty sisältö
Ei muokkausyhteenvetoa
Rivi 5: Rivi 5:


[[POSIX]]-standardin mukaan inode pitää kirjaa laitteesta (tiedostojärjestämästä) jolla tiedosto sijaitsee, inoden numeron, käyttöoikeusbitit, tiedoston omistavan käyttäjän ja ryhmän numeron, tiedoston koon ja sille varattujen lohkojen määrän, aikaleimat. Unix pitää myös kirjaa inoden linkkien määrästä ja stardardin mukaan inode kertoo suositellun blokkikoon tiedoston lukemiseksi.<ref>https://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/stat.h.html </ref>
[[POSIX]]-standardin mukaan inode pitää kirjaa laitteesta (tiedostojärjestämästä) jolla tiedosto sijaitsee, inoden numeron, käyttöoikeusbitit, tiedoston omistavan käyttäjän ja ryhmän numeron, tiedoston koon ja sille varattujen lohkojen määrän, aikaleimat. Unix pitää myös kirjaa inoden linkkien määrästä ja stardardin mukaan inode kertoo suositellun blokkikoon tiedoston lukemiseksi.<ref>https://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/stat.h.html </ref>
inode voi käyttöjärjestelmästä sen tukemista tiedostojärjestelmästä riippuen sisältää myös muita tietoja.
inode voi käyttöjärjestelmästä sen tukemista tiedostojärjestelmästä riippuen sisältää myös muita tietoja, joita varten inodelle varataan lisää tilaa.

Tiedoston omistaja ja ryhmä on ilmoitettu kokonaislukuna. Tämän vuoksi käyttäjien tiedostot sisältävää tiedostojärjestelmää ei usein voi siirtää toiseen järjestelmään, jos niillä ei käytetä yhteisiä kirjautumistietoja.

POSIX-järjestelmä tallentaa tiedostolle kolme aikaleimaa ([[Unix-aika|Unix-ajan]] <code>time_t</code>-muodossa)

*mtime on viimeinen tiedoston muutospäivä
*ctime on "status change", mikä viittaa inode muuttamiseen
*atime on viimeinen tiedoston avauspäivä


inoden tietoja luetaan stat(2)-järjestelmäkutsulla.
inoden tietoja luetaan stat(2)-järjestelmäkutsulla.

Versio 19. kesäkuuta 2023 kello 22.41

inode on Unixin kaltaisten käyttöjärjestelmien tiedostojärjestelmissä käytetty tietorakenne, joka säilyttää metadata tiedostosta.

Unixissa tiedostojärjestelmän hakemisto säilyttää ainoastaan tiedoston nimen, ja linkin sen inodeen, jossa muut tiedot sijaitsevat.

POSIX-standardin mukaan inode pitää kirjaa laitteesta (tiedostojärjestämästä) jolla tiedosto sijaitsee, inoden numeron, käyttöoikeusbitit, tiedoston omistavan käyttäjän ja ryhmän numeron, tiedoston koon ja sille varattujen lohkojen määrän, aikaleimat. Unix pitää myös kirjaa inoden linkkien määrästä ja stardardin mukaan inode kertoo suositellun blokkikoon tiedoston lukemiseksi.[1] inode voi käyttöjärjestelmästä sen tukemista tiedostojärjestelmästä riippuen sisältää myös muita tietoja, joita varten inodelle varataan lisää tilaa.

Tiedoston omistaja ja ryhmä on ilmoitettu kokonaislukuna. Tämän vuoksi käyttäjien tiedostot sisältävää tiedostojärjestelmää ei usein voi siirtää toiseen järjestelmään, jos niillä ei käytetä yhteisiä kirjautumistietoja.

POSIX-järjestelmä tallentaa tiedostolle kolme aikaleimaa (Unix-ajan time_t-muodossa)

  • mtime on viimeinen tiedoston muutospäivä
  • ctime on "status change", mikä viittaa inode muuttamiseen
  • atime on viimeinen tiedoston avauspäivä

inoden tietoja luetaan stat(2)-järjestelmäkutsulla.

Unixin tavasta käsitellä tiedostoja inoden kautta seuraa muutamia erikoisuuksia. Tiedostolla voi olla useita nimiä ja se voi esiintyä eri paikoissa tiedostojärjestelmässä varaamatta tilaa useaan kertaan. Tätä on Unixissa kova linkki tiedostoon.

Unix vaatii että jokaiselle inodella pitää olla ainutkertainen inoden numero (POSIX-standardissa "File serial number"). Joissain tapauksissa käyttöjärjestelmä joutuu simuloimaan tätä ominaisuutta ja keksimään inode-numerot tiedostojärjestelmissä, missä niitä ei ole (kuten MS-DOS:in FAT).

Monissa vanhemmissa tiedostojärjestelmissä inodet varataan kiinteästi, kun tiedostojärjestelmä alustetaan. Täten ne voivat loppua kesken, eikä uusia tiedostoja voi luoda, vaikka levyllä olisi tilaa. Tämän vuoksi levylle luotavien inodejen määrää voi säätää.

Esimerkiksi Linuxin ext2- ja ext3-tiedostojärjestelmissä inoden koko on 128 tavua ja oletusasetuksilla oletetaan että levyn voi tallentaa täyteen kahden kilotavun tiedostoja inodejen loppumatta.[2][3]

Lähteet

  1. https://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/stat.h.html
  2. https://docs.kernel.org/filesystems/ext4/dynamic.html
  3. http://www.linfo.org/inode.html