Ändern Sie die Ordnerberechtigungen und den Eigentümer

508

Ich möchte, dass der Benutzer alle Rechte für diesen Ordner (sowie alle darin enthaltenen Unterverzeichnisse und Dateien) hat:

~/.blabla

Derzeit im Besitz von root.

Ich habe zahlreiche Beiträge gefunden (in diesem Forum und anderswo), in denen beschrieben wird, wie dies für Dateien durchgeführt wird, aber ich kann keine Möglichkeit finden, dies für ganze Ordner zu tun.

user2413
quelle
3
Könnte jemand eine grafische Methode hinzufügen, die ich mich wundere?
8128,
2
@fluteflute gibt es eine grafische Methode?
Marco Ceppi
2
gksu nautilusvielleicht. Ich bin mir nicht ganz sicher und würde gerne wissen ....;)
8128
einfach sudo chown -R Benutzername Ordnername
ArifMustafa

Antworten:

222

Machen Sie dem aktuellen Benutzer alles im Ordner (und den Ordner selbst) zu eigen:

sudo chown -R $USER ~/.blabla
Lucian Adrian Grijincu
quelle
35
Sehr hilfreich für Neulinge (wie ich), wenn sie nicht wissen, wie sie 'usergroup' sudo chown <your username>:<your usergroup> -R <path to>/.blabla
eingeben sollen
706

Verwendung chownzum Ändern des Eigentums und chmodzum Ändern von Rechten.

Verwenden Sie, wie Paweł Karpiński sagte, die Option -R, um die Rechte auch für alle Dateien innerhalb eines Verzeichnisses anzuwenden.

Beachten Sie, dass diese beiden Befehle nur für Verzeichnisse funktionieren. Mit der Option -R ändern sie auch die Berechtigungen für alle Dateien und Verzeichnisse innerhalb des Verzeichnisses.

Zum Beispiel

sudo chown -R username:group directory

Besitzrechte (sowohl Benutzer- und Gruppen) wird aller Dateien und Verzeichnisse innerhalb von directoryund directorysich selbst.

sudo chown username:group directory

ändert nur die Berechtigung des Ordners, lässt directoryaber die Dateien und Ordner im Verzeichnis alleine.

Wie in enzotib erwähnt, müssen Sie verwenden sudo, um den Besitz von root auf sich selbst zu ändern.

Bearbeiten:

Beachten Sie, dass bei Verwendung von chown <user>: <file>(Ausgelassene Gruppe beachten) die Standardgruppe für diesen Benutzer verwendet wird.

Wenn Sie nur die Gruppe ändern möchten, können Sie Folgendes verwenden:

chown :<group> <file>
Ikke
quelle
7
Es sollte gesagt werden, dass "sudo" für chown erforderlich ist.
Enzotib
1
fatanstic. Sie sollten in Betracht ziehen, "user: user" durch "username" zu ersetzen.
user2413
5
Die vordefinierten Variablen half mir: sudo chown -R $USER:$USER /path/to/dir. Vielen Dank!
Samuel Elh
7
Hüten Sie sich vor dem rekursiven Besitz eines Verzeichnisses. Denken Sie nach, bevor Sie springen. Sei nicht chownkopiert aus dem Internet, Kinder. Nur weil Sie ein Node-Paket installieren möchten und es Sie nicht zulassen, nicht sudo chown -Rnur, weil der Faustschlag von googeln die Fehlermeldung sagt zu. Leichtsinn sudo chown -Rkann Ihr Betriebssystem töten.
Benjamin R
1
Es muss erwähnt werden, dass die Verwendung der -ROption nur für Dateien und Ordner gilt, die bereits im Verzeichnis vorhanden sind. Es gilt NICHT für zukünftige Kreationen. Wenn Sie beispielsweise einen anderen Ordner oder eine andere Datei als Stammverzeichnis in dem Ordner erstellen, für den Sie bereits Berechtigungen geändert haben, werden Sie dieselben Erfahrungen machen, die Sie jetzt haben, bis Sie chmod \ chown erneut ausführen.
Jaberwocky
55

Wenn Sie es vorziehen, können Sie dies auch mit einer grafischen Benutzeroberfläche tun. Sie müssen dazu Nautilus als root öffnen. Drücken Sie Alt+, F2um auf das Dialogfeld "Anwendungen ausführen" zuzugreifen, und geben Sie eingksu nautilus

Navigieren Sie als Nächstes zu dem Ordner, den Sie ändern möchten, und klicken Sie mit der rechten Maustaste darauf. Wählen Sie dann im Kontextmenü "Eigenschaften". Sie können nun den Benutzer oder die Gruppe auswählen, der bzw. die Sie als "Eigentümer" des Ordners festlegen möchten, sowie die Berechtigungen, die Sie ihnen erteilen möchten. Klicken Sie abschließend auf "Berechtigungen auf eingeschlossene Dateien anwenden", um die Änderungen rekursiv anzuwenden.

Es scheint jedoch, dass dies bei einigen Operationen in einem tiefen Ordnerbaum nicht immer funktioniert. Wenn dies nicht funktioniert, verwenden Sie den entsprechenden Terminalbefehl.

Alt-Text

undetwas
quelle
27

Wenn es root gehört, können Sie dies tun

sudo chown <your username>:<your usergroup> -R <path to>/.blabla

Da ./blabla im Besitz von root ist, müssen Sie Root-Rechte erwerben, um dies zu ändern. Genau das wird sudo tun. Die Option -R für den Befehl chown lautet: Dieses Verzeichnis und alles darin rekursiv.

AndyB
quelle
10

du solltest es versuchen chmod -R

Pawełkowy
quelle
1

Erstens chmod -Rkönnen Ihre Systemberechtigungen durcheinander gebracht werden, wenn Sie dies versehentlich für Systemdateien und -verzeichnisse tun.

Zweitens chmod -Rkönnen Flags in diesen Ordnern durcheinander gebracht werden, und es ist keine gute Idee, allen Benutzern Berechtigungen für einige Ordner zu erteilen.

Sie sollten versuchen und chownstattdessen:

 sudo tree -fai ~/.blabla  | xargs -L1 -I{} sudo chown youruser:youruser {}
Eduard Florinescu
quelle