Vad är Linux filbehörigheter?

Linux filbehörigheter styr vem som kan läsa, skriva eller köra en fil eller katalog. Varje fil i Linux har tre behörighetsgrupper: ägare (användaren som skapade den), grupp (användare som delar en gemensam grupp) och övriga (alla andra). Varje grupp kan tilldelas tre typer av åtkomst: läsa (r), skriva (w) och köra (x).

Behörigheter kan uttryckas i två notationer. Symbolisk notation använder bokstäver som rwxr-xr-x, där varje tecken representerar en specifik behörighet för en specifik grupp. Oktal (numerisk) notation använder ett tre- eller fyrsiffrigt tal som 755, där varje siffra är summan av behörighetsvärdena: läsa = 4, skriva = 2, köra = 1.

En valfri inledande siffra i oktal notation representerar specialbitar: setuid (4), setgid (2) och sticky bit (1). Setuid tillåter ett program att köras med filägarens behörigheter, setgid gör att nya filer ärver gruppen från den överordnade katalogen, och sticky bit förhindrar användare från att ta bort filer de inte äger i delade kataloger.

Verktygsbeskrivning

Det här verktyget låter dig bygga och avkoda Linux filbehörigheter interaktivt. Markera kryssrutor för ägare, grupp och övriga för att ange läs-, skriv- och körflaggor, och se omedelbart resultatet i både oktal och symbolisk notation. Du kan också skriva ett oktalt värde som 755 eller en symbolisk sträng som rwxr-xr-x direkt, och kryssrutorna och den visuella utdatan uppdateras automatiskt. En färgkodad visuell visning gör det enkelt att förstå vilka behörigheter som är aktiva på en gång, och ett färdigt chmod-kommando genereras åt dig.

Exempel

Oktal Symbolisk Betydelse
755 -rwxr-xr-x Ägare: full åtkomst. Grupp och övriga: läsa och köra.
644 -rw-r--r-- Ägare: läsa och skriva. Grupp och övriga: endast läsa.
700 -rwx------ Ägare: full åtkomst. Ingen åtkomst för grupp eller övriga.
777 -rwxrwxrwx Full åtkomst för alla.
1755 -rwxr-xr-t Samma som 755 med sticky bit satt.
4755 -rwsr-xr-x Samma som 755 med setuid-bit satt.

Funktioner

  • Markera individuella läs-, skriv- och körningsbehörigheter per grupp med kryssrutor
  • Ange oktal (t.ex. 755) eller symbolisk (t.ex. rwxr-xr-x) notation direkt och se omedelbar konvertering
  • Färgkodade visuella block för snabb igenkänning av aktiva behörigheter
  • Stöd för speciella behörighetsbitar: setuid, setgid och sticky bit
  • Automatiskt genererat chmod-kommando redo att kopiera och använda i en terminal

Användningsområden

  • Konfigurera en webbserver: Bestäm snabbt rätt behörighetsuppsättning för filer som serveras av Apache eller Nginx, till exempel 644 för statiska filer och 755 för körbara skript.
  • Felsöka åtkomstnekatade fel: Klistra in behörighetssträngen från ls -l-utdata för att visuellt förstå vilken grupp som saknar åtkomst.
  • Lära sig Linux-behörigheter: Utforska interaktivt hur växling av enskilda flaggor förändrar den oktala och symboliska representationen.

Hur det fungerar

Varje behörighetstyp har en numerisk vikt: läsa = 4, skriva = 2, köra = 1. Den oktala siffran för en grupp är summan av de aktiverade behörighetsvikterna. Till exempel, läsa + köra = 4 + 1 = 5. Den fullständiga oktala notationen sammanfogar siffrorna för ägare, grupp och övriga — så rwxr-xr-x blir 755.

Specialbitar lägger till en valfri inledande siffra beräknad på samma sätt: setuid = 4, setgid = 2, sticky = 1. Ett värde på 1755 innebär sticky bit (1) plus ägare=7, grupp=5, övriga=5.

Alternativ förklarade

  • Kryssrutor för ägare / grupp / övriga: Växla läsa (r), skriva (w) och köra (x) för varje behörighetsgrupp oberoende av varandra.
  • Setuid: När det är satt på en körbar fil körs den med filägarens behörigheter istället för den anropande användarens.
  • Setgid: På en katalog ärver nya filer katalogens grupp. På en körbar fil körs den med filgruppens behörigheter.
  • Sticky bit: På en katalog kan endast filägaren ta bort eller byta namn på filer inuti den, även om övriga har skrivbehörighet.
  • Oktal inmatning: Skriv ett 3-siffrigt eller 4-siffrigt oktalt tal för att ange alla behörigheter på en gång.
  • Symbolisk inmatning: Skriv en 9 eller 10 tecken lång symbolisk sträng (med valfritt filtypprefix) för att ange behörigheter.

Vanliga frågor

Vad betyder chmod 777? Det ger läs-, skriv- och körningsbehörigheter till ägaren, gruppen och alla andra användare. Detta är generellt sett osäkert för produktionssystem.

Vad är skillnaden mellan gemen s och versal S? Gemen s innebär att körningsbiten och specialbiten (setuid eller setgid) båda är satta. Versal S innebär att endast specialbiten är satt, utan körningsbehörighet.

Vad används sticky bit till? Sticky bit sätts vanligtvis på delade kataloger som /tmp för att förhindra användare från att ta bort eller byta namn på varandras filer, även om de alla har skrivåtkomst till katalogen.