~~META: date issued = 2008-01-01 &category = tipps, linux ~~ {{tag>linux grundlagen befehle chown chgrp chmod heiko_teichmeier glauchau sachsen}} __letzte inhaltliche Überarbeitung:__ 01.01.2008 ===== Linux - Grundlagen und Befehle ===== ===== 3. Teil - Dateiattribute ===== ==== 3.1 Bearbeitung der Dateiattribute ==== Dateien und Verzeichnisse haben unter Linux ein **Berechtigungskonzept** zur Verhinderung von unberechtigten Zugriffen und Schaffung eines gewissen Maßes an Sicherheit, wie sich das für ein Mehrbenutzer-(und Server-)Betriebssystem gehört. Dateien und Verzeichnisse gehören bestimmten **"usern" und "groups"** und besitzen für die drei grundlegenden Dateiopertationen **lesen, schreiben, ausführen/hineinwechseln** Berechtigungsflags. Diese sind dem **user, der group, den others** zugeordnet. Besteht einmal die Notwendigkeit für manuelle Eingriffe in das System (Installationen u.ä.) kommt man oft in die Verlegenheit die Besitzverhältnisse oder Berechtigungen einer Datei/eines Verzeichnisses ändern zu müssen. Dies stelle ich im foglenden dar. ==== 3.2 chown [Optionen] Username Datei/Verzeichnis ==== === => Datei/Verzeichnis einem User zuordnen === * **chown** (change owner), **//ändert//** die Zugehörigkeit von Dateien und Verzeichnissen zu einem **//User//** [optional gleichzeitig der Gruppe]. * **chown heiko datei**, ändert den Eigentümer der Datei auf den //User "heiko"//. * **chown heiko:nogroup datei**, ändert den Eigentümer der Datei auf den //User "heiko"// **und** die Gruppe auf //"nogroup"//. * **chown -R heiko verzeichnis**, ändert den Eigentümer des Verzeichnisses //rekursiv// (also alle Verzeichnisse und Dateien unterhalb auch) auf den //User "heiko"//. ==== 3.3 chgrp [Optionen] Gruppenname Datei/Verzeichnis ==== === => Datei/Verzeichnis einer Gruppe zuordnen === * **chgrp** (change group), **//ändert//** die Zugehörigkeit von Dateien und Verzeichnissen zu einer **//Gruppe//**. * **chgrp nogroup Datei/Verzeichnis**, ändert den Eigentümer der Datei/Verzeichnis auf die //Gruppe "nogroup"//. * **chgrp -R nogroup verzeichnis**, ändert die Gruppe des Verzeichnisses //rekursiv// (also alle Verzeichnisse und Dateien unterhalb auch) auf die //Gruppe "nogroup"//. ==== 3.4 chmod [Optionen] Datei/Verzeichnis ==== === => Datei/Verzeichnis Zugriffsrechte ändern === * **chmod** (change mode), **//ändert//** die Zugriffsrechte von Dateien und Verzeichnissen. * **chmod u+rwx Datei/Verzeichnis** fügt für den **Eigentümer (user)** die Zugriffsrechte **r**ead, **w**rite, e**x**ecute hinzu (**+**). * **chmod -R u+rwx Verzeichnis** fügt für den **Eigentümer (user)** die Zugriffsrechte **r**ead, **w**rite, e**x**ecute zu allen Dateien und Verzeichnissen unterhalb von //Verzeichnis// hinzu (**+**). * **chmod -R u+rwX Verzeichnis** fügt für den **Eigentümer (user)** die Zugriffsrechte **r**ead, **w**rite, e**x**ecute (Groß-X bewirkt das Hinzufügen nur bei Verzeichnissen) zu allen Dateien und Verzeichnissen unterhalb von //Verzeichnis// hinzu (**+**). * **chmod u-x Datei/Verzeichnis** entfernt für den **Eigentümer (user)** das Zugriffsrecht e**x**ecute **(-)**. * **chmod g+rwx Datei/Verzeichnis** fügt für die **Gruppe (group)** die Zugriffsrechte **r**ead, **w**rite, e**x**ecute hinzu (**+**). * **chmod g-x Datei/Verzeichnis** entfernt für die **Gruppe (group)** das Zugriffsrecht e**x**ecute **(-)**. * **chmod o+rwx Datei/Verzeichnis** fügt für alle **anderen (others)** die Zugriffsrechte **r**ead, **w**rite, e**x**ecute hinzu (**+**). Die Optionen sind auch kombiniert (ugo) verwendbar. Eine andere Möglichkeit stellt die Angabe einer //"Rechte-Maske"// dar [[tipp_linuxgrundlagen_02#Erste Spalte: Dateityp und Zugriffsrechte|(Bedeutung wie oben erklärt)]]: * **chmod 0750 Datei/Verzeichnis** setzt die Zugriffsrechte auf: * -rwxr-x--- (user rwx, group r-x, others ---). * **chmod 0640 Datei/Verzeichnis** setzt die Zugriffsrechte auf: * -rw-r-x--- (user rw-, group r--, others ---). * **chmod -R 0640 Verzeichnis** setzt die Zugriffsrechte //rekursiv//. [<>] ~~DISQUS~~