attr - kiterjesztett attribútumok XFS fájlrendszer objektumokon
attr [ -LRSq ] -s attrname [ -V attrvalue ] pathname
attr [ -LRSq ] -g attrname pathname
attr [ -LRSq ] -r attrname pathname
attr [ -LRSq ] -l pathname
A kiterjesztett attribútumok lehetővé teszik a felhasználó számára, hogy név:érték párokat csatoljon az XFS fájlrendszeren belüli objektumokhoz.
Ez a dokumentum az attr parancsot írja le, amely többnyire kompatibilis az azonos nevű IRIX paranccsal. Ezért kifejezetten az XFS fájlrendszer felhasználóit célozza meg – a fájlrendszertől független kiterjesztett attribútumkezeléshez olvassa el a getfattr(1) és setfattr(1) dokumentációt.
A kiterjesztett attribútumok a fájl metainformációinak tárolására használhatók. Például a "character-set=kanji" megmondhatja a dokumentumböngészőnek, hogy a Kanji karakterkészletet használja a dokumentum megjelenítésekor, a "thumbnail=..." pedig csökkentett felbontású áttekintést biztosíthat egy nagy felbontású grafikus képről.
Az XFS fájlrendszerben a nevek legfeljebb 256 bájt hosszúak lehetnek, amelyeket az első 0 bájt zár le. A cél az, hogy nyomtatható ASCII (vagy más karakterkészlet) nevek legyenek az attribútum számára. Az értékek legfeljebb 64 KB tetszőleges bináris adatot tartalmazhatnak.
Az attribútumok minden típusú XFS inode-hoz csatolhatók: normál fájlok, könyvtárak, szimbolikus hivatkozások, eszközcsomópontok stb.
Az XFS minden fájlrendszer-objektumhoz 2 diszjunkt attribútumnévteret használ. Ezek a gyökér és a felhasználói címterek. A root címtér csak a szuperfelhasználó számára érhető el, és csak akkor, ha a függvényhíváshoz egy flag argumentumot ad meg. Más felhasználók nem látják és nem tudják módosítani az attribútumokat a root címtérben. A felhasználói címteret a normál fájlengedélyezési mechanizmus védi, így a fájl tulajdonosa eldöntheti, hogy ki láthatja és/vagy módosíthatja az adott fájl attribútumai értékét.
Az attr segédprogram lehetővé teszi a fájlrendszer-objektumokhoz társított kiterjesztett attribútumok kezelését a shell szkripteken belül.
Az attr négy fő műveletet hajthat végre:
A -g attrname opció arra utasítja az attr-t, hogy keressen a megnevezett objektumban, és nyomtassa ki (stdout) az adott attribútum nevéhez rendelt értéket. A -q jelzővel az stdout pontosan és csak az attribútum értéke lesz, amely alkalmas közvetlenül fájlba történő tárolásra vagy csővezetékes paranccsal történő feldolgozásra.
A -l opció megmondja, hogy az attr felsorolja az objektumhoz társított összes attribútum nevét, valamint az egyes attribútumok értékében lévő bájtok számát. A -q kapcsolóval az stdout csak az attribútumnevek egyszerű listája lesz, soronként egyet, amely alkalmas a szkriptbe való bevitelre.
A -r attrname opció azt mondja az attr-nek, hogy távolítsa el az adott nevű attribútumot az objektumból, ha az attribútum létezik. Sikeres befejezés esetén nincs kimenet.
A -s attrname opció arra utasítja az attr-t, hogy az objektum elnevezett attribútumaként az stdin-ből olvasott értékre állítsa be. Ha már létezik ilyen nevű attribútum, akkor az értéke lecserélődik erre az attribútumra. Ha még nem létezik ilyen nevű attribútum, akkor egy ilyen értékkel jön létre. A -V attrvalue jelzővel az attribútum attrvalue értékre lesz beállítva, és az stdin nem kerül beolvasásra. A -q jelzővel az stdout nem használható. A -q jelző nélkül a rendszer kinyomtatja az attribútum nevét és a teljes értéket tartalmazó üzenetet.
Ha a -L opció adott, és a megnevezett objektum szimbolikus hivatkozás, akkor a szimbolikus hivatkozás által hivatkozott objektum attribútumait használja. E lehetőség nélkül magának a szimbolikus hivatkozásnak az attribútumait használja.
Ha a -R opció adott, és a folyamat megfelelő jogosultságokkal rendelkezik, a USER attribútum névtér helyett a root attribútum névterében működjön.
A -S opció hasonló, csak a security attribútum névterének használatát határozza meg.
Amikor a -q opciót megadja, az attr megpróbál csendben maradni. Hibaüzeneteket ad ki (az stderr-nek), de nem nyomtat állapotüzeneteket (az stdout-ra).
A tar(1) és a cpio(1) szabványos fájlcserélő/archiváló programok nem archiválják és nem állítják vissza a kiterjesztett attribútumokat, míg az xfsdump( 8) program lesz.
A parancs IRIX verziójában található lista opció nem támogatott. A getfattr mechanizmust biztosít az összes attribútumnév lekérésére.
Andreas Gruenbacher, <andreas.gruenbacher@gmail.com> és az SGI XFS fejlesztőcsapata, <linux-xfs@oss.sgi.com>.
Kérjük, küldje el hibajelentéseit vagy megjegyzéseit a <https://savannah.nongnu.org/bugs/?group=attr> vagy az acl-devel@nongnu.org> címre. .
getfattr(1), setfattr(1), attr_get(3), attr_set(3), attr_multi(3), attr_remove(3), attr(5), xfsdump(8)