Warum kann ein Linux-Benutzer keine Dateien in einer Gruppe bearbeiten, zu der er gehört?
Ich verwende Ubuntu 12.04 und hatte das gleiche Problem, bei dem ein Benutzer nicht in eine Datei schreiben kann, auf die er Gruppenzugriff erhält. Beispielsweise:
whoami //I am user el
el
touch /foobar/test_file //make a new file
sudo chown root:www-data /foobar/test_file //User=root group=www-data
sudo chmod 474 /foobar/test_file //owner and others get only read,
//group gets rwx
sudo groupadd www-data //create group called www-data
groups //take a look at the groups and see
www-data //www-data exists.
groups el //see that el is part of www-data
el : www-data
Starten Sie das Terminal jetzt neu, um sicherzustellen, dass die Benutzer und Gruppen wirksam werden. Loggen Sie sich als el.
vi /foobar/test_file //try to edit the file.
Erzeugt die Warnung:
Warning: W10: Warning: Changing a readonly file"
Was? Ich habe alles richtig gemacht, warum funktioniert es nicht?
Antworten:
Führen Sie einen vollständigen Neustart des Computers durch. Das Anhalten des Terminals reicht nicht aus, um diese Probleme zu beheben.
Ich denke, was passiert, ist, dass Apache2 auch die WWW-Datengruppe verwendet, also hat die Aufgabe irgendwie verhindert, dass die Benutzer und Gruppen korrekt durchgesetzt werden. Sie müssen sich nicht nur abmelden, sondern auch alle Dienste, die Ihre Gruppe verwenden, stoppen und neu starten. Wenn ein Neustart nicht funktioniert, haben Sie größere Probleme.