"Enter" drücken, um zum Inhalt weiterzugehen

Zugriffsrechte eines Benutzerordners reparieren (ab 10.11.6 „El Capitan“)

Im Finder folgende Tastaturkürzel nutzen:

  1. Command + Shift + H
  2. Command + I

Nun „Teilen & Zugriffsrechte“ einblenden, das kleine Schlösschen anklicken, als Admin authentifizieren, das Zahnrädchen sowie „Auf alle Unterobjekte anwenden …“ anklicken und mit „OK“ bestätigen.

fix_user_permissions

Danach kann das Terminal geöffnet und folgendes ausgeführt werden:

diskutil resetUserPermissions / `id -u`

Falls dies mit einem Fehler -69841 verweigert werden sollte, vorher folgendes ausführen:

chflags -R nouchg ~

Danach sollte

diskutil resetUserPermissions / `id -u`

problemlos funktionieren.

In verwalteten Umgebungen größerer Firmen möchte man dies sicher jederzeit als „Self Service“ policy verfügbar haben, folgendes Script wäre dann hilfreich (umask erfordert einen Neustart, um wirksam zu werden):

#!/bin/bash

consoleUsername=$(stat -f %Su /dev/console)
consoleUserID=$(stat -f %u /dev/console)

sudo chown -R -v $consoleUserID:20 /Users/$consoleUsername
sudo chmod -R -v -N /Users/$consoleUsername
sudo chmod -R -v 700 /Users/$consoleUsername

sudo su "$consoleUsername" -c 'chflags -R nouchg /Users/$consoleUsername'
sudo su "$consoleUsername" -c 'diskutil resetUserPermissions / $consoleUserID'

sudo launchctl config user umask 077

exit 0

reset_user_permissions_v3

Achtung: Per umask wird in diesem Beispiel das Standard-Verhalten innerhalb des Benutzerordners global angepasst. Der Standardwert 022 wird auf 077 geändert, damit ’staff‘ und ‚everyone‘ keine Lese-Rechte für neu angelegte Ordner innerhalb des Home-Verzeichnisses erhalten. Warum Apple für die umask von Benutzern den Wert 022 statt 077 als Standard vorgibt, weiß man wahrscheinlich wirklich nur im Silicon Valley selbst … 😉