
Ich versuche, eine Datei in einem Ordner mit Gruppenschreibzugriff zu erstellen. Der Benutzer tomcat7 ist in der Gruppe. Warum funktioniert das nicht?
skr@konrad~/data/asu$ sudo -u tomcat7 sh
$ whoami
tomcat7
$ echo > /home/skr/data/asu/g.gz.index
sh: 2: cannot create /home/skr/data/asu/g.gz.index: Permission denied
$ ls -la /home/skr/data/asu/
total 18708
drwxrwxr-x 2 skr skr 4096 Sep 29 08:38 .
drwxrwxr-x 85 skr skr 4096 Jul 30 00:42 ..
$ grep ^skr /etc/group
skr:x:1002:tomcat7:mail
Habe versucht, mich abzumelden, aber es hilft nicht. Irgendwelche Ideen?
Antwort1
Sehen Sie sich die Ausgabe von id
oder groups
an. Diese Befehle zeigen die Wahrheit darüber, zu welchen Gruppen der aktuelle Prozess tatsächlich gehört, besser als grepping /etc/group
. Sie werden wahrscheinlich feststellen, dass der Benutzer „tomcat7“ nicht tatsächlich Mitglied der Gruppe „skr“ ist, wie Sie es beabsichtigt haben.
Der Grund dafür ist, dass Sie einen Syntaxfehler haben /etc/group
: Jede Zeile dieser Datei sollte 4 durch Doppelpunkte getrennte Felder enthalten (Gruppenname, Passwort, GID, Mitgliederliste), aber die angezeigte Zeile hat 5 Felder. Entfernen Sie das überflüssige Feld und das Trennzeichen ( :mail
) und versuchen Sie es erneut.