Ich hatte bisher Probleme mit Berechtigungen und habe eine andere Frage gestellt, aber das Problem identifiziert, ohne dass ich es noch beheben konnte.
Mein Setup:
- Ubuntu Desktop mit LAMP-Stack
- 5 "Benutzer" Ich habe Benutzer erstellt, die ich auf dem Ubuntu-Server mit erstellt habe
sudo useradd -r -s /bin/false USERNAME
und die für den Zugriff auf die freigegebenen lokalen Netzwerkordner verwendet werden, dh für die Computer in meinem Netzwerk, um eine Verbindung mit dem mit Samba freigegebenen Ordner / var / www herzustellen. - BEARBEITEN: Der Zweck ist es, eine Art "Master-Localhost" zu erstellen, auf dem alle Computer in meinem lokalen Netzwerk lokal auf derselben Website arbeiten können (ich habe KEINE statische IP-Adresse, sodass der Server nicht von einem anderen Ort aus erreichbar ist). .
Mein Problem:
Wenn ich /var/www/html
zurzeit auf einem Computer im Netzwerk einen neuen Ordner anlege (z. B. Ordner / var / www / html / testsite1), gehört dieser Ordner automatisch boris:www-data
("boris" ist der Hauptadministrator auf meiner Ubuntu-Desktop-Installation) , und es zeigt in der Tat boris: www-Daten beim Ausführen ls -l
auf dem neu erstellten Ordner), was Probleme mit meinem aktuellen Setup verursacht (mit Duplicator Plugin für WordPress von LifeInTheGrid meistens). Allerdings sind sowohl meine /var/www
als auch meine /var/www/html
im Besitz vonwww-data:www-data
Daher würde ich gerne wissen, wie ich:
Eigentümer in www-Daten ändern: www-Daten aller Dateien UND Verzeichnisse unter / var / www und / var / www / html
Stellen Sie sicher, dass alle Dateien oder Ordner, die ich mit einem der Benutzer meines Netzwerks erstelle, automatisch im Besitz von www-data sind: www-data (Dies schließt Dateien ein, die automatisch von PHP-Skripten erstellt werden, wie es das Duplicator-Plugin tut, wenn ich es bin nicht falsch).
Gibt es eine Möglichkeit, das zu tun?
Hinweis: Ich bin ein Super-Neuling in Sachen Linux und Kommandozeilen, aber ich hole schnell nach.
Hinweis 2: umask ist bereits auf 0002 eingestellt
BEARBEITEN:
Versuchte dies:
sudo chown -R www-data:www-data /var/www/
Und dann setuid und setgid Bits, indem Sie dies tun:
sudo chmod u+s /var/www/html
sudo chmod g+s /var/www/html
Dann abgemeldet, Apache neu gestartet und versucht, einen neuen Ordner mit einem Mac zu erstellen, der über die Netzwerk-IP (lokale IP, nicht statisch) mit meinem Server verbunden ist.
Ich rannte
ls -l on /var/www/html
Ausgabe ist noch:
drwxr-sr-x 2 boris www-data testsite1
Hinweis:
Ich habe meine Apache-Konfiguration schon einmal überprüft und es ist bereits festgelegt auf:
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
BEARBEITEN: Ich habe es rückwärts versucht, z. B. alles eingerichtet, was boris gehört: www-data und meine envvars apache config auf boris: www-data gesetzt. ES FUNKTIONIERTE!
Folgendes habe ich getan:
Geändert von envvars zu
export APACHE_RUN_USER=boris
export APACHE_RUN_GROUP=www-data
Ran
sudo chown -R boris:www-data /var/www/
Apachem neu gestartet, einen neuen Ordner erstellt, meine Dateien hinzugefügt, das Plugin ausgeführt, jetzt heißt es gut !!!