Linux Umask Calculator
Bereken Linux umask-waarden en bekijk een voorbeeld van de resulterende standaardmachtigingen voor nieuwe bestanden en mappen. Ondersteunt octale invoer, voorinstellingen en symbolische uitvoer.
Invoer
Uitvoer
Readme
Wat is umask?
umask (user file-creation mode mask) is een Linux- en Unix-instelling die de standaardmachtigingen bepaalt die aan nieuw gemaakte bestanden en mappen worden toegewezen. In plaats van machtigingen rechtstreeks in te stellen, definieert umask welke machtigingsbits moeten worden verwijderd uit de systeemstandaarden wanneer een nieuw bestand of een nieuwe map wordt gemaakt.
Het systeem begint met een basismachtiging van 666 (lezen en schrijven voor iedereen) voor bestanden en 777 (lezen, schrijven en uitvoeren voor iedereen) voor mappen. De umask wordt vervolgens bitgewijs van deze standaarden afgetrokken met behulp van een logische AND-NOT-bewerking, wat de uiteindelijke machtigingen oplevert. Met bijvoorbeeld een umask van 022 krijgen nieuwe bestanden 644 en nieuwe mappen 755.
Elk umask-cijfer komt overeen met een machtigingsklasse: het eerste cijfer beïnvloedt de eigenaar, het tweede de groep en het derde anderen. Een cijfer van 0 betekent dat geen machtigingen worden gemaskeerd, terwijl 7 alle machtigingen voor die klasse verwijdert.
Hulpprogrammabeschrijving
De Linux umask Calculator converteert een umask-waarde en een basismachtiging naar de resulterende effectieve machtigingen in zowel octale als symbolische notatie. Het genereert ook de exacte umask shell-opdracht, waardoor systeembeheerders, ontwikkelaars en DevOps-engineers het resultaat van elke umask kunnen bekijken voordat deze wordt toegepast op een shell, script of systeemconfiguratie.
Voorbeelden
| Umask | Base | Resulterende octaal | Symbolisch |
|---|---|---|---|
| 022 | 666 | 644 | rw-r--r-- |
| 022 | 777 | 755 | rwxr-xr-x |
| 077 | 666 | 600 | rw------- |
| 027 | 777 | 750 | rwxr-x--- |
| 002 | 666 | 664 | rw-rw-r-- |
Functies
- Berekent resulterende octale en symbolische machtigingen van elke umask
- Ondersteunt zowel 3-cijferige als 4-cijferige (met voorgaande sticky/setuid-bit) umask-waarden
- Veelgebruikte umask-voorinstellingen (022, 027, 077, 002, 007, 000)
- Basismachtigingsvoorinstellingen voor bestanden (666) en mappen (777)
- Genereert de kant-en-klare
umaskshell-opdracht
Gebruiksscenario's
- Serverhardening: Bekijk een strengere umask zoals
077voordat u deze toevoegt aan/etc/profileof de shell-configuratie van een gebruiker om ervoor te zorgen dat nieuwe bestanden privé zijn. - Gedeelde ontwikkelomgevingen: Controleer of
002of007groepsschrijfbare bestanden produceert voor samenwerkingsprojectmappen. - Implementatiescripts: Bevestig dat de umask die in CI/CD-pijplijnen of container-ingangspunten wordt gebruikt, de verwachte bestandsmachtigingen voor toepassingslogboeken en geüploade assets oplevert.
Hoe het werkt
De uiteindelijke machtiging wordt voor elke klasse (eigenaar, groep, anderen) berekend met behulp van de formule:
final = base AND (NOT umask)Elk octaal cijfer wordt onafhankelijk verwerkt. Voor een umask-cijfer van 2 (binair 010) en een basiscijfer van 6 (binair 110), is het resultaat 110 AND NOT 010 = 100, wat gelijk is aan 4 (alleen-lezen). Het voorloopcijfer van een 4-cijferige umask bepaalt speciale bits (setuid, setgid, sticky) en wordt genegeerd in de standaard machtigingsberekening.
Tips
- Gebruik
666als basis om machtigingen voor nieuwe bestanden te zien, en777voor nieuwe mappen. - Een umask van
000betekent dat geen machtigingen worden verwijderd — nuttig alleen in strak gecontroleerde, geïsoleerde omgevingen. - Om de umask permanent te maken, voegt u de gegenereerde opdracht toe aan
~/.bashrc,~/.profileof/etc/profile, afhankelijk van het bereik dat u wilt.