Ubuntu Lösung : umask 0002

Aus Zebradem WIKI
Zur Navigation springenZur Suche springen

Das Board mit Freiheiten





user von z.B. ubuntu 12.04 kennen das Problem

   Please unpack/checkout again with umask set to 0022. Schluss.


Gut maskiert

  • Wer neu angelegten Dateien direkt bestimmte Rechte mitgeben möchte, setzt dazu das Kommando umask ein. Die Eingabe von umask ohne Optionen verrät die Voreinstellung:
huhn@open:~$ umask
0022
  • Die Ausgabe von umask ist eine vierstellige Oktalzahl – allerdings verrät das Kommando nicht etwa, welche Rechte vergeben werden, sondern zeigt vielmehr an, welche Rechte entzogen werden. Die Zahl 0022 bedeutet also, dass neue Dateien die Zugriffsrechte rw-r--r-- (644) und neue Verzeichnisse die Rechte rwxr-xr-x (755) erhalten (jeweils für die Gruppe und alle anderen wird 2, also "schreiben", abgeschaltet). Dabei sollte man beachten, dass neu erzeugte Dateien nie standardmäßig ausführbar sind, während bei Verzeichnissen das x-Attribut gesetzt wird – wenn Sie es nicht durch eine entsprechende Umask verhindern.
  • Um die Maske zu ändern, tippen Sie umask und den neuen Wert. Sollen neu angelegte Dateien also auch von Gruppenmitgliedern schreibbar sein, stellen Sie dieses ein mit:
umask 0002
  • Beachten Sie, dass solche Änderungen nur temporär für die Dauer einer Bash-Sitzung gelten. Wer die umask dauerhaft setzen möchte, muss dieses in die Datei .profile oder .bashrc eintragen. Dort sollte dann umask 0002 stehen – ohne Anführungszeichen. Die Änderung tritt in Kraft, wenn Sie eine neue Bash starten oder die veränderte Konfigurationsdatei, beispielsweise durch den Aufruf . .bashrc, einlesen.
  • Umask modification
$ umask
002
  • Editiere /etc/login.defs
sudo gedit /etc/login.defs
USERGROUPS_ENAB yes
  • und mit # auskomentieren
#USERGROUPS_ENAB yes

bzw auf no setzen

USERGROUPS_ENAB no

anschliessend abspeichern

  • Ergebnis
$ umask
022
  • Wer nicht mit Oktalzahlen rechnen mag, kann umask auch in einer Form aufrufen, die an chmod erinnert: Nach
umask u=rwx,g=rx,o=
  • sind alle neu erzeugten Dateien von Benutzer und Gruppe lesbar und nur vom Benutzer schreibbar; für Verzeichnisse gilt das gleiche, aber Benutzer und Gruppenmitglieder können sie außerdem auch betreten.

links

http://www.cs.wcupa.edu/~rkline/linux/runtime-environment.html