persönliches Verzeichnis auf NFS-Freigabe

K

kane1896

Aktives Mitglied
Thread Starter
Dabei seit
27.06.2005
Beiträge
465
Reaktionspunkte
2
Hallo,
ich möchte das persönliche Verzeichnis meines Hauptbenutzers auf dem Mac auf einen Linux-Server legen und dieses per NFS freigeben.
Um das persönliche Verzeichnis jedes mal beim Start zu mounten würde ich unter einem "normalen" Unix/Linux dazu die /etc/fstab bearbeiten.
Was aber mache ich unter OSX?
 
Es gibt diverse Lösungsansätze, teils mit third party software.
Eine Möglichkeit mit OS X Boardmitteln findest du hier:
https://www.macuser.de/forum/showthread.php?t=245443#6

Anschliessend ziehst du die gemountete Share in die Startobjekte unter Systemeinstellungen -> Benutzer, und hast sie nach jedem Login automatisch zur Verfügung.

Oder meinst du den umgekehrten Weg?
 
vom Prinzip schon richtig nur:
ich möchte das gesamte persönliche Verzeichnis vom Server mounten.
/home/Username vom Server soll also unter /Users/Username auf dem Mac gemountet werden und nicht dann unter /Volumes/Servername/Freigabe (oder so) wie es nach Apfel+K sein würde.

edit: also mit "sudo mount ..." ist schon klar. Nur wo mounte ich es genauso auch beim Systemstart bzw. nach dem Anmelden des Benutzers?
 
Zuletzt bearbeitet:
Um das persönliche Verzeichnis jedes mal beim Start zu mounten würde ich unter einem "normalen" Unix/Linux dazu die /etc/fstab bearbeiten.
Was aber mache ich unter OSX?

Nun, die /etc/fstab existiert standardmässig nicht. Sie ist unter OS X im Gegensatz zu anderen UNIX-Systemen nicht notwendig.
Es ist afaik möglich, sie zu verwenden, aber dazu sind ein paar Klippen zu umschiffen und Eingriffe im Netinfo erforderlich.
Wenn du dir das antun möchtest, kannst du dich hier mal schlau machen.

...ich möchte das gesamte persönliche Verzeichnis vom Server mounten.
/home/Username vom Server soll also unter /Users/Username auf dem Mac gemountet werden und nicht dann unter /Volumes/Servername/Freigabe (oder so) wie es nach Apfel+K sein würde.

Der Mount Point ist bei OS X standardmässig aber /Volumes.

edit: also mit "sudo mount ..." ist schon klar. Nur wo mounte ich es genauso auch beim Systemstart bzw. nach dem Anmelden des Benutzers?

Nach dem von mir beschriebenen sudo mount Befehl und einem Neustart ist der Zugriff mit Apfel+K möglich. Wenn du dann mittels Apfel+K mit dem Server verbunden bist, ziehst du das Icon der Freigabe vom Desktop in deine Startobjekte.
 
ich habe jetzt mal mit root meinem Benutzer, mit dem ich normalerweise arbeite, sein persönliches Verzeichnis vom Server gemountet. Soweit funktioniert jetzt alles.
Das Problem ist jetzt allerdings, dass der Befehl "ls" Fehler macht oder beim Benutzen von ssh "permission denied" ausgegeben wird. Ich hab vorher einfach den gesamten Inhalt des persönlichen Verzeichnisses mittels NFS auf den Server kopiert. Kann dadurch was schiefgehen?
 
Das funktioniert mit NetInfo. Ich hatte das etwa vor 5 Jahren so ähnlich wie in deinem Link verwirklicht – allerdings hatte ich noch ein paar Optionen angegeben, um ein paar Probleme zu minimieren: "-R=4", "-s", "-P", "-b" und "net" (diese stehen zumindest auf dem Zettel, den ich gerade gefunden habe ;) )

Und ich glaube, dass die Exporteinstellungen des Servers "insecure" beinhalten müssen, um die Kompatibilität mit Mac OS X sicherzustellen.
 
ich hab jetzt die Optionen dazugepackt, aber das ändert leider auch nichts
 
Es sind halt Optionen, gell?
Eben habe ich MacMännchens Link entdeckt. Benutze doch einfach den NFS-Manager.
 
Also, das ganze ist ganz einfach. Du richtest ein Automount ein und dann sagst Du dem System, dass sich das Home-Verzeichnis des Nutzers im Automount-Pfad befindet. Einfach schnell.

Die Benutzer sollten auf dem NFS natürlich auch Schreibrechte haben. Bei mir ist das übrigens eine TeraStation, also auch Linux.

Automount einrichten:
attachment.php


Benutzer einrichten:
attachment.php


EDIT: Wenn es sich nicht mounten lässt, vielleicht erst einmal prüfen ob es prinzipiell geht, Apfel-K. Außerdem muss der NFS-Server so eingestellt sein, dass er Verbindungsanfragen auf den unsicheren Ports erlaubt, denn nur diese werden von Mac OS X verwendet. Mein /etc/exports zu obigen Bild sieht Auszugsweise so aus:
Code:
/mnt/array1/application *(rw,insecure,nohide,no_root_squash)
/mnt/array1/software *(rw,insecure,nohide,no_root_squash)
/mnt/array1/pictures *(rw,insecure,nohide,no_root_squash)
/mnt/array1/music *(rw,insecure,nohide,no_root_squash)
/mnt/array1/library *(rw,insecure,nohide,no_root_squash)
 

Anhänge

  • Bild 1.jpg
    Bild 1.jpg
    37,7 KB · Aufrufe: 173
  • Bild 2.jpg
    Bild 2.jpg
    40,3 KB · Aufrufe: 161
Zuletzt bearbeitet:
ok, so funktionierts. Ich finds nur komisch, dass das home-Verzeichnis wo anders liegen muss und man es nicht einfach nach /Users/BENUTZERNAME mounten kann.

Ein Problem, was ich jetzt habe ist, dass wenn ich mich mit ssh an dem Rechner anmelden will, auf dem jetzt auch mein home-Verzeichnis liegt, immer "Permission denied (publickey,keyboard-interactive)" kommt.
An einem anderen "externen" Rechner funktionierts.
 
Ein Problem, was ich jetzt habe ist, dass wenn ich mich mit ssh an dem Rechner anmelden will, auf dem jetzt auch mein home-Verzeichnis liegt, immer "Permission denied (publickey,keyboard-interactive)" kommt.
An einem anderen "externen" Rechner funktionierts.

Hört sich an, als machst du Auth über id_rsa.

Dann liegt es wahrscheinlich an den falschen Rechten. Der User alleine braucht Leserechte, also keine für die Gruppe und den Rest. Schau mal hier.
 
Zuletzt bearbeitet:
Die Rechte waren schon 600 und ich kann mich ja auch auf anderen Servern anmelden.
Vorher waren es ja zwei unterschiedliche Benutzer, die den gleichen Namen und die gleiche ID hatten. Jetzt ist es aber so, dass es auch der gleiche Benutzer ist, also die private- und public-Keys im gleichen Verzeichnis auf dem Server liegen. Ich schätze da könnte das Problem liegen.
 
Die Rechte waren schon 600 und ich kann mich ja auch auf anderen Servern anmelden.

Damit es kein Missverständnis gibt: ich meine die Rechte von der Datei /Users/username/.ssh/id_rsa

Jetzt ist es aber so, dass es auch der gleiche Benutzer ist, also die private- und public-Keys im gleichen Verzeichnis auf dem Server liegen. Ich schätze da könnte das Problem liegen.

Das kann ich nicht beurteilen, aber zu diesem Problem kommt es in meiner Lösung erst gar nicht.
 
@Pingu
bei deinem Beispiel wird aber nicht wie bei mir das gesamte persönliche Verzeichnis sondern nur ein zusätzlicher Ordner nachträglich in das persönliche Verzeichnis gemountet. Ich gehe mal davon aus, dass die Startobjekte irgendwo im persönlichen Verzeichnis liegen und dieses dazu schon gemountet sein muss, damit die Objekte ausgeführt werden können.
 
ahhhh, habs die Rätsels Lösung gefunden:
die Datei authorized_keys befand sich nicht mehr im ~/.ssh-Verzeichnis. Warum auch immer - möglicherweise beim Kopieren des persönlichen Verzeichnisses auf den Server ausgelassen.
 
Das oben ist kein Beispiel, sondern real ;).
Es werden auch keine Startobjekte aiusgeführt.

Im ersten Bild werden die automounts definiert. Im Bild selbst sieht man noch ein paar Definitionen mehr, z.B. die presets_ da dies von meinem Server stammt, der seine Daten den Clients unterschiebt. Dieses mounts-Verzeichnis kann es aber auch 1:1 auf einem Client so geben.
Die automounts werden alle unterhalb von Network (alias Netzwerk) angelegt. Ich glaube da müssen auch alle automounts liegen, weil das real in der Verzeichnisstruktur etwas anders ist: /private/automount/Network

Diese automounts werden immer automatisch ausgeführt, wenn sie benötigt werden, egal ob ein Benutzer angemeldet ist oder nicht. Sie werden automatisch ge-unmounted, wenn sie für eine Zeit nicht genutzt worden.

Im zweiten Bild sieht man, dass man das Home-Verzeichnis einfach auf einen solchen Automount setzen kann. Im obigen Fall wurde dies autmatisch über den Arbeitsgruppen-Manager erzeugt, mit dem ich meinen OS-X Server administriere. Da allerdings mein Netzwerk dafür noch nicht wirklich ausgelegt ist, habe ich da bisher nur einen Test-user drin. Aber mit diesem funktioniert es einwandfrei.

Ich kann einfach an irgendeinen Rechner gehen, mich mit dem Test-Account einloggen und habe überall die gleiche Arbeitsumgebung und auf dem jeweiligen lokalen Rechner bleibt hinterher nichts zurück. Funktioniert super.
Die mcx_settings und mcx_flags kommen daher, da ich nebenbei dem Account noch ein paar Einschränkungen mitgegeben habe. Er darf also bestimmte Einstellungen nicht ändern, bestimmte Programme nicht starten usw. Zurzeit habe ich das nur zum Spielen. Aber ich bin es langsam leid gefragt zu werden warum das und jenes nicht geht, um dann hinterher festzustellen, dass sie es irgendwie geschafft haben irgendwelche Einstellungen zu verändern. Daher möchte dann in Zukunft einfach die Rechte einschränken.

EDIT: Ich habe mich damals beim Einrichten der Automounts hier nach gerichtet: http://sial.org/howto/osx/automount/
 
@Pingu
sorry, hatte mich verschrieben. Ich meinte MacMännchen und nicht dich.
Ich habs jetzt genauso gemacht wie du und das funktioniert soweit alles.
Ein Problem ist mir nur aufgefallen: Wenn ich bei Dateien mit unbekannter Dateiendung ein Programm zuweise mit dem diese zukünfig immer geöffnet werden sollen, ist diese Information nach einem Neustart weg. Jedenfalls bei Dateien auf die ich über NFS zugreife. Is das bei dir auch so?
 
Zurück
Oben Unten