Filbehörigheter i Linux/Unix: Hur man läser, skriver och ändrar
⚡ Smart sammanfattning
Filbehörigheter i Linux och Unix styr vem som kan läsa, skriva och köra varje fil, vilket skyddar ett system med flera användare genom två lager: äganderätt, som tilldelar en användare, grupp och andra, och läs-, skriv- och körbehörighetsbitarna.

Filbehörigheter i Linux och Unix bestämmer vem som får läsa, ändra eller köra varje fil, vilket håller ett delat system med flera användare säkert. Den här sidan går igenom filägande, läs-, skriv- och körbehörigheter samt de kommandon som ändrar dem.
Linux är en klon av Unix, det fleranvändaroperativsystem som kan nås av många användare samtidigt. Linux kan också användas på stordatorer och servrar utan några modifieringar. Men detta väcker säkerhetsproblem, eftersom en oombedd eller illvillig användare kan korrumpera, ändra eller ta bort viktig data. För effektiv säkerhet delar Linux upp auktorisering i två nivåer:
- Ägande
- tillstånd
Konceptet med filbehörighet och äganderätt är avgörande i Linux. Här förklarar vi behörigheter och äganderätt i Linux och diskuterar båda. Låt oss börja med äganderätt.
Linux-filägande
Varje fil och katalog på ditt Unix/Linux-system har tilldelats tre typer av ägare, vilka anges nedan. Diagrammet nedan visar hur ägarskap kopplas till användaren, gruppen och andra.
Användare
En användare är ägaren till filen. Som standard blir personen som skapade en fil dess ägare. Därför kallas en användare ibland även ägare.
Grupp
A användargrupp kan innehålla flera användare. Alla användare som tillhör en grupp har samma Linux-gruppbehörigheter till filen. Anta att du har ett projekt där ett antal personer behöver åtkomst till en fil. Istället för att manuellt tilldela behörigheter till varje användare kan du lägga till alla användare i en grupp och tilldela gruppbehörighet till filen, så att endast dessa gruppmedlemmar, och ingen annan, kan läsa eller ändra filerna.
Övrigt
Alla andra användare som har åtkomst till en fil. Denna person har varken skapat filen eller tillhör en användargrupp som kan äga filen. I praktiken betyder det alla andra. Därför kallas det även för att ställa in behörigheter för världen när du anger behörigheter för andra.
Nu uppstår den stora frågan: hur skiljer Linux mellan dessa tre användartyper så att användare 'A' inte kan påverka en fil som innehåller viktig information eller data från andra användare 'B'? Det är som att inte vilja ha en kollega som arbetar på din... Linux-dator för att visa dina bilder. Det är här behörigheter kommer in i bilden, och de definierar användarbeteende.
Låt oss förstå behörighetssystemet på Linux.
Linux -filbehörigheter
Varje fil och katalog i ditt Unix/Linux-system har följande tre behörigheter definierade för alla tre ägare som diskuterats ovan.
- Läsa: Denna behörighet ger dig behörighet att öppna och läsa en fil. Läsbehörighet för en katalog ger dig möjlighet att lista dess innehåll.
- Skriva: Skrivbehörigheten ger dig behörighet att ändra innehållet i en fil. Skrivbehörigheten till en katalog ger dig behörighet att lägga till, ta bort och byta namn på filer som lagras i katalogen. Tänk dig ett scenario där du har skrivbehörighet till en fil men inte har skrivbehörighet till katalogen där filen är lagrad. Du kommer att kunna ändra filinnehållet, men du kommer inte att kunna byta namn på, flytta eller ta bort filen från katalogen.
- Kör: In Windows, har ett körbart program vanligtvis filändelsen ”.exe” som du enkelt kan köra. I Unix/Linux kan du inte köra ett program om inte körbehörigheten är inställd. Om körbehörigheten inte är inställd kan du fortfarande se eller ändra programkoden (förutsatt att läs- och skrivbehörigheter är inställda), men inte köra den.
Låt oss se filbehörigheter i Linux med exempel. Att köra ls -l på terminalen ger:
ls -l
Skärmdumpen nedan visar behörighetssträngen i en lång lista.
Här har vi markerat '-rw-rw-r–', och den här udda koden är den som berättar om Unix-behörigheterna som ges till ägaren, användargruppen och världen.
Här antyder det första '-' att vi har valt en fil. Ikonen nedan markerar en vanlig fil.
Annars, om det vore en katalog, skulle ett 'd' ha visats, som i listan nedan.
Tecknen är ganska lätta att komma ihåg.
- r = läsbehörighet
- w = skrivbehörighet
- x = körbehörighet
- – = ingen behörighet
Låt oss titta på det så här. Den första delen av koden är 'rw-'. Detta antyder att ägaren 'Hem' kan:
- Läs filen
- Skriv eller redigera filen
Ägaren kan inte köra filen eftersom execute-biten är satt till '-'. Ikonen nedan visar execute-biten rensad till ett bindestreck.
Avsiktligt nog är många Linuxdistributioner som Fedora, CentOS och Ubuntu lägg till en användare i en grupp med samma namn som användaren. Således läggs användaren 'tom' till i en grupp med namnet 'tom'.
Den andra delen är 'rw-'. Den är för användargruppen 'Hem', och gruppmedlemmar kan:
- Läs filen
- Skriv eller redigera filen
Den tredje delen är för världen, vilket betyder vilken användare som helst. Det står 'r–'. Det betyder att användaren bara kan:
- Läs filen
Uppdelningen nedan mappar varje del av behörighetssträngen till ägaren, gruppen och världen.
Ändra fil-/katalogbehörigheter i Linux med hjälp av kommandot 'chmod'
Säg att du inte vill att en kollega ska se dina personliga bilder. Detta kan uppnås genom att ändra filbehörigheter.
Vi kan använda 'chmod' kommando, vilket står för 'ändringsläge'. Med hjälp av kommandot kan vi ställa in behörigheter (läsa, skriva, köra) för en fil eller katalog för ägaren, gruppen och världen.
Syntax:
chmod permissions filename
Det finns två sätt att använda kommandot:
- Absolut läge
- Symboliskt läge
Absolut (numeriskt) läge i Linux
I det här läget representeras filbehörigheter inte som tecken utan som ett tresiffrigt oktalt tal. Tabellen nedan visar siffrorna för alla behörighetstyper.
| Antal | Typ av behörighet | Symbol |
|---|---|---|
| 0 | Inget tillstånd | - |
| 1 | Utförande | –X |
| 2 | Skriva | -w- |
| 3 | Kör + Skriv | -wx |
| 4 | Läsa | r– |
| 5 | Läs + Kör | rx |
| 6 | Läs + Skriv | rw |
| 7 | Läs + Skriv + Kör | rwx |
Låt oss se chmod-kommandot i praktiken, som visas i terminalfönstret nedan.
I terminalfönstret ovan har vi ändrat behörigheterna för filen 'sample' till '764'. Den absoluta koden '764' säger följande:
- Ägaren kan läsa, skriva och köra.
- Användargruppen kan läsa och skriva.
- Världen kan bara läsa.
Detta visas som '-rwxrw-r–', som i resultatet nedan.
Så här kan du ändra användarbehörigheter i Linux på en fil genom att tilldela ett absolut tal.
Symboliskt läge i Linux
I absolut läge ändrar du behörigheter för alla tre ägare. I symboliskt läge kan du ändra behörigheterna för en specifik ägare. Det använder matematiska symboler för att ändra Unix-filbehörigheterna.
| Operator | BESKRIVNING |
|---|---|
| + | Lägger till en behörighet till en fil eller katalog |
| - | Tar bort behörigheten |
| = | Ställer in behörigheten och åsidosätter de behörigheter som tidigare angetts |
De olika ägarna representeras enligt följande.
| Användare | Beteckningar |
|---|---|
| u | användaren / ägaren |
| g | grupp |
| o | Övrigt |
| a | Alla Produkter |
Vi kommer inte att använda behörigheter i siffror som 755 utan tecken som rwx. Låt oss titta på exemplet nedan.
Ändra ägarskap och grupp i Linux
För att ändra ägarskap för en fil eller katalog kan du använda följande kommando:
chown user filename
Om du vill ändra användaren såväl som gruppen för en fil eller katalog, använd kommandot:
chown user:group filename
Låt oss se detta i praktiken, som visas nedan.
Om du bara vill ändra gruppägaren, använd kommandot:
chgrp group_name filename
'chgrp' står för change group. Skärmdumpen nedan visar hur chgrp-kommandot används.
Tips
- Filen /etc/group innehåller alla grupper som definierats på systemet.
- Du kan använda kommandot ”grupper” för att hitta alla grupper du är medlem i, som visas nedan.
- Du kan använda kommandot newgrp för att arbeta som medlem i en annan grupp än din standardgrupp, som visas nedan.
- Du kan inte ha två grupper som äger samma fil.
- Du har inga kapslade grupper i Linux. En grupp kan inte vara en undergrupp till en annan.
- x — att köra en katalog innebär att tillåtas att "gå in" i en katalog och eventuellt få åtkomst till underkataloger.
- Det finns andra behörigheter som du kan ställa in för filer och kataloger, vilka kommer att behandlas i en senare avancerad handledning.






.png)
.png)
.png)
.png)
.png)


