Zwei Möglichkeiten fallen mir ein:
-
Besitzen Sie das gewünschte Verzeichnis, indem Sie
chown
verwenden :sudo chown your_username directory
(Ersetzen Sie Ihren_Benutzernamen durch Ihren Benutzernamen und Verzeichnis durch das gewünschte Verzeichnis.)
-
Die andere Sache, die Sie tun können, ist, als Root zu arbeiten, solange Sie WISSEN, WAS SIE TUN . So verwenden Sie root:
sudo -s
und dann können Sie alles tun, ohne
sudo
eingeben zu müssen vor jedem Befehl.
Arbeiten Sie im Allgemeinen immer als Ihr eigener Benutzer, es sei denn, Sie tun etwas mit systemweiten Auswirkungen.
Wenn Sie Dateien auf Ihrem Webserver bereitstellen möchten, arbeiten Sie als Ihr eigener Benutzer und verwenden Sie dann sudo
um die Dateien an Ort und Stelle im Webserverbereich Ihres Dateisystems abzulegen. Normalerweise würde dies von einem Installationsskript durchgeführt, und Sie würden so etwas wie sudo -u webmaster install-webserver-files
ausführen , oder besser sudo -u webmaster git update
(oder das Versionskontrollsystem Ihrer Wahl).
Wenn Sie auf einem Entwicklungsserver arbeiten und möchten, dass Ihre Dateien sofort zugänglich sind, erstellen Sie ein Verzeichnis im Webserverbereich und machen Sie es zu Ihrem Eigentum oder zumindest beschreibbar für Sie. Nach diesem einmaligen Vorgang (sudo chown …
oder sudo -u webmaster setfacl …
), benötigen Sie keine erhöhten Berechtigungen für den täglichen Betrieb.
Manchmal ist es praktisch, mehreren Benutzern das Schreiben in ein Verzeichnis zu gestatten oder anderweitig unterschiedliche Berechtigungen für mehrere andere Benutzer als den Eigentümer oder für mehrere Gruppen zu haben. Zugriffskontrolllisten geben Ihnen diese Möglichkeit. Siehe Berechtigungsprobleme für freigegebene Verzeichnisse auf einem Server oder Berechtigungsprobleme für Backup-Skripts.
Ja, melden Sie sich als Root an, wodurch Sie Superuser-Zugriffskontrolle erhalten.
Dasselbe Konzept in Windows, Sie können sich mit Administrator in Ihr Terminal einloggen.