Csapat chmod, chown parancsotés a chgrp parancsot.
Csapat chmod célja a fájlok és könyvtárak engedélyeinek módosítása Linuxban. A csapat neve a következő kifejezésből származik ch szög mod e".
Szintaxis A chmod parancsok a következők:
Chmod engedélyek fájlnév
Az engedélyeket kétféleképpen lehet beállítani:
Chmod 764 myfile
BAN BEN ezt a formátumot a hozzáférési jogokat nem karakterek határozzák meg rwx, a fent leírtak szerint, de háromjegyű számként. A szám minden egyes számjegye hozzáférési jogok bizonyos halmazát jelenti.
Az alábbi táblázat felsorolja az rwx engedélyek összes lehetséges kombinációját és a megfelelő számokat (amelyek a chmod parancsban használatosak):
Szám | Engedélyek | Szimbólum megjelölés |
---|---|---|
0 | nincs engedély | --- |
1 | x - indítás | --x |
2 | w - változás | -w- |
3 | x+w - futás+módosítás | -wx |
4 | r - olvasni | r-- |
5 | r+x – olvasás+futás | r-x |
6 | r+w - olvasás+módosítás | rw- |
7 | r+w+x - olvasás+módosítás+futtatás | rwx |
Tekintsük a chmod parancs használatát a hozzáférési jogok számmal történő megadásával egy példa segítségével. Állítsa be a fájlengedélyeket 764-re:
Chmod 764 myfile
Ez azt jelenti (lásd a fenti táblázatot), hogy egy fájl esetében saját fájl engedélyeket állítunk be 7 6 4 , ami azt jelenti:
Ha írsz 764 szimbólumokat használva (lásd a táblázatot), akkor a következőt kapjuk: " rwxrw-r-».
Az alábbi táblázat felsorol néhány gyakran használt engedély számértéket:
Numerikus kijelölés | "rwx"-jelölés | Leírás |
---|---|---|
400 | -r--------- | A fájl tulajdonosa csak olvasni tudja a fájlt. Mindenki más számára tilos minden művelet a fájllal. |
644 | -rw-r--r-- | Minden felhasználó elolvashatja a fájlt. A tulajdonos módosíthatja a fájlt. |
660 | -rw-rw---- | A tulajdonos és a csoport olvashatja és módosíthatja a fájlt. Mindenki más számára tilos minden művelet a fájllal. |
664 | -rw-rw-r-- | Mindenki elolvashatja a fájlt. A tulajdonos és a csoport változhat. |
666 | -rw-rw-rw- | A fájlt mindenki elolvashatja és módosíthatja. |
700 | -rwx------ | A tulajdonos elolvashatja, módosíthatja és futtathatja a fájlt. Mindenki más számára tilos minden művelet a fájllal. |
744 | -rwxr--r-- | Mindenki elolvashatja a fájlt. A tulajdonos módosíthatja és futtathatja a fájlt. |
755 | -rwxr-xr-x | A fájlt mindenki elolvashatja és futtathatja. A tulajdonos módosíthatja is a fájlt. |
777 | -rwxrwxrwx | Minden felhasználó olvashatja, módosíthatja és szerkesztheti a fájlt. |
chmod +x myfile1 chmod g=rw myfile2 chmod u-w myfile3
Mint látható, ebben a formátumban az engedélyeket a szimbólumok adják rwx, de a szintaxisban más segédszimbólumok is használatosak, például matematikai műveletek " + "És" - és olyan karakterek, mint pl. g"vagy" u».
Az általános szintaxis a következőképpen írható:
chmod (tulajdonos)(matematikai művelet)(jogosultságok) fájlnév
A fájltulajdonosok megnevezései a következők:
A matematikai műveletek a következőket jelentik:
Egy parancsban vesszővel elválasztva felsorolhatja a tulajdonosokat és az engedélyeiket (lásd az alábbi példát).
Vegye figyelembe a példákat:
BAN BEN ez az eset nem használunk tulajdonosi megjelöléseket, ami azt jelenti, hogy az engedélyek minden felhasználó számára be vannak állítva. " +x" jelentése - futási engedély beállítása ( x) fájl minden felhasználó számára. Ez megegyezik a következő parancs futtatásával: chmod a+x myfile1 .
Itt a jelölést használjuk gés az egyenlőségjel" = ". Ez azt jelenti, hogy a csoport számára megadjuk a fájl olvasásának és írásának engedélyét ( rw).
A fájl tulajdonosának ( u) eltávolítjuk a változtatási engedélyt ( w) fájl.
Engedje meg a tulajdonosnak u) és csoport ( g) futtassa a fájlt ( x).
Pontosan ez a helyzet, amikor vesszővel elválasztva listázzuk ki a tulajdonosokat, és állítunk be nekik engedélyeket. A fájl tulajdonosának ( u) engedélyezzük a fájl futtatását, a csoport számára ( g) megtiltjuk a fájl megváltoztatását, mindenki más számára ( o) megtiltjuk a fájl elolvasását.
Ha módosítania kell egy könyvtárban lévő összes fájl jogosultságát, beleértve az alkönyvtárakat is, akkor ezt megteheti -R, ami azt jelenti, hogy rekurzív módon változtatják meg a könyvtárak és tartalmuk engedélyeit. Például változtassuk meg a Mydir könyvtárban található összes fájl engedélyét:
Chmod -R 644 Mydir
És egy pillanat. Ha a felhasználó nem a fájl tulajdonosa, de módosítania kell a fájl hozzáférési jogait, akkor a parancsot chmod használatával kell elvégezni sudo, Például:
Sudo chmod 644 fájl
A fájl tulajdonosának és csoportjának módosításához használja a parancsot chown.
A fájl tulajdonosának megváltoztatásához használja a következő szintaxist:
Chown new_owner fájlnév
saját fájlúj tulajdonos vasya:
Chown vasya myfile
Egy fájl tulajdonosának és csoportjának megváltoztatásához használja a következő szintaxist:
Chown new_owner:new_group fájlnév
Például állítsa be a fájlt saját fájlúj tulajdonos vasyaés csoport sambashare:
Chown vasya:sambashare myfile
Van még egy parancs - chgrp. Csak a csoport megváltoztatását teszi lehetővé. Például:
chgrp sambashare myfile
Linuxban minden fájl rendelkezik engedélyekkel – ezek a jogosultságok, a tulajdonos és a csoport.
Az engedélyek be vannak állítva a tulajdonos, a csoport és mindenki más számára.
Háromféle engedély létezik − r- olvasás, w- változás, x- indítani.
Egy fájl engedélyeinek módosításához használja a parancsot chmod.
A tulajdonos vagy csoport megváltoztatásához használja a parancsot chown.
A csoport módosításához használatos chgrp.
A chmod parancs a fájlok vagy könyvtárak engedélyeinek módosítására szolgál.
Linuxban és más Unix-szerű operációs rendszerekben minden fájlnak van egy szabálykészlete, amely meghatározza, hogy ki és hogyan férhet hozzá a fájlhoz. Ezeket a szabályokat fájlengedélyeknek vagy fájlmódoknak nevezzük. A chmod parancsnév a "módváltásmódot" jelenti, és a fájl elérésének meghatározására szolgál.
BAN BEN Általános nézet A chmod parancsok így néznek ki:
chmod engedélybeállítások fájlnév
Ha lehetőségek nincs megadva, a chmod megváltoztatja a -ban megadott fájl engedélyeit fájl név pontban meghatározott engedélyekre engedélyeket.
Engedélyek meghatározza a hozzáférési jogokat a fájl tulajdonosa ("felhasználó"), a fájlt birtokló csoport tagjai ("csoport") és mindenki más ("egyéb") számára. Az engedélyek kétféleképpen ábrázolhatók: szimbólumok (alfanumerikus karakterek) vagy oktális számok (0 és 7 közötti számok) használatával.
Tegyük fel, hogy van egy myfile nevű fájlja, és az engedélyeket úgy szeretné beállítani, hogy:
Ez a parancs így fog kinézni:
chmod u=rwx,g=rx,o=r saját fájl
Ez a példa szimbolikus bejegyzést használ az engedélyekhez. Az u, g és o betűk a felhasználót, a csoportot és egyebeket jelölik. Az egyenlőségjel ("=") azt jelenti, hogy "ilyen engedélyek beállítása", az "r", "w" és "x" betűk pedig "olvasást", "írást" és "végrehajtást" jelentenek. A különböző engedélyosztályokat vessző választja el, és nincs szóközök közöttük.
Íme az egyenértékű parancs oktális engedélyjelöléssel:
chmod 754 myfile
Itt a 7-es, 5-ös és 4-es számok egyenként a felhasználó, a csoport és mások engedélyeit jelentik, ebben a sorrendben. Minden számjegy a 4, 2, 1 és 0 számok kombinációja:
Tehát a 7 a 4 + 2 + 1 (olvasás, írás és végrehajtás), az 5 a 4 + 0 + 1 (olvasás, nincs írás és végrehajtás), a 4 pedig a 4 + 0 + 0 (olvasás, nem) kombinációja. írás, végrehajtás nélkül).
-c, --változtatások Mint a --verbose, de csak akkor állít elő bőbeszédű kimenetet, ha ténylegesen változtatás történik.
-f, --csendes, --csendes Néma üzemmód; elnyomja a legtöbb hibaüzenetet.
-v, --bőbeszédű Részlet mód; diagnosztikai üzenetet jelenít meg minden feldolgozott fájlhoz.
--no-preserve-root Ne kezelje a „/”-t (gyökérkönyvtár) semmilyen különleges módon, ez az alapértelmezett beállítás.
--preserve-root Ne dolgozzon rekurzívan a „/”-en.
--referencia=RFILEÁllítsa be az RFILE fájl engedélyeit, figyelmen kívül hagyva a megadott MODE-ot.
-R, --rekurzív Fájlok és könyvtárak rekurzív módosítása.
--Segítség Súgó üzenet megjelenítése és kilépés.
--változat Verzióinformációk megjelenítése és kilépés.
A chmod minden megadott FÁJL fájlmódját a MODE szerint változtatja, amely lehet a végrehajtott változtatások szimbolikus ábrázolása, vagy egy oktális szám, amely az új módú bitek bitmintáját reprezentálja.
Szimbolikus mód formátuma:
[[+-=]...]
ahol a perms nulla vagy több betű az r, w, x, X, s és t halmazból, vagy egy betű az u, g és o halmazból. Több karaktermódot is megadhat, vesszővel elválasztva.
Az u, g, o betűk és a vezérlők kombinációja, amelyek megváltoztatják a felhasználók hozzáférését a fájlhoz: a felhasználó, aki a fájl tulajdonosa (u), a többi felhasználó a fájl csoportjában (g), a többi felhasználó, aki nem tartozik a fájl csoportjába ( o) vagy az összes felhasználó (a). Ha ezek közül egyik sincs megadva, akkor a hatás olyan, mintha a lenne megadva, de az umask-ban beállított biteket ez nem érinti.
A (+) operátor hatására a kiválasztott fájlmód-bitek hozzáadódnak az egyes fájlok meglévő fájlmód-bitjeihez; "-" törli őket; és a "="" hatására hozzáadódnak, és a nem említett bitek eltávolításra kerülnek, kivéve, hogy a változtathatatlan, felhasználó által beállított címtárbiteket és csoportazonosítókat ez nem érinti.
Az r, w, x, X, s és t betűk az érintett felhasználók fájlmód-bitjeit jelölik ki: olvasás (r), írás (w), végrehajtás (x), végrehajtás csak akkor, ha a fájl egy könyvtár vagy már rendelkezik engedéllyel egyes felhasználók végrehajtásához (X) állítsa be a felhasználói vagy csoportazonosítót végrehajtáskor (s), korlátozott törlési jelzőt vagy rögzített bitet (t). Könyvtárak esetén az X és X végrehajtási beállítások határozzák meg a könyvtár tartalmának megtekintésére vonatkozó engedélyt.
E betűk közül egy vagy több helyett megadhatja az u, g vagy o betűk egyikét: a fájl tulajdonosának adott engedélyek (u), a fájl csoportjába tartozó többi felhasználónak adott engedélyek (g ), és a felhasználóknak adott engedélyek, amelyek nem szerepelnek a két előző kategória egyikében sem (o).
A numerikus mód egy-négy oktális számjegy (0-7), amelyet a 4-es, 2-es és 1-es értékű bitek összeadásával kapunk. A hiányzó számjegyeket a bevezető nulláknak tekintjük. Az első számjegy kiválasztja az adott felhasználói azonosítót (4) és az adott csoportazonosítót (2), valamint a korlátozott törlési vagy ragadós attribútumokat (1). A második számjegy az olvasási (4), írási (2) és végrehajtási (1) műveletekkel rendelkező felhasználó hozzáférési jogait határozza meg; a harmadik kiválasztja az engedélyeket a fájl csoportjában lévő többi felhasználó számára azonos értékekkel; a negyedik pedig a fájl csoportjában nem szereplő többi felhasználó számára, ugyanazokkal az értékekkel.
a chmod soha nem változtatja meg a szimbolikus hivatkozások engedélyeit; a chmod rendszerhívás nem módosíthatja az engedélyeiket. De ez nem probléma, mivel a symlink engedélyeket soha nem használják. A felsorolt szimbolikus linkekre azonban parancs sor, a chmod megváltoztatja a megadott fájl engedélyeit. Ezzel szemben a chmod figyelmen kívül hagyja a rekurzív címtárbejárások során talált szimbolikus hivatkozásokat.
A chmod törli a normál fájl set-group-ID bitjét, ha a fájl csoportazonosítója nem egyezik a felhasználó tényleges csoportazonosítójával vagy a felhasználó egyik másodlagos csoportazonosítójával, kivéve, ha a felhasználó rendelkezik a megfelelő jogosultságokkal. További korlátozások a set-user-ID és set-group-ID bitek figyelmen kívül hagyását okozhatják a MODE vagy RFILE módban. Ez a viselkedés az alapul szolgáló chmod rendszerhívás házirendjétől és funkcióitól függ. Ha kétségei vannak, ellenőrizze a rendszer viselkedését.
A chmod megőrzi a könyvtár set-user-ID és set-group-ID bitjeit, hacsak másként nem ad meg. Beállíthat vagy törölhet biteket szimbolikus módokkal, például u+s és g-s, és beállíthat (de nem törölhető) biteket numerikus móddal.
A korlátozott törlési jelző vagy ragadós bit egyetlen bit, amelynek értelmezése a fájltípustól függ. Ez megakadályozza, hogy egy könyvtárban lévő fájlt olyan felhasználók töröljenek vagy nevezzenek át, akik nem birtokolják a fájlt vagy könyvtárat; ezt a könyvtár korlátozott törlésének jelzőjének nevezik, és általában megtalálható a globálisan írható könyvtárakban, mint például a /tmp. Néhány régebbi rendszer normál fájljainál ez a bit ment szöveges kép programokat a csereeszközön, így gyorsabban betöltődik indításkor; ezt ragadós bitnek hívják.
A fájlengedélyek listájának gyors és egyszerű módja az ls parancs long list (-l) opciója. Például a file.txt engedélyeinek megtekintéséhez használja a következő parancsot:
Ls -l fájl.txt
Amely a következőképpen néz ki kimenetet:
Beállítja a fájl engedélyeit.htm „tulajdonos tud írni és olvasni; a csoport csak olvasni tud; mások csak olvasni tudnak."
Chmod -R 755 saját fájlok
Rekurzívan (-R) módosítja a myfiles könyvtár és annak összes mappája és fájljait a 755-ös módra. A felhasználó olvashat, írhat és végrehajthat; A csoport tagjai és más felhasználók olvashatnak és végrehajthatnak, de írni nem.
Chmod u=rw example.jpg
Módosítja az example.jpg tulajdonosának engedélyeit, hogy a tulajdonos olvashassa és írhassa a fájlt. Nem módosítja a csoport vagy mások jogosultságait.
Chmod u+s compope.txt
Beállítja a comphope.txt fájl "Set-User-ID" bitjét, így bárki, aki megpróbál hozzáférni ehhez a fájlhoz, úgy tegye azt, mintha ő lenne a fájl tulajdonosa.
Chmod u-s compope.txt
A fenti parancs ellentéte; törli a SUID bitet
Chmod 755 file.cgi
Beállítja a file.cgi engedélyeit a következőre: „tulajdonos olvasása, írása és végrehajtása”, illetve „csoport és mindenki más szerint olvassa el és hajtsa végre”.
Chmod 666 fájl.txt
Beállítja a file.txt engedélyét, hogy „mindenki olvassa és írjon”.
Chmod a=rw fájl.txt
Ugyanazt hajtja végre, mint a fenti parancs szimbolikus jelöléssel.
chown- Módosítsa a fájlok vagy könyvtárak tulajdonosát.
getfacl- Fájl-hozzáférési listák megjelenítése.
ls- Sorolja fel egy könyvtár vagy könyvtárak tartalmát.
A Linuxban minden fájl vagy mappa saját engedélyekkel rendelkezik.
A jogoknak 3 típusa van:
olvasás (r), írás (w), végrehajtás (x)
A jogok 3 típusú felhasználó számára vannak meghatározva:
tulajdonos(u), csoport(g), összes többi(o)
Tehát minden fájl joga 9 bit információ (3 féle jog * 3 féle felhasználó), illetve minden bit beállítható (=1) a hozzáférés engedélyezett, vagy reset (=0) a hozzáférés megtagadva.
A jogok kiosztásánál az oktális számrendszert szokás használni.
A jogok szöveges ábrázolása (10 karakter):
- rwxr - - r - -
0123456789
Karakter a 0 pozícióban:
"-" - normál fájl, "d" - mappa, "l" - hivatkozás
Karakterek az 1-3. pozícióban:
"rwx" - tulajdonosi jogok
Karakterek a 4-6 pozícióban:
"r - -" - engedélyek a csoporthoz
Karakterek a 7-9. pozícióban:
"r - -" - jogok mindenki másnak
Táblázat a jogok meghatározásához:
Amint az a táblázatból látható, a jogok könnyen kiszámíthatók
egyszerű összegzés. 1=végrehajtás, 2=írás, 4=olvasás.
például végrehajtást (1) és (4) kiolvasást igényel, 1 + 4 = 5-öt kapunk
644. példa:
- a tulajdonos(ok) olvasnak és írnak
- csoport(g) csak olvasható
- mások(o) csak olvasható
755. példa:
- tulajdonos(ok) minden joga
- csoport(g) olvassa el és hajtsa végre
- egyéb(o) olvasás és végrehajtás
Olyan programozási nyelvekben, mint a C,
Minden szám elejére 0 kerül a jogokhoz, ami azt jelenti, hogy a szám oktális, azaz. Írjon 0644-et 644 helyett. Ha parancssorból módosítja a jogosultságokat, erre általában nincs szükség.
Négyjegyű jogok nézete (4755), további jogok
SUID, SGID, ragadós bitek:
példák:
SUID készlet:
- r w s - - - - - - SUID bitek beállítása és végrehajtása a tulajdonos számára
- r - S - - - - - - SUID bit beállítva, végrehajtási bit nincs beállítva
Telepített SGID:
- r w x r w s - - - SGID bitek beállítása és futtatása csoporthoz
- r w x r - S - - - SGID bit beállítva, nincs beállítva kivégzés a csoport számára
A ragadós bit be van állítva:
- r w x r w x r w t ragadós bitek beállítása és végrehajtása mások számára
- r w x r w x r - T ragadós bit be van állítva, de nincs beállítva. másokért tesz
különbségek a jogok hatásában, ha fájlokra és mappákra telepítik:
jogokat | fájlokat | mappákat |
---|---|---|
olvasás | tartalom olvasás | fájllista beszerzése |
rekord | tartalom rögzítése | a fájlok listájának módosítása (létrehozás, törlés, átnevezés) |
teljesítmény | fájl végrehajtható | felhasználó vagy folyamat, a mappát "aktuális/működőképes" |
SUID | Állítsa be a "Felhasználói azonosítót" végrehajtáskor | Felhasználói azonosító felülírása fájl/mappa létrehozásakor (használja a gyökérmappa tulajdonosi azonosítóját) |
SGID | Állítsa be a "Csoportazonosítót" végrehajtáskor | Csoportazonosító felülírása fájl/mappa létrehozásakor (használja a gyökérmappa csoportazonosítóját) |
ragadós | megakadályozza, hogy a tulajdonoson kívül mindenki törölje |
A "-R" rekurzív engedélyeket alkalmaz minden fájlra és almappára
Példák:
chmod -R 755 mappa/
chmod 644 fájl
stb.
Lehetőség van a jogok teljes megváltoztatására, csak bizonyos felhasználói csoportok jogainak hozzáadására vagy eltávolítására
szimbólumok használata oktális számok helyett.
"u" - felhasználó/tulajdonos
"g" - felhasználói csoport
"o" - más felhasználók
"a" - minden felhasználói csoport
Engedélyformátum [[+-=], ...
Példák:
chmod -R a+x mappa/ minden csoport rekurzív végrehajtása
A chmod a+rx fájl mindenki számára olvasható és végrehajtható
chmod u+rx,g-rx fájl hozzáadása olvasás és végrehajtás a tulajdonos számára, és
visszavonja egy csoport engedélyeit
chmod a+r,o= fájl hozzáadása olvasás minden csoporttípushoz és visszavonás
minden jog az összes többi felhasználó számára
chown tulajdonosváltási parancs:
Chown [-R] tulajdonos: csoportfájl/mappa
Példák:
chown -R 0:0 mappa/ tulajdonos/csoport=gyökér rekurzív beállítása
chown myuser:mygroup fájl állítsa be a myuser/mygroup-ot egy fájlra
Csapat chmod (MÓD módosítása- módváltás) nagyon specifikus szintaxissal rendelkezik. Szintaxis általában:
de jellemző rá, hogy a rendszerváltás sokféle formát ölthet. Kétféleképpen határozható meg:
A következő példa bemutatja, hogyan engedélyezheti minden felhasználó számára a fájl olvasását, módosítását és mentését. Ehhez módosítani kell az "egyéb" csoport jogosultságait.
Írja be a parancssorba:
ls -l example1.txt A következő információk jelennek meg:
-rw-rw-r-- 1 felhasználó felhasználó 42. március 24. 22:07 example1.txt Most írja be a következő parancsot:
chmod o+w example1.txt Az o+w parancs azt jelenti, hogy az "o" betűvel jelölt "egyebek" írási engedélyt adsz az example1.txt fájlhoz. Ha látni szeretné, hogy a megadott parancs végrehajtása mit eredményezett, nézzük meg újra a fájlt:
-rw-rw-rw- 1 felhasználó felhasználó 42. március 24. 22:09 example1.txt Most már mindenki olvashatja és írhatja a fájlt.
Az example1.txt fájl olvasásának és írásának letiltásához használja a chmod parancsot.
chmod go-rw example1.txt A go-rw parancs közli a rendszerrel, hogy meg akarja akadályozni, hogy a csoport és a "mások" olvassák és írhassák az example1.txt fájlt.
Ennek eredményeként az engedélyek így fognak kinézni:
-rw------- 1 felhasználó felhasználó 42. március 24. 22:10 example1.txt A fenti osztályok és jogok a megfelelő angol szavak rövidítései, így könnyen megjegyezhetők: mindössze néhány karaktert kell megjegyeznie és betűk.
Íme a rövidítések átiratainak listája:
Osztályok u - a felhasználó, aki a fájl tulajdonosa (az angol "user" szóból);
g - a csoport, amelyhez a felhasználó tartozik (az angol "group" szóból);
o - a többi (nem a tulajdonos és nem a tulajdonos csoport, az angol "others" szóból);
a - all (u, g és o, az angol "all" szóból). Engedélyek r - olvasási jog;
w az írás joga;
x - végrehajtási jog. Actions + - megadja a jogot;
- - elveszi a jogot;
= - csak ezt a jogot hagyja meg.
Szeretnéd próbára tenni tudásodat? Távolítsa el az example1.txt fájl minden jogát minden felhasználótól.
chmod a-rwx example1.txt Most ellenőrizze, hogy tudja-e olvasni adott fájl parancs cat example1.txt . A következőket kell látnod:
cat: example1.txt: Engedély megtagadva Az összes engedély visszavonásával, beleértve a sajátját is, megtagadta a hozzáférést a fájlhoz. De mivel a fájl az Öné, mindig visszaadhatja a jogokat a következő paranccsal:
chmod u+rw example1.txt Annak érdekében, hogy biztosan el tudja olvasni ezt a fájlt, használja a cat example1.txt parancsot.
Íme néhány példa a chmod parancs használatára:
Az -R kapcsoló lehetővé teszi a teljes címtárfa engedélyeinek módosítását.
Mivel a könyvtárakat nem lehet alkalmazásként "futtatni", a megfelelő jogosultság hozzáadása vagy eltávolítása azt jelenti, hogy engedélyezi (vagy letiltja) a címtár megtekintését.
Például, ha megakadályozza, hogy más felhasználók végrehajtsák a docs/ könyvtárat, akkor nem számít, ki rendelkezik olvasási és írási jogosultsággal. Senki nem férhet hozzá egy könyvtár tartalmához, hacsak nem ismeri a benne lévő fájl pontos nevét.
Írja be például:
chmod a-x docs, hogy visszavonja a végrehajtási jogot minden felhasználótól.
Ha most megpróbálja megváltoztatni a könyvtárat a cd docs segítségével, kudarcot fog kapni:
bash: docs: Engedély megtagadva Engedélyek visszaszerzése saját maga és csoportja számára:
chmod ug+x docs Ha most ellenőrzi a műveletek eredményét az ls -l paranccsal, látni fogja, hogy csak a többi felhasználó nem fér hozzá a docs/ könyvtárhoz.
A chmod parancs lehetővé teszi a fájl olvasási, írási és használati engedélyeinek beállítását. Mert operációs rendszer A UNIX többfelhasználós, általában nem egyedül dolgozik fájlrendszer. A rendszer felhasználói bármilyen módon hozzáférhetnek a különböző könyvtárakhoz, és elolvashatják a többi felhasználóhoz tartozó fájlokat, amennyiben erre engedélyük van.
Ha Ön a fájl tulajdonosa, akkor eldöntheti, hogy kinek van joga a fájlt olvasni, írni, és ha programról van szó, akkor azt végrehajtani. Korlátozhatja a címtár-hozzáférési jogokat is. Ha hozzáférést ad a könyvtárhoz, az azt jelenti, hogy az ls paranccsal megengedi a felhasználónak, hogy cd-re küldje és kinyomtassa a könyvtár tartalmát. A következő karakterek használatosak a hozzáférési jogok jelzésére:
A következő karakterek jelzik, hogy melyik felhasználó rendelkezik ezekkel a hozzáférési jogokkal:
Amikor létrehoz egy fájlt vagy könyvtárat, a rendszer automatikusan megad vagy nem ad hozzáférést Önnek, a csoport egy tagjának vagy a rendszer összes felhasználójának. Ezt az automatikus jogosultsági műveletet felülbírálhatja (lásd a 9. szakaszt). Ezen túlmenően, függetlenül attól, hogy milyen jogokat kap a fájl létrehozásakor, Ön, mint a fájl vagy könyvtár tulajdonosa használhatja a módosítási kulcsot.
Egy fájl vagy könyvtár jogosultságait az ls -l paranccsal határozhatja meg. Például, ha a startship/bin könyvtárban van, és az ls -l parancsot írja be, a következő információkat kapja:
$ ls -l
A képernyő bal oldalán láthatók a megjelenítési és listafájlok és az eszközök könyvtár engedélyei:
Rwxr-xr-x az -rw-r--r-- megjelenítési fájlhoz a drwxr-x--x listafájlhoz az eszközök könyvtárához
Az első karakter a fájl típusát írja le (például a "-" karakter azt jelzi, hogy közönséges fájlról van szó, a "d" karakter pedig egy könyvtárat). A következő kilenc karakter az engedélyeket írja le. A kilenc közül az első három karakter a tulajdonos számára, a második három - a csoportnak, a harmadik - az összes felhasználónak adott engedélyt. Mindegyik készlet r,w,x karakterek aktuálisat mutatja megállapított jogokat hozzáférést minden felhasználói kategória számára. Ha a szimbólum helyett "-" van, akkor a megfelelő jog hiányzik.
Két korlátozás van. Véletlenül előfordulhat, hogy egy karakterláncban az l vagy s betűk jelennek meg r, w vagy x helyett. Az s betű egy fájl végrehajtásának különleges jogát jelöli. Azon a helyen jelenik meg, ahol általában az r betű szerepel a halmazokban a tulajdonos vagy a felhasználói csoport számára, és ez a fájl speciális végrehajtási jogát jelenti. Ez csak a programozóknak és a rendszerprogramozóknak számít. Az l betű azt jelzi, hogy a zár megjelenik a fájl elérésekor. Ez nem jelenti azt, hogy a fájl védett.
A meglévő engedélyeket a chmod paranccsal módosíthatja.
Parancs szintaxis:
Chmod who+permissions fájl(ok)
chmod- | program neve; |
WHO - | a három felhasználói csoport egyike: |
u- | tulajdonos; |
g- | csoport; |
o- | Minden felhasználó; |
"+" vagy "-" - | jogok megléte vagy hiánya; |
jobb - | a három jog egyike: |
r- | az olvasás joga; |
w- | a felvétel joga; |
x- | az előadáshoz való jog; |
fájl(ok) - | a fájl(ok) neve (könyvtár); a fájl feltételezhetően az aktuális könyvtárban található, vagy meg kell adnia a teljes elérési utat. |
Jegyzet. A chmod parancs nem fut le, ha szóközt tesz a "who", "+", "-" és "right" közé.
A következő példák a chmod parancs használatának számos módját mutatják be. A kijelző tulajdonosaként Ön olvashatja a fájlt, írhat rá, és végrehajthatja a fájlt. Megvédheti a fájlokat a véletlen módosításoktól. Ehhez írja be a következő parancssort:
chmod u-w kijelző
Amint láthatja, a fájl módosítására vonatkozó jog megváltozott. Amíg ez az írási engedély létezik, nem tudja módosítani ezt a fájlt.
Most térjünk át egy másik példára. A megjelenítési fájl írási engedélye nem engedélyezett a csoportja és a rendszer összes felhasználója számára. Az olvasás joga azonban biztosított. Ez azt jelenti, hogy a fájlt a saját könyvtárukba másolhatják, majd módosíthatják azt. Ezen műveletek megakadályozása érdekében vissza kell vonnia az olvasási jogot. Ehhez írja be a következő parancsot:
Chmod go-r kijelző
-r - tiltja a fájl olvasását vagy másolását.
Ellenőrizze az eredményt, és írja be az ls -l parancsot. A képernyő így fog kinézni:
$ chmod go -r kijelző
A chmod paranccsal megadhat vagy megtagadhat engedélyt könyvtárakhoz és fájlokhoz.
Például engedélyt adott arra, hogy elolvassa a kézikönyvet saját magának (u), csoportja tagjainak (g) és a rendszer összes felhasználójának. A rendszerhez hozzáféréssel rendelkező minden felhasználónak joga lesz elolvasni az ebben a könyvtárban található fájlok nevét az ls -l parancs kiadásával. Hasonlóképpen, az írási hozzáférés megadása lehetővé teszi a felhasználók számára, hogy új fájlokat hozzanak létre a könyvtárban, és töröljék a meglévő fájlokat a könyvtárban. A végrehajtható könyvtár engedélyezése lehetővé teszi a kijelölt felhasználók számára, hogy a cd paranccsal ebbe a könyvtárba navigáljanak (és aktuális könyvtárukká tegyék).
Két módszer létezik, amellyel a chmod parancsot. A fent leírt módszert, amelyben az r, w és x szimbólumok a jogot jelzik, szimbolikus módszernek nevezzük.
Alternatív módszer az oktális módszer. Formátuma megköveteli az engedélyek megadását három nyolcas számjegy használatával (0 és 7 között).