Ebben a gyors bemutatóban megnézzük, hogyan használhatjuk chmod parancs egy Ubuntu gépen a felhasználói fájlrendszerben létező fájlok felhasználói engedélyeinek megkereséséhez, módosításához és eltávolításához. Játsszunk végig különböző feltételeket, hogy elsajátítsuk az alapszintet chmod parancsokat, amelyek megkönnyíthetik mindennapjainkat az Ubuntu segítségével.
Linux engedélyek
A Linux-engedélyek egy nagyszerű szabályrendszer, amelyet egyszerűen meg lehet érteni, ha megértjük az alapjogokat. A három fő szempont, amelyet meg kell értenünk ahhoz, hogy tudjuk, hogyan működnek a Linux-engedélyek:
- Az az elem, amelyhez az engedélyeket definiálták
- Milyen műveletek hajthatók végre engedéllyel
- Ki milyen műveleteket hajthat végre
Két alapvető elem van a Linux fájlrendszerben:
- Könyvtárak
- Fájlok
Három művelet hajtható végre:
- Olvas
- Ír
- Végrehajt. A szkriptek végrehajtása mellett ugyanazokra a műveletekre van szükség a fájlok és más mappák létrehozásához
A felhasználó a következő műveleteket hajthatja végre:
- A fájl tulajdonosa
- A fájl tulajdonosának csoportja
- Olyan felhasználó, amely nincs társítva tulajdonosi csoporthoz vagy magához a tulajdonoshoz
A fájlhoz kapcsolódó engedélyek megtekintéséhez futtassa a következő parancsot:
ls -lÍme, amit ezzel a paranccsal kapunk vissza:
Keresse meg a fájlok engedélyét
A kimenetben az első 10 karakter bemutatja a fájl engedélyét:
- Az első karakter, ami '-', ebben az esetben azt jelzi, hogy ez egy fájl. Egy könyvtár esetében ez 'd' lett volna.
- A következő kilenc karakter a tulajdonos, a tulajdonos csoport és mások jogosultságait jelenti.
Engedélyek módosítása
A fájl engedélyének módosítására szolgáló szintaxis a következőképpen néz ki:
chmod engedélyfájl [2. fájl]…Októberi ábrázolás az Engedélyekhez
Az engedélyeket oktális számként tudjuk bemutatni. Például az olvasási, írási és végrehajtási engedélyek beállításához a tulajdonosnál, az olvasási és írási engedélyek a csoportjához, és mások számára nincs engedély.txt fájlt, a következő parancsot hajtjuk végre:
sudo chmod 760 hello.txtMiután végrehajtottuk a fenti parancsot, és megpróbálunk egy fájlt olvasni egy nem tulajdonos fiókkal a következő paranccsal:
sudo -u notowner-user több hello.txtA következő hibát kapjuk:
Helló.txt: Az engedély megtagadvaDe honnan származik ez a szám? Ennek a számnak minden számjegye egy engedélyek halmazát jelenti. Nézzük meg, hogyan származtak:
- 0: Nem jelent engedélyt
- 1: Jelzi a kivégezni engedély
- 2: Jelzi a ír engedély
- 4: Jelzi a olvas engedély
Az olvasási, írási és végrehajtási engedélyek hozzárendeléséhez a tulajdonos számára a 7-es számot rendeltük hozzá (= 4 + 2 + 1). Értsük meg ezt jobban a számjegyek táblázatában:
Szám | Bináris | Olvas | Ír | Végrehajt |
0 | 000 | NEM | NEM | NEM |
1 | 001 | NEM | NEM | IGEN |
2 | 010 | NEM | IGEN | NEM |
3 | 011 | NEM | IGEN | IGEN |
4 | 100 | IGEN | NEM | NEM |
5 | 101 | IGEN | NEM | IGEN |
6 | 110 | IGEN | IGEN | NEM |
7 | 111 | IGEN | IGEN | IGEN |
A fenti táblázatban nagyon jól látható, hogy mit jelentenek a fájlengedélyek.
Karakterábrázolás az engedélyekhez
Az engedélyeket oktális számként tudjuk bemutatni. Például az olvasási, írási és végrehajtási engedélyek beállításához a tulajdonosnál, az olvasási és írási engedélyek a csoportjához, és másoknak nincs engedély.txt fájlt, a következő parancsot hajtjuk végre:
sudo chmod u = rwe, g = rw, o-rwx helló.txtEngedélyek hozzáadásához egy meglévő felhasználóhoz a következőket tehetjük:
sudo chmod g + w helló.txtItt az írási engedélyt a fájl tulajdonosának felhasználói csoportjához rendelték.
Rekurzív engedélyváltozások
Egy adott könyvtárban található fájlok engedélyeit egyetlen paranccsal is megváltoztathatjuk. A megadott könyvtárban lévő fájlok és mappák engedélyeinek egyszerre történő módosításához használja a sudo chmod parancsot a -R paranccsal:
sudo chmod 777 Directory / *A következő kimenetet láthatjuk, amely egyértelműen tükrözi a fájlengedélyek változását:
Rekurzív módon megváltoztatja a fájlengedélyeket
Következtetés
Ebben a leckében megvizsgáltuk, hogyan módosíthatjuk a fájlok engedélyét, és ha szükséges, akkor ezt rekurzív módon végezzük. Megértettük azokat az alapvető fogalmakat, amelyek mögött a Linux-engedélyek jelentik a mindennapi munkánkat.