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.
| 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.
A felhasználó tulajdonosa mező határozza meg, hogy ki a fájl tulajdonosa, és kire vonatkoznak ezek az engedélyek:
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:
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.
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 |