Een aangepast umask instellen in macOS

Aan elk bestand en elke map op een Mac zijn bevoegdheden gekoppeld. Wanneer je een nieuw bestand of een nieuwe map aanmaakt, bepaalt het umask de bevoegdheden.

Deze geavanceerde stappen zijn hoofdzakelijk bedoeld voor systeembeheerders en anderen die bekend zijn met de commandoregel. Ga voorzichtig te werk wanneer je bevoegdheden en umasks van bestanden wijzigt. Als je een fout maakt, kun je de beveiliging van bestanden, mappen of apps op je Mac verlagen, of de werking van apps verstoren.

Over bevoegdheden en umasks

Bevoegdheden. Alle bestanden, mappen en apps die op je Mac worden bewaard, hebben bevoegdheidsinstellingen. Deze bepalen welke gebruikersaccounts een bestand, map of app kunnen lezen, schrijven of uitvoeren. De bevoegdheden omvatten POSIX-bevoegdheden en toegangscontrolelijsten (Access Control Lists, of ACL's). Je kunt de POSIX-bevoegdheden van een gebruiker meer of minder beperken door de waarde van het umask aan te passen.

Umasks. De POSIX-bevoegdheden voor een bestand kunnen worden weergegeven door een getal van drie cijfers. Je ziet de bevoegdheden mogelijk op deze manier weergegeven wanneer je ze in Terminal bekijkt. Elk cijfer ligt tussen 0 en 7. Wanneer je een bestand aanmaakt, wordt de umask-waarde afgetrokken van de standaardwaarde (doorgaans 666 voor bestanden en 777 voor mappen) om de bevoegdheden voor het nieuwe bestand of de nieuwe map te bepalen. Een standaard-umask van 022 stelt bijvoorbeeld bevoegdheden in van 644 voor nieuwe bestanden en 755 voor nieuwe mappen.

Je kunt het umask instellen op verschillende locaties. Elke locatie heeft gevolgen voor andere apps. Als je een umask niet correct instelt, verlies je mogelijk toegang tot bepaalde bestanden en verleen je toegang aan gebruikers waar dat niet de bedoeling was. Raadpleeg het gedeelte over MODES op de chmod(1)-pagina in de handleiding voor meer informatie.

Umask voor gebruikersapps

Log in als beheerder en voer het volgende commando in Terminal in. Vervang hierbij nnn door de umask-waarde, bijvoorbeeld 027 of 002. Met deze opdracht wordt het umask van de gebruiker ingesteld voor elke app die wordt geopend, inclusief apps die worden geopend vanaf de opdrachtregel en nieuwe bestanden die met deze apps worden aangemaakt. Na het invoeren van dit commando moet je je Mac mogelijk herstarten.

sudo launchctl config user umask nnn

Als Terminal antwoordt: 'Could not write configuration: No such file or directory' (Configuratie kan niet worden geschreven: bestand of directory bestaat niet)', moet je controleren of je opstartschijf een map heeft op /private/var/db/com.apple.xpc.launchd/config. Als de configuratiemap ontbreekt, probeer je het opnieuw na het uitvoeren van het volgende commando om deze aan te maken:

sudo mkdir -m 755 /private/var/db/com.apple.xpc.launchd/config

Umask voor systeemprocessen

Log in als beheerder en voer het volgende commando in Terminal in. Vervang hierbij nnn door de umask-waarde, bijvoorbeeld 027 of 002. Met dit commando wordt het umask van de gebruiker ingesteld voor alle daemons die deze uitvoert in de systeemcontext. Dit wordt sterk afgeraden omdat de bevoegdheden kunnen worden gewijzigd voor bestanden die door het systeem worden gebruikt. Bevoegdheden die te streng zijn, kunnen de werking van de software verhinderen, en bevoegdheden die te ruim zijn, kunnen aanleiding geven tot beveiligingsproblemen. Na het invoeren van dit commando moet je je Mac mogelijk herstarten.

sudo launchctl config system umask nnn

Als Terminal antwoordt: 'Could not write configuration: No such file or directory' (Configuratie kan niet worden geschreven: bestand of directory bestaat niet)', moet je controleren of je opstartschijf een map heeft op /private/var/db/com.apple.xpc.launchd/config. Als de configuratiemap ontbreekt, probeer je het opnieuw na het uitvoeren van het volgende commando om deze aan te maken:

sudo mkdir -m 755 /private/var/db/com.apple.xpc.launchd/config

Meer informatie

Voer in Terminal man launchctl in voor meer informatie over het instellen van een umask.

Publicatiedatum: