staging.inyokaproject.org

Schon wieder Rechte und mount

Status: Gelöst | Ubuntu-Version: Kubuntu 8.04 (Hardy Heron)
Antworten |

kaputtnik

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

Hallo!

Suche jetzt schon ne ganze weile rum und komme irgendwie doch nicht weiter: Wie der Titel schon sagt, habe ich Verständnisprobleme mit eingehängten Partitionen und den Rechten dazu.

Ich habe eine Partition /dev/sda5 (vfat). Eingehängt wird sie mittels fstab und der Zeile:

/dev/sda5 /media/Daten-Laufwerk auto defaults,uid=0,gid=46,umask=007,utf8 0 0

Alles klar soweit. Habe Zugriff aufs Laufwerk, kann auch Daten lesen. Aber schreiben geht nicht! Ändere ich die uid auf 1000 kann ich auch schreiben. Aber was ich mich frage:

gid ist 46, also Gruppe plugdev. Darf diese Gruppe nicht schreiben? Ist uid=1000 sinnvoll? Was passiert wenn ich den Eigentümer des Verzeichnisses /media/Daten-Laufwerk von root auf kaputtnik ändere?

gruß
kaputtnik

primus_pilus Team-Icon

Ehemalige
Avatar von primus_pilus

Anmeldungsdatum:
8. Oktober 2007

Beiträge: 9144

gid ist 46, also Gruppe plugdev. Darf diese Gruppe nicht schreiben?

Bist du in der Gruppe plugdev?

groups

Ist uid=1000 sinnvoll?

Sollte eigentlich egal sein da mit "umask=007" others schreib und leserechte haben. Ändere spaßeshalber mal die Optionen auf alle dürfen alles. Also umask=777. Sollte eigendlich nicht nötig sein, mußte aber funktionieren.

Was passiert wenn ich den Eigentümer des Verzeichnisses /media/Daten-Laufwerk von root auf kaputtnik ändere?

Nichts da das fat Dateisystem die Rechte nicht versteht.

kaputtnik

(Themenstarter)

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

quintus schrieb:

gid ist 46, also Gruppe plugdev. Darf diese Gruppe nicht schreiben?

Bist du in der Gruppe plugdev?

Ja!

Ist uid=1000 sinnvoll?

Sollte eigentlich egal sein da mit "umask=007" others schreib und leserechte haben. Ändere spaßeshalber mal die Optionen auf alle dürfen alles. Also umask=777. Sollte eigendlich nicht nötig sein, mußte aber funktionieren.

umask=777 heißt doch: Eigentümer, Gruppe und alle dürfen nichts? 4+2+1 = 7 = alles verboten 😲

Was passiert wenn ich den Eigentümer des Verzeichnisses /media/Daten-Laufwerk von root auf kaputtnik ändere?

Nichts da das fat Dateisystem die Rechte nicht versteht.

Das Verzeichnis /media/Daten-Laufwerk liegt ja nicht auf vfat, sondern auf ext3... Is ja der Einhängepunkt.

primus_pilus Team-Icon

Ehemalige
Avatar von primus_pilus

Anmeldungsdatum:
8. Oktober 2007

Beiträge: 9144

umask=777 heißt doch: Eigentümer, Gruppe und alle dürfen nichts? 4+2+1 = 7 = alles verboten 😲

Nein anders herum. 4=leserecht 2=schreibrecht 1=ausführrecht ⇒ 4+2+1 = 7 = darf lesen, schreiben und ausführen.
Die erste 7 ist der Eigentümer, die zweite die Gruppe und die dritte sind alle anderen.

Das Verzeichnis /media/Daten-Laufwerk liegt ja nicht auf vfat, sondern auf ext3... Is ja der Einhängepunkt.

Die Rechte des mount points spielen keine Rolle da der Ordner mit seinen Rechten praktisch vom Dateisystemroot der eingehängten Partition "verdeckt" wird.

kaputtnik

(Themenstarter)

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

quintus schrieb:

umask=777 heißt doch: Eigentümer, Gruppe und alle dürfen nichts? 4+2+1 = 7 = alles verboten 😲

Nein anders herum. 4=leserecht 2=schreibrecht 1=ausführrecht ⇒ 4+2+1 = 7 = darf lesen, schreiben und ausführen.
Die erste 7 ist der Eigentümer, die zweite die Gruppe und die dritte sind alle anderen.

Das Wiki sagt was anderes: "(umask)... Setzt indirekt die Zugriffsrechte für alle Dateien, indem die Verbote angegeben werden. "MASKE" ist eine dreistellige Zahl. Die einzelnen Ziffern beschreiben dabei die Verbote jeweils des Eigentümers, der Gruppe und aller Anderen. Jede Ziffer setzt sich dabei aus kombinierbaren Einzelverboten zusammen: "4" bedeutet "Lesen verboten", "2" bedeutet "Schreiben verboten" und "1" bedeutet "Ausführen verboten". Die Kombination wird durch Summierung gebildet."
Quelle:mount

Das Verzeichnis /media/Daten-Laufwerk liegt ja nicht auf vfat, sondern auf ext3... Is ja der Einhängepunkt.

Die Rechte des mount points spielen keine Rolle da der Ordner mit seinen Rechten praktisch vom Dateisystemroot der eingehängten Partition "verdeckt" wird.

❓ Unterordner haben immer dieselben Eigentümer wie der darüber liegende Ordner ❓ Dann müsste /home/user ja auch root gehören ❓

primus_pilus Team-Icon

Ehemalige
Avatar von primus_pilus

Anmeldungsdatum:
8. Oktober 2007

Beiträge: 9144

OK es sieht wohl so aus: So wie ich es beschrieben habe gilt es für Befehle wie chmod. Dort bedeutet chmod 777 alle dürfen alles. Die Einzelrechte werden addiert. 7 ist die Summe aller Rechte. Das umask System geht den umgekehrten Weg. Man geht hier davon aus das 777 der Grundzustand ist und subtrahiert davon dann die Einzelrechte ab.

umask=000 bedeutet 7-0=7 7-0=7 7-0=7 ⇒ 777 also alles für jeden erlaubt.
umask=003 bedeutet 7-0=7 7-0=7 7-3=4 ⇒ 004 also Eigentümer und Gruppe dürfen alles, andere dürfen nur lesen(4)

❓ Unterordner haben immer dieselben Eigentümer wie der darüber liegende Ordner ❓ Dann müsste /home/user ja auch root gehören ❓

Nein. Das gilt nur bei gemounteten Dateisystemen. Nimm einen beliebigen Ordner. In den mountest du eine Partition. In dem Moment "verschwindet" der Ordner und wird mit dem Wurzelverzeichnis der Partition ersetzt.

D.h. Die Rechte des ursprünglichen Ordners sind völlig egal, sie werden mit den Rechten des gemounteten Dateisystems ersetzt.

Das Ganze machst du mit dem umount der Partition wieder Rückgängig. Danach hast du wieder den Ursprünglichen Ordner mit seinen Rechten.

Am deutlichsten wird das wenn du ein paar Dateien in den Ordner schreibst und dann eine Partition in ihn mountest. Die Dateien verschwinden scheinbar. Nach dem umount erscheinen sie wieder.

kaputtnik

(Themenstarter)

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

quintus schrieb:

OK es sieht wohl so aus: So wie ich es beschrieben habe gilt es für Befehle wie chmod. Dort bedeutet chmod 777 alle dürfen alles. Die Einzelrechte werden addiert. 7 ist die Summe aller Rechte. Das umask System geht den umgekehrten Weg. Man geht hier davon aus das 777 der Grundzustand ist und subtrahiert davon dann die Einzelrechte ab.

Steht jetzt so auch nicht im WIKI. Da wird addiert, nicht substrahiert... Quelle?

umask=000 bedeutet 7-0=7 7-0=7 7-0=7 ⇒ 777 also alles für jeden erlaubt.

😕 Sehr verwirrend... von 000 kommst Du auf 777?

umask=003 bedeutet 7-0=7 7-0=7 7-3=4 ⇒ 004 also Eigentümer und Gruppe dürfen alles, andere dürfen nur lesen(4)

Wo sind denn die 7ner geblieben?? :roll

umask=007 müsste doch demnach heißen: Eigentümer darf alles, Gruppe darf alles, alle dürfen gar nichts. Wenn ich jetzt uid=0 und guid=46 setze und plugdev auch schreiben darf, wieso kann ich dann nicht schreiben?

❓ Unterordner haben immer dieselben Eigentümer wie der darüber liegende Ordner ❓ Dann müsste /home/user ja auch root gehören ❓

Nein. Das gilt nur bei gemounteten Dateisystemen. Nimm einen beliebigen Ordner. In den mountest du eine Partition. In dem Moment "verschwindet" der Ordner und wird mit dem Wurzelverzeichnis der Partition ersetzt.

D.h. Die Rechte des ursprünglichen Ordners sind völlig egal, sie werden mit den Rechten des gemounteten Dateisystems ersetzt.

Und wenn das gemountete Dateisystem keine Rechtverwaltung kennt (wie vfat)? Welche Rechte gelten dann? Ich meine irgendwelche Rechte liegen doch vor, denn sonst dürfte ja jeder alles... nur ich darf nicht alles 😢

primus_pilus Team-Icon

Ehemalige
Avatar von primus_pilus

Anmeldungsdatum:
8. Oktober 2007

Beiträge: 9144

umask=003 bedeutet 7-0=7 7-0=7 7-3=4 ⇒ 004 also Eigentümer und Gruppe dürfen alles, andere dürfen nur lesen(4)

Steht jetzt so auch nicht im WIKI. Da wird addiert, nicht substrahiert... Quelle?

Linux in a Nutshell, O'Reilly Verlag und über die Jahre gesammelte Erfahrung. ☺
Im Wiki steht das was ich geschrieben habe mit anderen Worten. Richtig dort steht es wird addiert aber dort werden Verbote addiert. D.h. negative Rechte. Die Summe der negativen Rechte ziehst du von den vorhanden Rechten ab.

Bedenke, umask=000 bedeutet jeder darf alles. umask=777 bedeutet niemand darf etwas. Das ist genau entgegengesetzt zu den normalen Rechten die man z.B. von chmod kennt.

Sehe umask=777 nicht als Rechte die du hast, sondern als Betrag den du von den maximal möglichen Rechten (777) abziehen musst. Was dann übrig bleibt sind die Rechte die du auf der Partition hast.

Wo sind denn die 7ner geblieben?? :roll

Hab mich verschrieben. 7-0=7 7-0=7 7-3=4 ⇒ 774 muss es heißen.

umask=007 müsste doch demnach heißen: Eigentümer darf alles, Gruppe darf alles, alle dürfen gar nichts.

Nein, umask=007 bedeutet ausgehend von den Grundrechten 777: 7-0=7 7-0=7 7-7=0 ⇒ 770 d.h. Eigentümer darf alles, Gruppe darf alles, alle anderen dürfen nichts.

Und wenn das gemountete Dateisystem keine Rechtverwaltung kennt (wie vfat)? Welche Rechte gelten dann?

Dann darf root alles und alle anderen nur lesen und ausführen.

Wenn ich jetzt uid=0 und guid=46 setze und plugdev auch schreiben darf, wieso kann ich dann nicht schreiben?

Das finde ich allerdings auch merkwürdig.

Mein Vorschlag: Es spricht nichts dagegen dich mit uid=1000 als Besitzer der Partition einzutragen. Die Zeile sollte dann so aussehen:

/dev/sda5 /media/Daten-Laufwerk vfat defaults,uid=1000,gid=46,umask=007,utf8 0 0

kaputtnik

(Themenstarter)

Anmeldungsdatum:
31. Dezember 2007

Beiträge: 9245

quintus schrieb:

umask=007 müsste doch demnach heißen: Eigentümer darf alles, Gruppe darf alles, alle dürfen gar nichts.

Nein, umask=007 bedeutet ausgehend von den Grundrechten 777: 7-0=7 7-0=7 7-7=0 ⇒ 770 d.h. Eigentümer darf alles, Gruppe darf alles, alle anderen dürfen nichts.

OK. hab das Wort anderen vergessen. Also umask=007 ist für chmod 770?

Und wenn das gemountete Dateisystem keine Rechtverwaltung kennt (wie vfat)? Welche Rechte gelten dann?

Dann darf root alles und alle anderen nur lesen und ausführen.

OK.

Wenn ich jetzt uid=0 und guid=46 setze und plugdev auch schreiben darf, wieso kann ich dann nicht schreiben?

Das finde ich allerdings auch merkwürdig.

Mein Vorschlag: Es spricht nichts dagegen dich mit uid=1000 als Besitzer der Partition einzutragen. Die Zeile sollte dann so aussehen:

/dev/sda5 /media/Daten-Laufwerk vfat defaults,uid=1000,gid=46,umask=007,utf8 0 0

Dann lass ich das mal so und markiere als gelöst.

Danke für Deine Mühen
kaputtnik

primus_pilus Team-Icon

Ehemalige
Avatar von primus_pilus

Anmeldungsdatum:
8. Oktober 2007

Beiträge: 9144

Also umask=007 ist für chmod 770?

So zu sagen. Jedenfalls ist das Ergebnis das gleiche.

Danke für Deine Mühen

Gern geschehen. ☺

Antworten |