Benutzer- und Gruppen-Rechte bei SSHFS mit Fuse4X

Hallo allerseits,

zur Zeit beschäftige ich mich zu Hause mit Mac OS X Snow Leopard (auf 10.6.8 aktualisiert).
Mit Mac OS X möchte ich auch auf Dateien eines Servers zugreifen. Der Server zu Hause ist (noch) ein GNU/Linux Rechner. Auf die Dateien wird von anderen Rechnern (ebenfalls GNU/Linux; Debian 6.0.3 oder Ubuntu 10.4.LTS) im LAN mittels SSHFS zugegriffen. NFS oder Samba benötige ich somit bisher nicht und daher habe ich diese Dienste auch nicht eingerichtet.

Grundsätzlich scheint das mit Mac OS X Snow Leopard und SSHFS über Fuse4X (anstelle von MacFuse) auch zu funktionieren. :w00t:
Unglücklicherweise sind aber einige Dateien auf dem GNU/Linux-Server nicht zugreifbar. :blush:
Augenscheinlich ist das wohl ein Rechteproblem. Die betroffenen Dateien sind beispielsweise für die Gruppe “users” (numerisch 100) des GNU/Linux-Servers zugänglich (rw). Allerdings habe ich diese Gruppe “users” auf Mac OS X Snow Leopard nicht gefunden und kann sie auch nicht anlegen. Die Fehlermeldung an dieser Stelle lautet, daß diese Gruppe bereits vorhanden sei, wenn ich “users” (numerisch 100) mit dem Dienstprogramm “Benutzer” anlegen möchte. Scheinbar gibt es diese Gruppe doch oder es darf sie nicht geben. Vielleicht ist die numerische ID “100” auch nur “pfui” für Mac OS X !? Oder ich stelle mich nur zu schusselig an. :confused:
Auch der Benutzer hat bei gleich lautendem Benutzernamen eine andere numerische Benutzerkennung auf Mac OS X (1001 auf den GNU/Linux Rechnern und dem Server, 502 auf Mac OS X (oder 504?; jedenfalls nicht 1001).

Auf den GNU/Linux Rechnern hat jeder Benutzer seine eigene Gruppe und gehört zusätzlich zur Gruppe “users”. Gemeinsam zu nutzende Dateien gehören zwar jeweils einem Benutzer, aber das betreffende Verzeichnis hat mit dem “s”-Bit die Gruppenzugehörigkeit “users” geerbt und vererbt diese auch an die darin abgelegten Dateien.

Jetzt müßte ich wissen, wie ich den Zugriff mittels SSHFS von Mac OS X aus so gestalten kann, daß der Zugriff paßt. Ein erster Versuch mit den Angaben “-o uid=1001,gid=100” für SSHFS brachte leider keinen Erfolg.
Kann mir da bitte mal jemand in die Seite treten?
Vielen Dank für Eure Antworten und Hinweise.

Gruß
Sven

Hallo apfelei,

bist Du auf Fuse4x fixiert? Ich würde alternativ mal OSXFUSE testen (ich nutze es zwar selber nicht, habe aber den Vorgänger MacFUSE mal genutzt, der leider zur Zeit nicht Lion kompatibel ist). Vielleicht kommst Du damit zum Ziel. Viel Erfolg!

Nö, fixiert bin ich nicht darauf. Habe das nur anstelle von MacFuse installiert, weil MacFuse wohl nicht mehr so weiterentwickelt wird.
Andererseits denke ich mir, daß es wohl wurscht sein dürfte, ob SSHFS auf Basis von MacFuse, Fuse4X oder OSXFuse eingesetzt wird, weil das Problem wohl bei der Umsetzung der Rechte mit SSH / SSHFS zwischen Quell- und Zielrechner zu suchen sein dürfte. Ich gehe mal davon aus, daß auch OSXFuse irgendwie wissen müßte, wie der lokale Benutzer mitsamt Gruppenzugehörigkeiten zu dem entfernten Benutzer und dessen Gruppenzugehörigkeiten passen könnte.
Sind denn die Parameter für SSHFS bei OSXFuse andere, als bei SSHFS von MacFuse oder Fuse4X?

Gruß
Sven

Da bin ich mir nicht sicher. Allerdings kenne ich bisher nur Nutzer von OSXFuse und die sind zufrieden. Kann sein, das Fuse4x neuer ist und bisher nicht so bekannt ist, oder OSXFuse kommt wirklich besser damit klar. Zumindest habe ich noch keine Probleme im Umgang mit der Gruppe “Users” gehört. Allerdings weiß ich nicht, ob die SSHFS nutzen oder “nur” NTFS Laufwerke nutzen möchten, jedoch sind eine Reihe Umsteiger/Parallelnutzer von Linuxen dabei, daher denke ich, das wohl auch jemand SSHFS nutzen sollte (ich höre mich mal um).

SSHFS sollte doch die Rechte des Nutzers nehmen, mit dem du dich am Server authentifizierst?! - Also sollte dein lokaler Nutzer doch vollkommen egal sein.

Hallo BitsandBytes,

das dachte ich auch. Womöglich liegt es aber garnicht an der Benutzer-ID selbst, sondern an der Gruppenzugehörigkeit. Bei der Gruppenzugehörigkeit bzw. den Gruppenzugehörigkeiten wird das Problem liegen, weil mutmaßlich nicht die Klartextgruppennamen herangezogen werden, sondern die numerischen. Andererseits wäre das ja dann wie bei NFS und so sollte es ja mit SSH/SSHFS nicht sein. Dennoch gibt es ja die Option mit der Übermittlung spezieller Benutzer- und Gruppen-ID bei SSHFS. Sollten die Klartextgruppennamen herangezogen werden, fehlt womöglich die Zuordnung zur Gruppe “users” meins Mac OS X Benutzers. Auf dem entfernten System ist sie jedoch für den sich anmelden Benutzer gegeben. Aber es funktioniert ja nicht. Von anderen Linux-Rechnern aus funktioniert es jedoch.

An dieser Stelle wird wirklich die Gruppe “users” ins Spiel kommen, die bei meinen Linux-Systemen numerisch “100” lautet und augenscheinlich bei Mac OS X anders ist. Nur wie, weiß ich eben nicht. Wie und wo finde ich diese Gruppe? Ich habe das Gefühl, daß ich hier noch zu “grün” hinter den Ohren bei Mac OS X bin.

Gruß
Sven

Hm…es gibt ja eine /etc/group, aber die wird wohl nur im Singleuser Mode genutzt.
Ansonsten verweist man auf die Manpage von opendirectoryd, die ist auch nicht wirklich aufschlussreich, weiß da jemand mehr?

Hast du mal probiert mit den Nutzerdaten die du für SSHFS verwendest dich direkt per SSH auf den Server zu verbinden? Funktioniert der Zugriff auf die Dateien dann?

Nein, das habe ich noch nicht probiert, werde ich heute Abend aber mal machen. Bisher habe ich via SSH nur Paketaktualisierungen (apt-get) auf dem Server ausgeführt.

Gruß
Sven