Kihagyás

Jogosultságok

Az engedélyek meghatározzák, hogy a különböző felhasználók hogyan léphetnek kapcsolatba egy fájllal vagy könyvtárral. Amikor egy fájlt listázunk az ls -l paranccsal, a kimenet engedélyinformációkat tartalmaz. A példában egy hello.sh nevű szkriptet fogunk használni, amely a Dokumentumok könyvtárban található:

sysadmin@localhost:~/Documents$ ls -l hello.sh                                  
-rw-r--r-- 1 sysadmin sysadmin 647 Dec 20  2017 hello.sh 

Az alábbiakban áttekintjük az engedélyekre vonatkozó mezőket.

-rw-r--r-- 1 sysadmin sysadmin 647 Dec 20  2017 hello.sh
^
Fájltípus Jogosultság x Tulajdonos Csoport Méret Módosítva Név
- rw-r--r-- 1 sysadmin sysadmin 647 Dec 20 2017 hello.sh

Fájltípus mező

A kimenet első karaktere a fájl típusát jelzi. Emlékezzünk vissza, hogy ha az első karakter egy -, akkor ez egy normál fájl. Ha a karakter egy d, akkor ez egy könyvtár.

Jogosultság mező

A fájltípus karaktere után megjelennek a jogosultságok. Az engedélyek három, három karakterből álló készletre oszlanak:

Tulajdonos

Az első készlet a fájl tulajdonosának szól. Ha a te jelenlegi fiókod a fájl felhasználói tulajdonosa, akkor a három engedélyből az első készlet lesz érvényes, a többi engedélynek nincs hatása.

-rw-r--r-- 1 sysadmin sysadmin 647 Dec 20  2017 hello.sh
 ^^^

A felhasználó tulajdonosa mező határozza meg, hogy ki a fájl tulajdonosa, és kire vonatkoznak ezek az engedélyek:

-rw-r--r-- 1 sysadmin sysadmin 647 Dec 20  2017 hello.sh
             ^^^^^^^^

Csoport

A második készlet a fájlt birtokló csoporté. Ha az te jelenlegi fiókod nem a fájl felhasználói tulajdonosa, és tagja vagy a fájlt birtokló csoportnak, akkor a csoport engedélyei érvényesek, és a többi engedélynek nincs hatása.

A fájl csoportját a csoport tulajdonosa mező határozza meg:

-rw-r--r-- 1 sysadmin sysadmin 647 Dec 20  2017 hello.sh
    ^^^

Nyilvános

Az utolsó készlet mindenki másé, mindenkié, akire az első két engedélykészlet nem vonatkozik. Ha nem te vagy a fájl tulajdonosa, vagy nem olyan csoport tagja amely a fájl tulajdonosa, akkor az engedélyek harmadik csoportja vonatkozik rád.

-rw-r--r-- 1 sysadmin sysadmin 647 Dec 20  2017 hello.sh
       ^^^

Engedélytípusok

Három különböző engedélyt lehet elhelyezni egy fájlban vagy könyvtárban: olvasás, írás és végrehajtás. Az engedélyek alkalmazásának módja a fájlok és könyvtárak esetében eltérő, amint azt az alábbi táblázat mutatja:

Engedélyek Hatások fájlra Hatások könyvtárra
read (r) Lehetővé teszi a fájl tartalmának olvasását vagy másolását. A könyvtár végrehajtási engedélye nélkül lehetővé teszi a fájlok nem részletes listáját. Végrehajtási engedéllyel az ls -l részletes listát biztosíthat.
write (w) Lehetővé teszi a tartalom módosítását vagy felülírását. Lehetővé teszi fájlok hozzáadását vagy eltávolítását egy könyvtárból. Ahhoz, hogy ez az engedély működjön, a könyvtárnak végrehajtási engedéllyel is kell rendelkeznie.
execute (x) Lehetővé teszi egy fájl folyamatként történő futtatását, bár a szkriptfájlokhoz olvasási engedély is szükséges. Lehetővé teszi a felhasználó számára, hogy átváltson a könyvtárba, ha a szülőkönyvtárak végrehajtási jogosultsággal is rendelkeznek.

Fontold meg

Az alkalmazandó engedélyek megértése fontos készségkészlet a Linuxban.
Vegyük például a következő engedélyeket:

```shell
- r--rw-rwx. 1 sysadmin staff 999 Apr  10  2013 /home/sysadmin/test
```

Ebben a forgatókönyvben a `sysadmin` felhasználó kevesebb hozzáféréssel rendelkezik ehhez a fájlhoz, mint a csoport tagjai vagy mindenki más.
A `sysadmin` felhasználó csak az `r--` engedélyekkel rendelkezik.
Nem számít, ha a `sysadmin` a csoport tagja; a felhasználói tulajdonjog megállapítása után csak a felhasználó tulajdonosának engedélyei érvényesek.

Engedélytáblázat

Oktális alak Bináris alak Engedélyek
0 000 ---
1 001 --x
2 010 -w-
3 011 -wx
4 100 r--
5 101 r-x
6 110 rw-
7 111 rwx