Linux fájl- és könyvtárengedélyek magyarázata

A Linux egy többfelhasználós operációs rendszer, így több felhasználó kommunikálhat egyidejűleg ugyanazzal a számítógéppel Linux használatával. Többfelhasználós operációs rendszer lévén a Linux számára fontos, hogy garantálja a különböző felhasználókhoz tartozó fájlok biztonságát és adatvédelmét.

Ennek eléréséhez a Linux kidolgozott rendszerrel rendelkezik a fájl- és könyvtárjogosultságok kezelésére. Ily módon a Linux-felhasználók szabályozhatják a különböző felhasználók fájljaihoz való hozzáférését, és azt, hogy a felhasználók milyen műveleteket hajthatnak végre a számítógép használata során.

Linux-felhasználóként kulcsfontosságú annak megértése, hogy a Linux hogyan kezeli a fájl- és könyvtárengedélyeket, és hogyan dolgozhat a különböző rendelkezésre álló engedélyekkel, hogy megvédje fájljait és garantálja számítógépe működőképességét. Ahhoz, hogy megértsük, hogyan kezeli a Linux a fájl- és könyvtárengedélyeket, először nézzük meg a Linux operációs rendszer felhasználóinak különböző kategóriáit.

A felhasználók kategóriája Linuxban

A felhasználók első kategóriája egy fájl vagy könyvtár tulajdonosa. A Linuxban minden fájlnak vagy könyvtárnak egy tulajdonosa van. Ez a tulajdonos általában több engedélyt kap a fájljához vagy könyvtárához. A fájl tulajdonosát általában a felhasználó u betűje jelzi.

Linux alatt több felhasználót is be lehet helyezni egy csoportba, és csoportként kaphat engedélyeket a fájlokhoz. Ezeket csoporttulajdonosoknak nevezzük, és a g betű jelöli őket.

Például, ha van egy fájlja könyvajánlatokkal, és több felhasználónak szeretne hasonló engedélyeket adni a fájlhoz, ennek egyszerű módja, ha a felhasználókat egy csoportba helyezi, és engedélyeket ad a csoport egészének.

A felhasználók másik kategóriája más néven ismert, és az o betű jelöli. Ezek olyan felhasználók, akik nem birtokolják a fájlt, és nem tartoznak a fájlhoz engedéllyel rendelkező csoporthoz. Az Other mindenki mást képvisel a rendszerben.

A számítógép minden felhasználója, azaz a fájlok tulajdonosai, a csoportok felhasználói és más felhasználók megadhatják az a betűt.

Új felhasználó létrehozása és hozzáadása az Ubuntu Linuxban

Nézzük meg, hogyan hozhat létre és adhat hozzá új felhasználót az Ubuntu Linuxban. Az oktatóanyag követéséhez hozzon létre egy új felhasználót is.

1. Nyissa meg a Beállításokat, majd a bal oldali menüsorban kattintson a Felhasználó elemre, majd kattintson a Feloldás elemre, és adja meg jelszavát, amikor a rendszer kéri. Új felhasználó hozzáadásához kattintson a Feloldás gombra. Alapértelmezés szerint ez a funkció zárolva van.

2. Miután feloldotta a zárolást, megjelenik egy Felhasználó hozzáadása opció, majd kattintson rá új felhasználó hozzáadásához

3. Új felhasználó létrehozásához adja meg teljes nevét és felhasználónevét, válassza a Jelszó beállítása most lehetőséget, és állítsa be a jelszavát. Ezenkívül győződjön meg arról, hogy a fiók típusa Rendszergazda értékre van állítva, majd kattintson a Hozzáadás gombra a felhasználó hozzáadásához.

4. Meg kell jelennie az imént létrehozott új felhasználói fióknak az alábbiak szerint.

Linux fájl- és könyvtárengedélyek

Az engedélyek azokra a szabályokra vonatkoznak, amelyek szabályozzák a fájlokhoz és könyvtárakhoz való hozzáférést, valamint a különböző felhasználók által rajtuk végrehajtható műveleteket. A Linuxnak három fő engedélykategóriája van:

  Iratkozzon fel ezekre a Linux minősítési kurzusokra, hogy rendszergazdává váljon
  • Read(r) – lehetővé teszi a felhasználó számára, hogy megtekintse egy fájl tartalmát, és listázza egy könyvtár tartalmát
  • Write(w) – lehetővé teszi a felhasználó számára, hogy módosítsa a fájl tartalmát. A könyvtáraknál az írási engedélyek lehetővé teszik a felhasználó számára, hogy módosítsa egy könyvtár tartalmát, például fájlok és alkönyvtárak létrehozásával, törlésével, átnevezésével vagy áthelyezésével. A könyvtárakkal való írási engedélyek azonban csak akkor működnek, ha a felhasználónak végrehajtási engedélyei is vannak.
  • Execute(x) – A végrehajtási engedélyek azt jelentik, hogy egy fájl végrehajtható programként kezelhető. A könyvtárak esetében a végrehajtási engedély lehetővé teszi a felhasználó számára, hogy belépjen vagy „cd”-t írjon be a könyvtárba.
  • Az olvasási, írási és végrehajtási engedélyek a Linuxban elérhető három felhasználói kategóriához vannak hozzárendelve.

    Azt is elolvashatja, hogyan távolíthat el fájlokat és könyvtárakat Linux alatt

    Hosszú lista Linux alatt

    Egy Linux könyvtárban lévő fájl tartalmának megtekintéséhez általában az ls parancsot futtatjuk. Ez azonban csak az elérhető fájlokat és könyvtárakat sorolja fel, és nem ad további információkat.

    A tartalommal kapcsolatos további információk megtekintéséhez a hosszú listázási formátumot kell használnia. Ehhez futtassa az ls parancsot az -l kapcsolóval. Ez megadja a fájljogosultságokat, a fájl tulajdonosait és a csoporttulajdonosokat az alábbiak szerint:

    Az Ubuntuban alapértelmezés szerint, ha nem jött létre csoport, a csoport neve megegyezik a fájl tulajdonosával.

    Csoport létrehozásához az addgroup parancsot használjuk. Szerkesztők nevű csoport hozzáadásához hajtsa végre a következő parancsot, és adjon meg jelszót, amikor a rendszer kéri

    sudo addgroup editors

    A sudo lehetővé teszi számunkra, hogy a parancsokat root felhasználóként futtassuk, aki egy szuper felhasználó, aki jogosult a számítógép összes felhasználóját érintő változtatások végrehajtására.

    A felhasználók csoporthoz való hozzáadásához a következő szintaxist használjuk:

    adduser <user> <group>

    Ezért, hogy belmontot és madicit is hozzáadjuk a szerkesztők csoportjához, végrehajtjuk

    sudo adduser belmont editors
    sudo adduser madici editors

    A csoportok megtekintéséhez, amelyekhez a felhasználó tartozik, hajtsa végre:

    groups <username>

    A fenti parancsok eredménye az alábbiakban látható:

    Nézzük most a Fájl attribútumokat, amelyek a fájltípusokról és a fájl engedélyeiről árulkodnak. a.

    Fájl attribútumok Linuxban

    Linuxban a fájlattribútumok pontosan tíz karakterből állnak. Az első karakter a fájl típusát jelzi. A különböző fájlokat jelző gyakori első karakterek közé tartozik:

    • d egy könyvtárat jelöl
    • – normál fájlt jelöl, pl. szöveges fájlokat
    • c egy karakteres speciális fájlt jelöl
    • l szimbolikus linket jelöl
    • b egy speciális blokkfájlt jelöl

    A fennmaradó kilenc karakter a tulajdonos, a csoporttulajdonos és más felhasználók engedélyeinek megjelenítésére szolgál. A kilenc karakter három csoportra van osztva. Az első csoport a tulajdonos jogosultságait jelöli, a második csoport a csoporttulajdonos jogosultságait, az utolsó három pedig mások, vagyis a számítógép minden más felhasználójának jogosultságait.

    Az engedélyek minden kategóriához az olvasási, majd az írási és végül a végrehajtási jogosultsággal kezdődnek. Az olvasási engedélyt r betű, az írási engedélyt a w betű, a végrehajtási engedélyt az x betű jelzi.

      A Google naptár szinkronizálása a Linux asztallal

    A – szimbólum akkor használatos, ha a felhasználónak nincs külön engedélye. Például az rw- a csoporttulajdonos számára azt jelenti, hogy mind olvasási, mind írási jogosultsággal rendelkeznek, de nincs végrehajtási jogosultságuk az adott könyvtárban(d).

    Fájlengedélyek módosítása szimbolikus jelöléssel

    Egy fájl vagy könyvtár engedélyeinek módosításához a chmod parancsot használjuk, és megadjuk, hogy kinek módosítjuk az engedélyeket.

    Ez lehet a felhasználó számára az u betűvel jelzett fájl tulajdonosa, a g betűvel jelzett csoporttulajdonos vagy az o betűvel jelölt más felhasználók. Mindhárom felhasználói kategóriát megcélozhatjuk az a betű használatával is, ami a fentiek mindegyikét jelenti.

    A következő dolog, amit megadunk, az az általunk végrehajtott változtatás. Engedély hozzáadásához a + (pluszjelet) használjuk. Az engedély eltávolításához – (mínusz jelet) használunk. Az utolsó dolog, amit biztosítunk, az az engedélyek, amelyeket r, w vagy x segítségével adunk hozzá a három rendelkezésre álló engedély megjelenítéséhez.

    Ennek működés közbeni megtekintéséhez hozzon létre egy könyvek nevű könyvtárat az alábbi paranccsal

    mkdir books

    Írja be, vagy „cd” a könyvtárba:

    cd books

    Hozzon létre egy readList.txt fájlt

    touch readingList.txt

    Hosszan sorolja fel a könyvkönyvtár tartalmát a következő végrehajtással:

    ls -l

    A kimenet a képen látható:

    Az általunk létrehozott fájl egy normál fájl, amelyet először a – jelzi, a tulajdonos és a csoport tulajdonosa olvasási és írási jogosultsággal rendelkezik, míg a többi felhasználó csak olvasási jogosultsággal rendelkezik. Ahhoz, hogy más felhasználóknak is engedélyt adjunk a fájl írására, a következő parancsot kell végrehajtanunk:

    chmod o+w readingList.txt

    Ha látni szeretné, hogy a többi felhasználó engedélyei megváltoztak-e, hajtsa végre a parancsot

    ls -l

    Kimenet:

    Figyelje meg, hogy a többi felhasználó fájljogosultsága r–-ról rw-re módosult, ami azt jelenti, hogy mostantól írási jogosultsággal rendelkeznek.

    A végrehajtási engedélyek hozzáadásához a fájl tulajdonosához (felhasználójához) hajtsa végre:

    chmod u+x readingList.txt

    Az írási engedélyek eltávolításához a csoporttulajdonosoktól hajtsa végre a következőt:

    chmod g-w readingList.txt

    Ha el szeretné távolítani az összes felhasználó olvasási engedélyét, hogy senki ne nézhesse meg a fájlt, hajtsa végre a következőt:

    chmod a-r readingList.txt

    Ha vissza szeretne adni olvasási engedélyt a fájl tulajdonosának, hajtsa végre a következőt:

    chmod u+r readingList.txt

    Írási és végrehajtási engedélyek hozzáadásához a fájl csoporttulajdonosához hajtsa végre:

    chomod g+wx readingList.txt

    Engedélyek módosítása az oktális jelöléssel

    Linuxban a három elérhető engedély mindegyikének csak két lehetséges értéke van. Az olvasási engedély csak r vagy – lehet, az írási engedély csak w vagy –, a végrehajtási engedély pedig csak x vagy – lehet.

    Ezért ezek az engedélyek be- vagy kikapcsoltnak tekinthetők, és ezért bináris számokkal ábrázolhatók, amelyeknek csak két elérhető értéke van. Ez 1 a be vagy igaz, és 0 a kikapcsolt vagy hamis. Ott egy engedély, például az rw– bináris számok használatával 110-ként ábrázolható.

    Ezért egy adott felhasználói kategória esetében három bináris szám elegendő az összes jogosultság bemutatásához. Például a tulajdonos, a csoport és más rwxrw-r– engedélye bináris szám használatával 111110100-ként ábrázolható.

    Azonban, hogy elkerüljük a bináris számok írását, ami hosszú és könnyen összetéveszthető, jobb alternatíva az oktális számok használata.

      8 Remote Desktop (RDP) kliens Windows, macOS és Linux rendszerhez

    Az oktális számok alapja 8, így csak 8 lehetséges értékük van. Minden oktális szám pontosan három bináris számjegyre vonatkozik.

    Ezért egy engedély, például az rw-, binárisan 110-ként ábrázolható. A 110 oktális megfelelője 6, így a 6 használható az rw- ábrázolására. Az oktális számok a tulajdonos, a csoport és mások olvasási, írási és végrehajtási engedélyeinek ábrázolására használhatók, az alábbiak szerint:

    Ahelyett, hogy hosszú bináris számjegyeket írna be, jobb, ha az engedélyeket oktális számokkal ábrázolja. Ezért a tulajdonos, a csoport és mások összes engedélye egyetlen oktális számokkal van ábrázolva, amint az a fenti ábrán látható.

    Az oktális jelölés használatának előnye az engedélyek beállításához, hogy lehetővé teszi az összes felhasználó jogosultságának egyidejű beállítását, ellentétben a szimbolikus jelöléssel, ahol egyszerre csak egyetlen felhasználó engedélyét állíthatja be.

    Az oktális jelölés használata azonban némi időt és gyakorlatot igényel, amíg fel tudjuk idézni, hogy az egyes oktális számok mire számítanak fel. Ennek ellenére nyugodtan hivatkozzon a fenti diagramra, amikor oktális jelölést használ. Nézzünk néhány példát az engedélyek megváltoztatására az oktális jelöléssel

    Ha minden felhasználónak, azaz a tulajdonosnak, a csoporttulajdonosnak és a többi felhasználónak olvasási, írási és végrehajtási engedélyt szeretne adni a readList.txt fájlhoz, hajtsa végre:

    chmod 777 readingList.txt

    Annak ellenőrzéséhez, hogy az engedélyek módosultak-e, hajtsa végre:

    ls -l

    Kimenet:

    total 0
    -rwxrwxrwx 1 madici madici 0 Sep  6 05:45 readingList.txt

    Figyelje meg, hogy mostantól a tulajdonos, a csoport és a többi felhasználó jogosult a readList.txt olvasására, írására és végrehajtására.

    Az írási engedélyek eltávolításához mind a csoport tulajdonosától, mind másoktól hajtsa végre a következőt:

    chmod 755 readingList.txt

    A végrehajtási engedély eltávolítása a tulajdonostól és mások végrehajtása:

    chmod 654 readingList.txt

    Különleges engedélyek Linuxban

    A Linuxnak három speciális engedélye van, amelyek a szabványos olvasási, írási és végrehajtási engedélyeken felül alkalmazhatók fájlokra és könyvtárakra. Ezek az engedélyek fejlett funkciókat biztosítanak a hozzáférés-vezérléshez, és lehetővé teszik a kevesebb jogosultsággal rendelkező felhasználók számára, hogy magasabb jogosultságokkal hajtsanak végre fájlokat és parancsokat, akárcsak a fájl tulajdonosa vagy a csoport tulajdonosa.

    A speciális engedélyek a következőket tartalmazzák:

    • Set User ID (SUID) – a SUID engedély lehetővé teszi a felhasználó számára, hogy egy fájlt vagy programot a tulajdonosának jogaival hajtson végre, nem pedig az azt végrehajtó felhasználó jogaival. Ez akkor hasznos, ha a normál felhasználóknak emelt szintű jogosultságokat igénylő feladatokat kell végrehajtaniuk.
    • Csoportazonosító (SGID) beállítása – az SGID engedély lehetővé teszi a felhasználó számára, hogy a fájl csoporttulajdonosának engedélyével futtasson, nem pedig a tényleges csoportjának engedélyeivel.
    • Ragadó bit – A ragadós bit általában könyvtárakra van beállítva annak biztosítására, hogy a könyvtárban lévő fájlokat csak a könyvtár tényleges tulajdonosa, az adott fájl tulajdonosa vagy a root felhasználó törölhesse.

    A három speciális engedély a szabványos engedélyek mellett használható: olvasás, írás és végrehajtás.

    Következtetés

    Az engedélyek fontos fogalmak a Linuxban, még akkor is, ha a számítógépen nincs több felhasználó. Az engedélyek megértése fontos a Linux rendszerben tárolt adatok és a funkcionalitás ellenőrzésének, biztonságának és titkosságának biztosításában. Ezért fontolja meg az engedélyekkel való ismerkedést az ebben a cikkben az engedélyekről tanultak gyakorlásával.

    Azt is megtudhatja, hogyan használhatja a Linux parancsokat Windows rendszeren.