• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Nfs mount funktioniert nur partiell

O.K. zugegebenermaßen ein etwas eigenartiger Titel, aber ich kann das Problem leider nicht besser beschreiben.

Ich hab heute ein Netzwerk aus drei Rechnern aufgesetzt, die ich über nfs und dateifreigaben miteinader verbunden habe.
Die Einstellungen habe ich alle wie hier unter Konsole beschrieben vorgenommen http://wiki.ubuntuusers.de/NFS.
Das ganze funktioniert auf den ersten Blick soweit ganz gut, wenn ich mit dem Befehl mounte:
Code:
sudo mount 192.168.2.{108,109,110}:/home/gast{1,2,3}/share_gast{1,2,3} /home/gast{1,2,3}/share_{1,2,3}
ich hab mir dazu sogar ein Script geschrieben:
Code:
#!/bin/bash
# Shellskript zum Mounten des Netzwerkes

echo Starte das Netzwerk 
echo Bitte einen Moment Geduld ...

# Mounten des Dateisytems von Gast1
sudo mount 192.168.2.108:/home/gast1/share_gast1 /home/gast1/share_gast1

# Mounten des Dateisytems von Gast2
sudo mount 192.168.2.109:/home/gast2/share_gast2 /home/gast1/Share_gast2

# Mounten des Dateisytems von Gast3
sudo mount 192.168.2.110:/home/gast3/share_gast3 /home/gast1/Share_gast3

Das eigenartige ist, wenn ich das Script auf dem ersten Rechner ausführe, dann werden alle drei Netzwerklaufwerke eingebunden, auf dem zweiten Rechner nur noch zwei und auf dem dritten Rechner nur noch das eigene.

Hat jemand vielleicht eine Erklärung dafür?
Die allwissende Müllkippe Google konnte mir nicht weiterhelfen.

Viele Grüße
earlgrey_tea

Ps.: Das OS ist Ubuntu Karmic Koala sollte aber eigentlich keine Rolle spielen.
 

Tooltime

Advanced Hacker
Mir fällt nur auf, das kein Filesystemtyp angegeben ist. Ich weiß nicht ob Mount nfs bevorzugt, oder ob es einen internen Würfel für nfs, cifs u. andere Dateisysteme. Ich würde jedenfalls ein Netzwerkdateisystem immer mit festen Typ mounten.
 
OP
earlgrey_tea

earlgrey_tea

Member
Ich werd darauf achten, dass ich das beim mount-Befehl mitangebe kann mir aber leider nicht vorstellen, dass das die Lösung ist. Es sei denn der mount-Befehl ändert durch die Angabe der Option irgedwie seine Eigenschaften.

Viele Grüße
earlgrey_tea
 

pft

Advanced Hacker
Dein Skript enthält vermutlich ein paar Fehler:
1. die gross/klein-schreibung des Targetname
2. auf dem Rechner mit der IP ...108 wird das erste Directory auf sich selbst gemountet!
3. der name des verzeichnisses unter home ist auf der Sourceseite (1,2,3) auf der Taretseite immer 1

darüber hinaus vermute ich weitere aber dazu fehlt Information.
Eigentkich sollten die Sourcedirectories immer Daten enthalten und die Targets nicht. Das is aber bei Dir nicht gegeben. Bist Du sicher das das Skript das tut was Du willst? Mir erscheint es etwas wirr.

Geh Ziel und Quellangaben in allen drei Fällen für alle 3 Rechner nochmal genau durch. Das sind in summe 9 Varianten) und prüfe v.a. ob beide existieren und ob das ganze Sinn macht.
Geh die Skripte schrittweise durch (pause nach jedem mount) und sag uns welcher Befehl auf welchem echner geht bzw. nicht.
Ändert die Reihenfolge der Ausführung auf den 3 Rechnern etwas am Ergebnis?

Gruß
pft
 
OP
earlgrey_tea

earlgrey_tea

Member
O.K. ich hab euch versehentlich einiges Infos unterschlagen:
  • 1. Das Skript ist unter Zeitdruck geschrieben; deshalb auch der wirre Stil
    2. Es ist beabsichtigt, dass das erste Directory auf sich selbst gemountet wird, hat kosmetische Gründe (Desktop Icon) :D
    3. Im Prinzip tut das Skript auch das, was ich möchte, nämlich die Laufwerke jeweils nacheinander mounten, nur passiert das in sehr eigenartiger Weise.

Über die Ausgaben der verschiedenen Mounttests kann ich euch leider erst in einer Woche berichten, da ich da das Netzwerk wieder "bearbeiten" kann.

Danke für eure Hilfe
earlgrey_tea

Ps.: Das abgebildete Skript ist das Skript von Rechner 1. Deshlab ist auf der Targetseite auch nur die 1 im Verzeichnisbaum zu finden.
 

Tooltime

Advanced Hacker
earlgrey_tea schrieb:
2. Es ist beabsichtigt, dass das erste Directory auf sich selbst gemountet wird, hat kosmetische Gründe (Desktop Icon)
Trotzdem eine komische, wenn nicht sogar gefährliche Sache. Wo landet denn ein Zugriff von einen externen Rechner? Auf der Platte, auf das gemountete nfs-Share, oder ergibt das einen Kreis der nie die Platte erreicht? Ich würde die realen Daten unter /srv/home/... ablegen und exportieren, dann kannst du sie von dort überall einbinden und die ganze Sache ist dann eindeutig.
 

pft

Advanced Hacker
also ich will nicht ausschliessen, das dein Konzept irgendwo einen Hauch von einem brauchbaren Kerns hat und ich nur zu blöd bin ihn zu sehen, aber wenn ich ein Konzept für so etwas eigentlich echt einfaches nicht geich verstehe dann taugt es nicht.
Ohne Verständnis keine (sichere) Funktion und auch kein Debuggen.

Wenn es nur um Verzeichnisse auf dreu verschiedenen Rechnern geht, warum hampelst Du dann dauernd mit verschiedenen Usern bzw. Home-directories herum?
Und warum deutest Du an (im PS) dass die Skripte auf den drei Rechnern unteschiedlich sind? Ich hoffe ich hab das falsch verstanden.

Ich für meinen teil schiucke dich hiermitr zurück auf "Los". Das heisst: erklär mal was am Ende herauskommen soll und dann findet sich bestimmt schnell eine Lösung. Bisher habe ich nur ein Skript, das sich angeblich komisch verhält (was immer das genau heisst). Ich kenne aber weder soll noch ist verhalten wirklich.

Aber um mal konstruktiv zu sein guck ich mal in meine Glaskugel und stelle ein paar Vermutungen an um Dir bei der Artikulation zu helfen. :)
1. Du hast drei Rechner mit jeweils einem Directory mit Daten. Dies könnte (bzw sollte) auf jeden Rechner gleich heißen - zumindest sehe ich bisher keinen Grund warum nicht. Also gehen wir mal davon aus dass die Daten auf jedem Rechner unter /home/quelle/share liegen
2. Du möchtest bei der Anmeldung auf jedem Rechner drei directories nebeneinander finden die jeweils die Daten der drei Directories aus Punkt 1 enthalten. Der Desktopkrams interessiert hier nicht, denn da lässt sich alles hinfummeln, wenn es erst mal da ist. Nehmen wir mal an Du meldest Dich jeweils mit gast an.

Dann könntest Du auf jedem Rechner 3 leere (!) directories (aka mount points) anlegen a la: /home/gast/ziel[1,2,3]

das Skript sähe dann konzeptionell etwa so aus:
mount IP1|name1:/home/quelle/share /home/gast/ziel1
mount IP2|name2:/home/quelle/share /home/gast/ziel2
mount IP3|name2:/home/quelle/share /home/gast/ziel3

Ich hoffe Du erkennst wieviel weniger sich da von Zeile zu Zeile ändert im Vergleich zu deinem Skript.
Wenn Du auf jedem Rechner mehrere user hast kannst Du entweder die drei Zeilen pro user kopieren oder (besser) ganz woander hin mounten (z.B. /mnt/ziel1,2,3) und einmalig (!) für jeden User 3 Links auf /mnt/ziel1,2,3 anlegen)

Ich mal ganz gemein und behaupte weiterhin, dass dein Konzept verkorkst ist und nicht das Skript und schon gar nicht nfs :D
Aber wir haben hier ja schon ganz andere Sachen gerade gebogen ;-)

BTW die Tatsache dass Du erst mal nicht am Netzwerk fummeln kannst ist ideal. Nutze sie dein Problem zu definieren
 
Oben