Homepage » hogyan kell » Hogyan működik a Linux fájl?

    Hogyan működik a Linux fájl?

    Ha már régóta használta a Linuxot (és még az OS X-et is), valószínűleg „engedélyek” hibát talált. De pontosan mit jelentenek, és miért szükségesek vagy hasznosak? Vegyünk egy belső megjelenést.

    Felhasználói engedélyek

    A nap folyamán a számítógépek hatalmas gépek voltak, amelyek hihetetlenül drágák voltak. Ahhoz, hogy a lehető legtöbbet hozzák ki, több számítógépes terminál is csatlakozott, ami sok felhasználó számára lehetővé tette, hogy egyszerre folytassák üzleti tevékenységüket. Az adatok feldolgozása és tárolása a gépen történt, míg maguk a terminálok kicsit többet jelentenek az adatok megtekintésének és bevitelének eszközeként. Ha úgy gondolja, hogy ez eléggé nagy, hogyan jutunk hozzá a „felhő” adataihoz; nézd meg az Amazon Cloud MP3 rendszerét, a Gmailet és a Dropboxot, és észre fogod venni, hogy bár a változtatások helyben történhetnek, mindent távolról tárolunk.

    (Kép: Zenith Z-19 „hülye” terminál; hitel: ajmexico)

    Ahhoz, hogy ez működjön, az egyes felhasználóknak fiókokat kell készíteniük. Szükségük van egy résszel a tárolási területre, és meg kell engedni, hogy parancsokat és programokat futtassanak. Mindenki megkapja a „felhasználói jogosultságokat”, amelyek azt diktálják, hogy mit tehetnek, és nem tehetnek, hol a rendszeren, és nem rendelkeznek hozzáféréssel, és amelyek fájljai módosíthatók és nem módosíthatók. Minden felhasználó különböző csoportokba kerül, amelyek további hozzáférést biztosítanak vagy korlátozzák.

    Fájl hozzáférés

    Ebben a szokatlanul több felhasználó világában már meghatároztuk a felhasználók számára elérhető határokat. De mi van azzal, hogy mit érnek hozzá? Nos, minden fájl rendelkezik jogosultságokkal és tulajdonossal. A tulajdonos megnevezése, amely rendszerint a fájl létrehozásakor kötődik, kijelöli, hogy melyik felhasználóhoz tartozik, és csak a felhasználó módosíthatja a hozzáférési engedélyeit.

    A Linux világában az engedélyek három kategóriába sorolhatók: olvasás, írás és végrehajtás. Az „olvasás” hozzáférés lehetővé teszi egy fájl tartalmának megtekintését, az „írás” hozzáférés lehetővé teszi egy fájl tartalmának módosítását, és a „végrehajtás” lehetővé teszi, hogy az utasításokat, például egy parancsfájlt vagy egy programot futtasson. Mindegyik kategória különböző osztályokra vonatkozik: felhasználó, csoport és világ. „Felhasználó” a tulajdonos, a „csoport” azt jelenti, hogy minden olyan felhasználó, aki ugyanabban a csoportban van, mint a tulajdonos, és a „világ” bárkit és mindenkit jelent..

    A mappák ezen engedélyekkel is korlátozhatók. Például engedélyezheti, hogy a csoportban lévő más személyek megtekinthessék az otthoni mappában lévő könyvtárakat és fájlokat, de nem a csoporton kívül. Valószínűleg csak magadra kívánja korlátozni az „írási” hozzáférést, kivéve, ha valamilyen közös projekten dolgozik. Létrehozhat egy megosztott könyvtárat is, amely lehetővé teszi, hogy bárki megtekinthesse és módosítsa a mappában lévő fájlokat.

    Engedélyek módosítása az Ubuntu-ban

    GUI

    Az Ubuntu tulajdonában lévő fájl engedélyeinek módosításához kattintson a jobb gombbal a fájlra, és lépjen a „Tulajdonságok” menüpontra.

    Megváltoztathatja, hogy a Tulajdonos, a Csoport vagy a Mások képes-e olvasni és írni, olvasni vagy semmit sem tenni. Beállíthat egy jelölőnégyzetet a fájl végrehajtásának engedélyezéséhez, és ez egyidejűleg lehetővé teszi azt a Tulajdonos, a Csoport és a többi számára.

    Parancs sor

    Ezt a parancssoron keresztül is elvégezheti. Ugrás egy könyvtárba, amely fájlokat tartalmaz, és írja be a következő parancsot a listában lévő összes fájl megtekintéséhez:

    Ls -al

    Az egyes fájlok és könyvtárak mellett megjelenik egy speciális szakasz, amely felvázolja az engedélyeket. Ez így néz ki:

    -rwxrw-R-

    A r jelentése: „olvasás”, a w a „írás” és a „ x A könyvtárak „d” -vel kezdődnek a „-” helyett. Azt is észre fogja venni, hogy 10 hely van, amelyek értéket tartanak. Az elsőt figyelmen kívül hagyhatja, majd 3-at 3-as készletből áll. Az első készlet a tulajdonos számára, a második a csoport, a legutóbbi pedig a világ számára.

    Fájl vagy könyvtár engedélyeinek módosításához nézzük meg a chmod parancs alapformáját.

    chmod [class] [operátor] [engedély] fájl

    chmod [ugoa] [+ vagy -] [rwx] fájl

    Ez először bonyolultnak tűnhet, de bízz bennem, ez elég könnyű. Először nézzük meg az osztályokat:

    • u: Ez a tulajdonosnak szól.
    • g: Ez a csoportra vonatkozik.
    • o: Ez mindenki másra vonatkozik.
    • a: Ez megváltoztatja a fenti engedélyek engedélyeit.

    Ezután az operátorok:

    • +: A pluszjel hozzáadja a következő engedélyeket.
    • -: A mínuszjel eltávolítja a következő engedélyeket.

    Maradj velem? Az utolsó rész ugyanaz, mint amikor egy fájl engedélyeit ellenőriztük:

    • r: Lehetővé teszi az olvasási hozzáférést.
    • w: Lehetővé teszi az írási hozzáférést.
    • x: Lehetővé teszi a végrehajtást.

    Most tegyük össze. Tegyük fel, hogy van egy "todo.txt" nevű fájl, amely az alábbi jogosultságokkal rendelkezik:

    -rw-rw-r-

    Vagyis a tulajdonos és a csoport olvashat és írhat, és a világ csak olvasni tud. Az alábbi jogosultságokat szeretnénk módosítani:

    -rwxr-

    Ez azt jelenti, hogy a tulajdonos teljes jogosultságokkal rendelkezik, és a csoport olvashat. Ezt 3 lépésben tehetjük meg. Először hozzáadjuk a felhasználó végrehajtási engedélyét.

    chmod u + x todo.txt

    Ezután eltávolítjuk a csoport írási engedélyét.

    chmod g-w todo.txt

    Végül eltávolítjuk az összes többi felhasználó olvasási engedélyét.

    chmod o-r todo.txt

    Ezeket egy parancsba is kombinálhatjuk, mint például:

    chmod u + x, g-w, o-r todo.txt

    Láthatjuk, hogy minden szakasz vesszővel van elválasztva, és nincs szóköz.

    Íme néhány hasznos engedély:

    • -rwxr-xr-x: A tulajdonos teljes jogosultsággal rendelkezik, a csoport és a többi felhasználó olvashatja a fájl tartalmát és végrehajthatja.
    • -rwxr-r-: A tulajdonos teljes jogosultsággal rendelkezik, a csoport és a többi felhasználó csak fájlokat olvashat (hasznos, ha nem bánja, hogy mások megnézik a fájljait).
    • -rwx-: A tulajdonos teljes jogosultsággal rendelkezik, mindenki másnak nincs (hasznos a személyes szkriptekhez).
    • -rw-rw--: A tulajdonos és a csoport olvashat és írhat (hasznos a csoporttagokkal való együttműködéshez).
    • -rw-r-r-: A tulajdonos olvashat és írhat, csoportos és más felhasználók csak fájlokat olvashatnak (hasznosak személyes fájlok tárolására egy megosztott hálózaton).
    • -rw--: A tulajdonos olvashat és írhat, mindenki másnak nincs (hasznos személyes fájlok tárolásához).

    Van még néhány más dolog, amit a chmod-szal tehetsz - mint a setuid és a setgid -, de egy kicsit mélyebb, és a legtöbb felhasználónak valóban nem kell őket használni..

    A gyökér vagy a Super-felhasználó és a rendszerfájlok

    Napjainkban nem mindig futtatunk olyan rendszereket, amelyek több felhasználóval rendelkeznek. Miért kell még aggódnunk az engedélyek miatt?

    Nos, a Unix és annak származékai - Linux, OS X - többek között megkülönböztetik a felhasználó által kezelt dolgokat, a rendszergazda által működtetett dolgokat vagy az adminisztrátori jogosultságokat, valamint a rendszer által működtetett dolgokat. Mint ilyen, a rendszernek szerves részét képező dolgokhoz adminisztrátori jogosultságokat kell módosítani vagy hozzáférni. Ily módon nem véletlenül elrontod.

    Az Ubuntu-ban a rendszerfájlok módosítását a „sudo” vagy „gksudo” használatával végezheti el, hogy megkapja a rendszergazdai jogosultságok egyenértékűségét. Más területeken a „gyökér” vagy a „szuper-felhasználó” -ra vált, ami ugyanezt teszi, amíg ki nem jelentkezik.

    Ne feledje, hogy mindkét esetben a fájljogosultságok megváltoztatása olyan programokhoz vezethet, amelyek nem működnek, a fájl tulajdonjogának véletlen megváltoztatása a root felhasználóra (a tulajdonos helyett), és a rendszer kevésbé biztonságos (több engedély megadása) révén. Ezért ajánlott, hogy ne változtassa meg a fájlok - különösen a rendszerfájlok - engedélyeit, kivéve, ha szükséges, vagy tudod, mit csinálsz.


    Fájljogosultságok vannak a felhasználók alapvető biztonsági rendszerének biztosítására. A munkájuk megtanulása segíthet az alapmegosztás több felhasználó környezetben történő beállításában, a „nyilvános” fájlok védelmében, és arra utal, hogy mikor baj van a rendszerfájl tulajdonjogával.

    Szerintem könnyebb megmagyarázni a dolgokat? Javítson? Szeretne emlékezni a régi időkre? Vegyünk egy kis szünetet, és tegyük a gondolataidat a megjegyzésekbe.