Linux

Forståelse af Linux-filtilladelser

Forståelse af Linux-filtilladelser

I Linux styrer filtilladelser, attributter og ejerskab det adgangsniveau, som systemet behandler og brugere har til filer. Dette sikrer, at kun autoriserede brugere og processer har adgang til bestemte filer og kataloger.

Linux-filtilladelser #

Den grundlæggende Linux-tilladelsesmodel fungerer ved at knytte hver systemfil til en ejer og en gruppe og tildele tilladelsesadgangsrettigheder til tre forskellige klasser af brugere:

Filejerskab kan ændres ved hjælp af chown og chgrp kommandoer.

Tre filtilladelsestyper gælder for hver klasse af brugere:

Dette koncept giver dig mulighed for at kontrollere, hvilke brugere der kan læse filen, skrive til filen eller udføre filen.

For at se filtilladelserne skal du bruge ls kommando:

ls -l filnavn
-rw-r - r-- 12 Linux-brugere 12.0K 28. apr. 10:10 filnavn | [-] [-] [-] - [------] [---] | | | | | | | | | | | | | + -----------> 7. Gruppe | | | | | + -------------------> 6. Ejer | | | | + --------------------------> 5. Alternativ adgangsmetode | | | + ----------------------------> 4. Andre Tilladelser | | + ------------------------------> 3. Gruppetilladelser | + ----------------------------------> 2. Ejertilladelser + ------------------------------------> 1. Filtype 

Det første tegn angiver filtypen. Det kan være en almindelig fil (-), bibliotek (d), et symbolsk link (l) eller andre specielle typer filer. De følgende ni tegn repræsenterer filtilladelserne, tre tripletter på tre tegn hver. Den første triplet viser ejerens tilladelser, den anden gruppe tilladelser, og den sidste triplet viser alle andres tilladelser.

I eksemplet ovenfor (rw-r - r--) betyder, at filejeren har læse- og skrivetilladelser (rw-), gruppen og andre har kun læsetilladelser (r--).

Filtilladelser har en anden betydning afhængigt af filtypen.

Hver af de tre tilladelsestripletter kan konstrueres af følgende tegn og have forskellige effekter, afhængigt af om de er indstillet til en fil eller til en mappe:

Effekt af tilladelser på filer

TilladelseKarakterBetydning på fil
Læs-Filen kan ikke læses. Du kan ikke se filens indhold.
rFilen kan læses.
Skrive-Filen kan ikke ændres eller ændres.
wFilen kan ændres eller ændres.
Udfør-Filen kan ikke udføres.
xFilen kan udføres.
sHvis den findes i bruger triplet, det indstiller setuid bit. Hvis den findes i gruppe triplet, det indstiller setgid bit. Det betyder også, at x flag er sat.
Når setuid eller setgid flag indstilles på en eksekverbar fil, filen udføres med filens ejer- og / eller grupperettigheder.
SSamme som s, men x flag er ikke sat. Dette flag bruges sjældent på filer.
tHvis den findes i andre triplet, det indstiller klæbrig bit.
Det betyder også, at x flag er sat. Dette flag er ubrugeligt på filer.
TSamme som, t men x flag er ikke sat. Dette flag er ubrugeligt på filer.

Effekt af tilladelser på kataloger (mapper)

Kataloger er specielle typer filer, der kan indeholde andre filer og kataloger.

TilladelseKarakterBetydning på telefonbogen
Læs-Katalogets indhold kan ikke vises.
rKatalogets indhold kan vises.
(e.g., Du kan liste filer i biblioteket med ls.)
Skrive-Katalogets indhold kan ikke ændres.
wKatalogets indhold kan ændres.
(e.g., Du kan oprette nye filer, slette filer ... osv.)
Udfør-Kataloget kan ikke ændres til.
xKataloget kan navigeres ved hjælp af cd.
sHvis den findes i bruger triplet, det indstiller setuid bit. Hvis den findes i gruppe triplet indstiller den setgid bit. Det betyder også, at x flag er sat. Når setgid flag er indstillet på et bibliotek, de nye filer, der oprettes inden i det, arver bibliotekets gruppe-id (GID) i stedet for det primære gruppe-id for den bruger, der oprettede filen.
setuid har ingen indvirkning på mapper.
SSamme som s, men x flag er ikke sat. Dette flag er ubrugeligt i mapper.
tHvis den findes i andre triplet, det indstiller klæbrig bit.
Det betyder også, at x flag er sat. Når den sticky bit er indstillet på en mappe, er det kun filens ejer, katalogets ejer eller den administrative bruger, der kan slette eller omdøbe filerne i kataloget.
TSamme som t, men x flag er ikke sat. Dette flag er ubrugeligt i mapper.

Ændring af filtilladelser #

Filtilladelserne kan ændres ved hjælp af chmod kommando. Kun root, filejeren eller brugeren med sudo-rettigheder kan ændre tilladelserne for en fil. Vær ekstra forsigtig, når du bruger den chmod, især når rekursivt ændres tilladelserne. Kommandoen kan acceptere en eller flere filer og / eller mapper adskilt af mellemrum som argumenter.

Tilladelser kan specificeres ved hjælp af en symbolsk tilstand, numerisk tilstand eller en referencefil.

Symbolisk (tekst) metode nr

Syntaksen for chmod kommando, når du bruger den symbolske tilstand, har følgende format:

chmod [VALGMULIGHEDER] [ugoa…] [- + =] perms ... [,…] FIL .. 

Det første sæt flag ([ugoa ...]), brugernes flag, definerer brugernes klasser, for hvilke tilladelserne til filen ændres.

Når brugernes flag er udeladt, er det som standard -en.

Det andet sæt flag ([- + =]), operationens flag, definerer, om tilladelserne skal fjernes, tilføjes eller indstilles:

Tilladelserne (permanenter .. ) indstilles eksplicit ved hjælp af enten nul eller et eller flere af følgende bogstaver: r, w, x, x, s, og t. Brug et enkelt bogstav fra sættet u, g, og o når du kopierer tilladelser fra en til en anden brugerklasse.

Når du indstiller tilladelser til mere end en brugerklasse ([,…]), brug kommaer (uden mellemrum) til at adskille de symbolske tilstande.

Her er nogle eksempler på, hvordan du bruger chmod kommando i symbolsk tilstand:

Numerisk metode nr

Syntaksen for chmod kommando, når du bruger den symbolske tilstand, har følgende format:

chmod [VALGMULIGHEDER] NUMMERFIL .. 

Når du bruger den numeriske tilstand, kan du indstille tilladelserne for alle tre brugerklasser (ejer, gruppe og alle andre) på samme tid.

Tilladelsesnummeret kan være et 3- eller 4-cifret nummer. Når der bruges 3 cifre, repræsenterer det første ciffer tilladelser for filens ejer, det andet for filens gruppe og det sidste for alle andre brugere.

Hver tilladelse til at skrive, læse og udføre har følgende talværdi:

Tilladelsesnummeret for en bestemt brugerklasse er repræsenteret af summen af ​​værdierne for tilladelserne for den pågældende gruppe.

For at finde ud af filens tilladelser i numerisk tilstand skal du blot beregne totalerne for alle brugeres klasser. For eksempel, for at give læs, skriv og udfør tilladelse til filens ejer, læs og udfør tilladelser til filens gruppe og kun læs tilladelser til alle andre brugere, gør du følgende:

Ved hjælp af ovenstående metode kommer vi op på tallet 754, som repræsenterer de ønskede tilladelser.

For at indstille setuid, setgid, og klæbrig bit flag, brug fire cifre.

Når nummeret på 4 cifre bruges, har det første ciffer følgende betydning:

De næste tre cifre har samme betydning som når du bruger 3 cifret nummer.

Hvis det første ciffer er 0, kan det udelades, og tilstanden kan repræsenteres med 3 cifre. Den numeriske tilstand 0755 er det samme som 755.

For at beregne den numeriske tilstand kan du også bruge en anden metode (binær metode), men den er lidt mere kompliceret. At vide, hvordan man beregner den numeriske tilstand ved hjælp af 4, 2 og 1, er tilstrækkelig for de fleste brugere.

Du kan kontrollere filens tilladelser i den numeriske notation ved hjælp af stat kommando:

stat -c "% a" filnavn 

Her er nogle eksempler på, hvordan du bruger chmod kommando i numerisk tilstand:

Konklusion #

I Linux er adgangen til filerne begrænset ved hjælp af filtilladelser, attributter og ejerskab. For at ændre filens tilladelser skal du bruge chmod kommando.

Hvis du har spørgsmål eller feedback, er du velkommen til at efterlade en kommentar.

Top Oculus App Lab-spil
Hvis du er Oculus-headset-ejer, skal du være opmærksom på sideloading. Sideladning er processen med at installere ikke-butiksindhold på dit headset. S...
Top 10 spil at spille på Ubuntu
Windows-platform har været en af ​​de dominerende platforme til spil på grund af den enorme procentdel af spil, der udvikler sig i dag til indbygget a...
5 bedste arkadespil til Linux
I dag er computere seriøse maskiner, der bruges til spil. Hvis du ikke kan få den nye høje score, ved du hvad jeg mener. I dette indlæg vil du kende n...