unix permissions file permissions unix with examples
Unix-behörigheter: Lär dig vilka olika filtillstånd som finns i Unix
Unix är ett fleranvändarsystem där samma resurser kan delas av olika användare.
Alla behörigheter i Unix baseras på att begränsa åtkomsten till specifika filer och mappar till specifika användare eller användargrupper.
=> Klicka här för Komplett Unix-handledningsserie
Vad du kommer att lära dig:
- Unix Permissions: Filbehörigheter med exempel
- Unix kommandoradsverktyg för att ändra åtkomstbehörigheter
- Slutsats
- Rekommenderad läsning
Unix Permissions: Filbehörigheter med exempel
Åtkomst till en fil har tre nivåer:
- Läsbehörighet - Om behörig kan användaren läsa innehållet i filen.
- Skrivbehörighet - Om den är auktoriserad kan användaren ändra filen.
- Kör tillstånd - Om behörig kan användaren köra filen som ett program.
Varje fil är associerad med en uppsättning identifierare som används för att avgöra vem som kan komma åt filen:
- Användar-ID (UID) - Anger användaren som äger filen. Som standard är det skaparen av filen.
- Grupp-ID (GID) - Anger användargruppen som filen tillhör.
Slutligen finns det tre uppsättningar åtkomstbehörigheter associerade med varje fil:
- Användartillstånd - Anger åtkomstnivån för användaren som matchar filens UID.
- Grupptillstånd - Anger åtkomstnivån för användare i grupper som matchar filens GID.
- Andra tillstånd - Anger åtkomstnivån för användare utan matchande UID eller GID.
Tillsammans gör detta schema för åtkomstkontroller Unix-systemet extremt säkert samtidigt som det ger den flexibilitet som krävs för ett fleranvändarsystem.
De ls -l kommandot kan användas för att visa behörigheterna för var och en av filerna i den aktuella mappen.
Exempel på utdata från detta kommando ges nedan.
Exempel:
flaggor länkar ägare gruppstorlek modifierat datumnamn
total of 24 drwxr-xr-x 7 user staff 224 Jun 21 15:26 . drwxrwxrwx 8 user staff 576 Jun 21 15:02. -rw-r--r-- 1 user staff 6 Jun 21 15:04 .hfile drwxr-xr-x 3 user staff 96 Jun 21 15:17 dir1 drwxr-xr-x 2 user staff 64 Jun 21 15:04 dir2 -rw-r--r-- 1 user staff 39 Jun 21 15:37 file1 -rw-r--r-- 1 user staff 35 Jun 21 15:32 file2
I denna utgång anger 'totalt 24' det totala antalet block som upptas av de listade filerna.
De återstående kolumnerna är:
- flaggor - En samling flaggor som indikerar filläget och filbehörigheterna.
- länkar - Antalet länkar som är associerade med filen.
- ägare - UID som äger filen.
- grupp - GID: erna associerade med filen.
- storlek - Filens storlek i byte.
- ändrat datum - Månad, datum, timme och minut för den senaste ändringen av filen.
- namn - Namnet på filen eller katalogen.
Flaggorna i den första kolumnen anger filläge och olika uppsättningar behörigheter:
# 1) Det första tecknet anger typen av fil:
hur man spelar en mkv-fil på Windows
- -: representerar en vanlig fil
- d: representerar en katalog
- c: representerar en karaktärsenhetsfil
- b: representerar en blockeringsenhetsfil
# 2) De följande tre tecknen anger användarbehörigheter:
- Den första av dessa tre anger om användaren har läsbehörighet:
-
- -: indikerar att användaren inte har läsbehörighet.
- r: indikerar att användaren har läsbehörighet.
-
- Det andra tecknet anger om användaren måste skriva behörighet:
-
- -: anger att användaren inte har skrivbehörighet.
- w: anger att användaren måste skriva tillstånd.
-
- Det sista tecknet anger om användaren har kört behörighet:
-
- -: indikerar att användaren inte behöver utföra behörighet.
- x: indikerar att användaren har kört behörighet.
-
# 3) De kommande tre tecknen anger gruppbehörigheter, liknande användarbehörigheterna ovan.
# 4) De sista tre tecknen anger offentliga behörigheter, liknande användarbehörigheterna ovan.
Om filen är en vanlig fil tillåter läsbehörighet användaren att öppna filen och granska dess innehåll. Skrivbehörighet tillåter användaren att ändra innehållet i filen. Och kör tillstånd tillåter användaren att köra filen som ett program.
Om filen är en katalog, kan läsbehörigheten tillåta användaren att lista innehållet i katalogen. Skrivbehörighet tillåter användare att skapa en ny fil i katalogen och ta bort en fil eller katalog från den. Execute-tillstånd tillåter användaren att köra en sökning i katalogen.
Unix kommandoradsverktyg för att ändra åtkomstbehörigheter
Unix tillhandahåller ett antal kommandoradsverktyg för att ändra åtkomstbehörigheter:
Observera att endast ägaren av filen kan ändra åtkomstbehörigheterna.
1. chmod : ändra behörigheter för filåtkomst
- beskrivning: Detta kommando används för att ändra filbehörigheter. Dessa behörigheter läses, skrivs och körs tillstånd för ägaren, gruppen och andra.
- syntax (symboliskt läge) :
chmod [ugoa][[+-=][mode]] file
- Den första valfria parametern anger vem - detta kan vara (u) ser, (g) roup, (o) thers eller (a) ll
- Den andra valfria parametern indikerar opcode - detta kan vara för att lägga till (+), ta bort (-) eller tilldela (=) behörighet.
- Den tredje valfria parametern anger läget - detta kan vara (r) ead, (w) rite eller e (x) ecute.
Exempel :Lägg till skrivbehörighet för användare, grupp och andra för file1
$ ls -l
-rw-r – r– 1 användarpersonal 39 juni 21 15:37 fil1
-rw-r – r– 1 användarpersonal 35 juni 21 15:32 fil2
$ chmod ugo+w file1 $ ls -l
-rw-rw-rw- 1 användarpersonal 39 juni 21 15:37 fil1
-rw-r – r– 1 användarpersonal 35 juni 21 15:32 fil2
$ chmod o-w file1 $ ls -l
-rw-rw-r– 1 användare personal 39 juni 21 15:37 fil1
-rw-r – r– 1 användarpersonal 35 juni 21 15:32 fil2
- syntax (numeriskt läge) :
chmod [mode] file
- Läget är en kombination av tre siffror - den första siffran anger behörigheten för användaren, den andra siffran för gruppen och den tredje siffran för andra.
- Varje siffra beräknas genom att lägga till tillhörande behörigheter. Läsbehörighet är '4', skrivbehörighet är '2' och exekveringsbehörighet är '1'.
- Exempel :Ge läs / skriv / kör tillstånd till användaren, läs / kör tillstånd till gruppen och kör tillstånd till andra.
$ ls -l
-rw-r – r– 1 användarpersonal 39 juni 21 15:37 fil1
-rw-r – r– 1 användarpersonal 35 juni 21 15:32 fil2
$ chmod 777 file1 $ ls -l
-rwxrwxrwx 1 användarpersonal 39 juni 21 15:37 fil1
-rw-r – r– 1 användarpersonal 35 juni 21 15:32 fil2
2. chown : ändra ägandet av filen.
- beskrivning : Endast filens ägare har rätt att ändra filägarskapet.
- syntax : chown [ägare] [fil]
- Exempel :Ändra ägaren till fil1 till användare2 förutsatt att den för närvarande ägs av den nuvarande användaren
$ chown user2 file1
3. chgrp : ändra gruppägarskapet för filen.
- beskrivning : Endast filens ägare har rätt att ändra filägarskapet.
- syntax : chgrp [grupp] [fil]
- Exempel :Ändra grupp fil1 till grupp2 förutsatt att den för närvarande ägs av den nuvarande användaren.
$ chgrp group2 file1
När du skapar en ny fil ställer Unix in standardfilbehörigheterna. Unix använder värdet som lagras i en variabel som kallas umask för att bestämma standardbehörigheterna. Umask-värdet berättar för Unix vilken av de tre uppsättningarna behörigheter som måste inaktiveras.
Flaggan består av tre oktala siffror som var och en representerar behörighetsmaskerna för användaren, gruppen och andra. Standardbehörigheterna bestäms genom att subtrahera umaskvärdet från '777' för kataloger och '666' för filer. Standardvärdet för umask är '022'.
4. umask : ändra standardåtkomstbehörigheter
vilken app låter dig ladda ner youtube-videor
- beskrivning: Detta kommando används för att ställa in standardfilbehörigheter. Dessa behörigheter läses, skrivs och körs tillstånd för ägare, grupp och andra.
- syntax : umask [läge]
- Läget är en kombination av tre siffror - den första siffran anger behörigheten för användaren, den andra siffran för gruppen och den tredje siffran för andra.
- Varje siffra beräknas genom att lägga till tillhörande behörigheter. Läsbehörighet är '4', skrivbehörighet är '2' och exekveringsbehörighet är '1'.
Exempel :Ge läs / skriv / kör tillstånd till användaren och inga behörigheter till grupp eller andra. tillståndet för filer kommer att vara 600 och för kataloger kommer att vara 700.
$ umask 077
- Exempel :Ge läs / skriv / kör tillstånd till användaren, läs / kör behörigheter till grupp eller andra för kataloger och skrivskydd för grupp eller andra för andra filer. tillståndet för filer blir 644 och för kataloger 755.
$ umask 022
Slutsats
Behörigheterna i Unix kan vara för 'användare', 'grupp' och för alla användare som heter 'Annat'.
Detaljerna som tillståndsflaggor, länkantal, ägare, grupp, storlek, datum för senaste ändring, fil etc. kan enkelt erhållas med kommandot ”ls-l”.
=> Klicka här för Komplett Unix-handledningsserie
PREV-handledning | NÄSTA självstudie
Rekommenderad läsning
- Unix File Access Permissions: Unix Chmod, Chown och Chgrp
- Klipp kommandot i Unix med exempel
- Filmanipulation i Unix: Översikt över Unix File System
- Unix-kommandon: Grundläggande och avancerade Unix-kommandon med exempel
- Hitta kommando i Unix: Hitta filer med Unix Find-fil (exempel)
- UNIX-handledning för nybörjare (20+ Unix-träningsvideor)
- Unix textbehandlingskommandon: Unix-filter med exempel
- Unix specialtecken eller metatecken för filmanipulation