Konverterare från symbolisk chmod till oktal
Konvertera chmod-lägen mellan oktal och symbolisk notation: 755 till u=rwx,g=rx,o=rx och tillbaka. Tillämpa även ändringar som u+x eller go-w på ett aktuellt läge, hantera setuid, setgid och sticky bit samt läs strängar från ls -l. Körs i webbläsaren.
Inmatning
Läget före ändringen, som används av symboliska lägen som u+x. + lägger till och - tar bort behörigheter från det.Begränsar symboliska ändringar utan u, g, o eller a, till exempel +w.
Utdata
Readme
Vad är oktala och symboliska chmod-lägen?
chmod ställer in behörigheterna för en fil i Linux, macOS och andra Unix-system, och stöder två notationer. Ett oktal-läge, till exempel 755, har en siffra vardera för ägaren, gruppen och alla andra, där läsning är 4, skrivning är 2 och körning är 1. Ett symboliskt läge, till exempel u=rwx,g=rx,o=rx, anger i stället klasserna (u ägare, g grupp, o övriga, a alla) och behörigheterna (r, w, x).
Symboliska lägen kan också ändra behörigheter i stället för att ange alla: u+x lägger till körbehörighet för ägaren, go-w tar bort skrivbehörighet för gruppen och övriga, och g=u kopierar ägarens behörigheter till gruppen. Ett oktalt läge anger alltid alla behörigheter, så resultatet i oktal form av en ändring beror på vilket läge filen hade innan.
Beskrivning av verktyget
Det här verktyget konverterar chmod-lägen mellan oktal och symbolisk notation. Välj käll- och målnotation, eller låt källan stå på automatisk identifiering: ange 755 för att få u=rwx,g=rx,o=rx, eller ange ett symboliskt läge för att få det oktala värdet. För ändringar som u+x eller a+X anger du filens aktuella läge och ser det läge som chmod skulle lämna den med. Du kan även klistra in en behörighetssträng från ls -l, till exempel -rwxr-xr-x, eller ett helt chmod-kommando.
Exempel
| Oktal | Symbolisk | ls -l | Typisk användning |
|---|---|---|---|
| 644 | u=rw,go=r |
-rw-r--r-- |
Vanliga filer |
| 755 | u=rwx,go=rx |
-rwxr-xr-x |
Skript, program och kataloger |
| 600 | u=rw,go= |
-rw------- |
Privata filer, till exempel SSH-nycklar |
| 2775 | u=rwx,g=rwxs,o=rx |
drwxrwsr-x |
Delade kataloger som behåller sin grupp |
| 1777 | a=rwx,+t |
drwxrwxrwt |
/tmp och andra delade arbetskataloger |
| 4755 | u=rwxs,go=rx |
-rwsr-xr-x |
Program som passwd |
Funktioner
- Konverterar oktal till symbolisk notation och symbolisk notation till oktal, med en växlingsknapp för att byta riktning
- Identifierar notationen för det läge du anger, eller konverterar från den notation du väljer
- Tillämpa relativa ändringar som
u+x,go-w,a=r,u+w,g=uocha+Xpå ett aktuellt läge - Hanterar setuid, setgid och sticky bit (
s,toch oktala lägen med 4 siffror) - Skriver det symboliska läget i fullständig form (
u=rwx,g=rx,o=rx) eller kompakt form (u=rwx,go=rx) - Läser och skriver behörighetssträngar från
ls -l, inklusives,S,tochT - Accepterar inklistrade kommandon som
sudo chmod -R 755 dir - Visar exakt vilket tecken som är fel när ett läge är ogiltigt
Så fungerar det
Ett oktalt läge läses som upp till fyra siffror: den valfria första siffran innehåller setuid (4), setgid (2) och sticky bit (1), och de tre andra innehåller ägarens, gruppens och de övrigas behörigheter. Ett symboliskt läge läses sats för sats enligt POSIX-grammatiken och tillämpas på det aktuella läget på samma sätt som GNU chmod i Linux:
+lägger till behörigheter,-tar bort dem och=anger dem samt rensar resten för de angivna klasserna.Xlägger endast till körbehörighet för kataloger och för filer som redan har körbehörighet för någon.sställer in setuid meduoch setgid medg.tställer in sticky bit medo,aeller utan klass.- Utan klass, som i
+x, tillämpas ändringen på alla utom de bitar som blockeras av umask. - För kataloger förblir setuid och setgid oförändrade om inte läget anger dem, som i
g-s.
Den symboliska utdataformen anger varje bit uttryckligen, så för en fil ger den samma resultat oavsett vilket läge filen hade innan. Sticky bit skrivs som en separat +t-sats eftersom både GNU och BSD chmod accepterar den i den formen.
Tips
- Använd
a+Xmedchmod -Rför att göra kataloger sökbara utan att göra alla filer körbara. chmod 755på en katalog tar inte bort setgid med GNUchmod. Användchmod 00755ellerg-sför att ta bort det.- Ansible och många konfigurationsfiler förväntar sig en inledande nolla, som i
0755. Aktivera ”Visa alltid 4 oktala siffror” för att få det. - Ett
.eller+efter enls -l-sträng markerar en SELinux-kontext eller en ACL. Användgetfaclför att se ACL-poster, som inte visas av läget.