Ablakok.  Vírusok.  Jegyzetfüzetek.  Internet.  hivatal.  Segédprogramok.  Drivers

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:

  • szám
  • Szimbólumok

Engedélyek módosítása a chmod segítségével

Írja be a hozzáférési jogokat szám szerint

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 első számjegy a felhasználó hozzáférési jogainak jelzésére szolgál.
  • A csoport második számjegye.
  • A harmadik mindenki másnak.

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ámEngedélyekSzimbó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 - olvasnir--
5 r+x – olvasás+futásr-x
6 r+w - olvasás+módosításrw-
7 r+w+x - olvasás+módosítás+futtatásrwx

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:

  • 7 - a tulajdonos-felhasználó jogai. A fájl tulajdonosa olvashatja, módosíthatja és futtathatja a fájlt (r+w+x).
  • 6 - jogok a csoport számára. A csoporthoz tartozó felhasználók olvashatják és módosíthatják a fájlt (r+w).
  • 4 - mindenki más jogai. Mindenki más csak a fájlt tudja olvasni (r).

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ésLeí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-xA fájlt mindenki elolvashatja és futtathatja. A tulajdonos módosíthatja is a fájlt.
777 -rwxrwxrwxMinden felhasználó olvashatja, módosíthatja és szerkesztheti a fájlt.

Hozzáférési jogok írása szimbólumokkal

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:

  • chmod +x myfile1

    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 .

  • chmod g=rw myfile2

    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).

  • chmod u-w myfile3

    A fájl tulajdonosának ( u) eltávolítjuk a változtatási engedélyt ( w) fájl.

  • chmod ug+x myfile2

    Engedje meg a tulajdonosnak u) és csoport ( g) futtassa a fájlt ( x).

  • chmod u+x,g-w,o-r myfile3

    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.

Rekurzívan változó engedélyek

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

Videó áttekintése a chmod parancsról

chown parancs - tulajdonos és csoport módosítása

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

chgrp parancs - csoport módosítása

Van még egy parancs - chgrp. Csak a csoport megváltoztatását teszi lehetővé. Például:

chgrp sambashare myfile

Összegzés

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:

  1. felhasználó ( u ser) tudott olvasni ( r olvasni), írni ( w rítus) és végrehajtani ( x ecute) őt;
  2. csoporttagok ( g sor) tud olvasni ( r ead) és végrehajt ( x ecute) őt;
  3. és mások is ( oők) csak olvasni tudnak ( r ead) őt.

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:

  • 4 azt jelenti, hogy "olvasni",
  • 2 jelentése "írás",
  • 1 jelentése "végrehajtás",
  • A 0 azt jelenti, hogy "nincs engedély".

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).

Szintaxis chmod

chmod ... MODE[,MODE]... FÁJL... chmod ... OCTAL-MODE FÁJL... chmod ... --reference=RFILE FILE...

chmod opciók

-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.

Technikai leírá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.

Setuid és Setgid bitek

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.

Korlátozott eltávolítású zászló (vagy "ragadó bit")

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ájljogosultságok megtekintése

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:

chmod példák

chmod 644 fájl.htm

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.

Kapcsolódó parancsok

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:

  • SUID vagy setuid: módosítsa a "Felhasználói azonosítót" futás közben
  • SGID vagy setgid: a "Csoportazonosító" módosítása futás közben
  • ragadós bit: Letiltja a törlést minden felhasználó számára, kivéve a tulajdonost. Korábban a bit azt jelentette, hogy "megőrizni" a memóriában a folyamat befejezése után.
Asztal. A további jogok számszerű ábrázolása:

További bitek szöveges megjelenítése:
A további biteket a következő szimbólumok jelölik:
"S", "s" - SUID, SGID
"T", "t" - ragadós bit
ezeknek a biteknek a pozíciója megegyezik az "x" végrehajtási jogok pozícióival (3,6,9)
ha azonban nincsenek végrehajtási jogok, nagybetűs" azaz nagy karakterek. Ha végrehajtási engedélyek vannak beállítva, a rendszer "kisbetűket", azaz kis karaktereket használ.

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:

jogokatfájlokatmappákat
olvasás tartalom olvasásfájllista beszerzése
rekord tartalom rögzítésea fájlok listájának módosítása
(létrehozás, törlés, átnevezés)
teljesítményfá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

parancs a jogosultságok megváltoztatásához chmod:
chmod [-R] fájl/mappa engedélyek

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:

  1. nyolcas számként. A tulajdonosi engedélyek ezután 00 formátumú számoknak felelnek meg, ahol a hozzárendelt jogosultságnak felelnek meg: 4 az olvasáshoz, 2 az íráshoz és 1 a végrehajtáshoz. Hasonlóképpen, a tulajdonosi csoport engedélyei 0-ra, az „egyéb” engedélyei pedig . Ezután már csak annyit kell tennie, hogy megtalálja a kívánt mód eléréséhez hozzárendelt engedélyek összegét. Tehát az rwxr-xr-- engedélyek 400+200+100 (tulajdonosi engedélyek, rwx) +40+10 (csoportengedélyek, r-x) +4 (egyéb engedélyek, r--) = 754; így az engedélyek a szabad tagok számában vannak kifejezve. Ez azt jelenti, hogy a korábbi engedélyek feltétel nélkül lecserélődnek;
  2. kifejezések használatával. Ebben az esetben az engedélyeket vesszővel elválasztott kifejezések sorozata fejezi ki. Innentől a kifejezés a következő lesz: [kategória]<+|-|=><разрешения> .
Példák:
  • chmod -R o-w /megosztott/docs: Rekurzív módon eltávolítja mások írási engedélyét a /shared/docs/ könyvtárban lévő összes fájlból és alkönyvtárból.
  • chmod -R og-w,o-x privát/: rekurzív módon eltávolítja a csoport és mások írási jogosultságát a teljes privát/könyvtárból, és eltávolítja a végrehajtási engedélyt mások számára.
  • chmod -c 644 misc/file*: megváltoztatja a misc/ könyvtárban lévő összes fájl engedélyét, amelynek neve file-nal kezdődik, az rw-r--r-- értékre (azaz olvasási jogosultság mindenkinek és írási jogosultság csak a tulajdonosnak), és csak azokat a fájlokat jelenti, amelyeket érintett a parancs.

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:

  • g+w Írási engedélyt ad a tulajdonos csoportnak.
  • o-rwx - minden jogot elvesz a többi felhasználótól;
  • u+x - jogot ad a tulajdonosnak a fájl végrehajtására;
  • a+rw - lehetővé teszi, hogy bárki olvasson és írjon egy fájlt;
  • ug+r - lehetővé teszi a tulajdonos és a csoport számára a fájl olvasását;
  • g=rx - lehetővé teszi a csoport számára, hogy olvassa és végrehajtsa a fájlt (nem írhat bele).

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.

3.10.6.1. Hogyan határozzuk meg a jogokat

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 összesen 35 -rwxr-xr-x 1 startship projekt 9346 Nov 1 08:06 display -rw-r--r-- 1 startship project 6428 Dec 2 10:26 list drwxr-x--x 2 startship project 32 Nov 8 15 :32 szerszám $

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.

3.10.6.2. A meglévő engedélyek módosítása

A meglévő engedélyeket a chmod paranccsal módosíthatja.

Parancs szintaxis:

Chmod who+permissions fájl(ok) vagy chmod who-rights fájl(ok) Ahol

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őMiután megkapta a promptot, írja be a következő parancsot: ls -l hogy ellenőrizze, hogyan változtak az engedélyek. A képernyő így fog kinézni: $ chmod u-w display $ ls -l összesen 35 -r-xr-xr-x 1 startship projekt 9346 Nov 1 08:06 display -rw-r--r-- 1 startship project 6428 Dec 2 10:26 list drwxr-x--x 2 startship project Nov 32. 8 15:32 eszközök $

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ő ahol g és o jelöli a csoport és a rendszer összes felhasználójának jogait;
-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ő $ ls -l összesen 35 -rwx--x--x 1 startship projekt 9346 Nov 1 08:06 display -rw-r--r-- 1 startship project 6428 Dec 2 10:26 list drwxr-x--x 2 startship project Nov 32. 8 15:32 eszközök $

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).

3.10.6.3. Alternatív módszer

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).

Ha hibát észlel, jelöljön ki egy szövegrészt, és nyomja meg a Ctrl + Enter billentyűket
OSSZA MEG: