kleiner nfs server

Dieses Thema im Forum "Internet, lokale Netzwerke und Wireless Lan" wurde erstellt von hood, 03.05.2008.

  1. hood

    hood Robin von Locksley

    Dabei seit:
    19.02.2007
    Beiträge:
    67
    Zustimmungen:
    0
    hallo,

    ich wollte mir wieder einen kleinen server einrichten, aber ich bekomme es dieses mal ums verrecken nicht auf die reihe. mein alter rechner soll der server sein, mein notebook der client.
    ich habs gestern schon probiert und heute früh nochmal - klappt nicht.
    bin unter anderem nach diesem howto vorgegangen:

    http://www.howtoforge.de/howto/einrichten-eines-nfs-servers-und-clients-unter-debian-etch/

    bei:

    Code:
    mount 192.168.0.100:/home /mnt/nfs/home
    gibt die konsole nach 1:30 minuten folgende meldung raus:

    Code:
    mount.nfs: internal error
    woran könnte es liegen? an der ip? könnte ein wenig hilfe gut gebrauchen.

    auf beiden rechnern ist debian sid drauf.
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 schwedenmann, 03.05.2008
    schwedenmann

    schwedenmann Foren Gott

    Dabei seit:
    18.11.2003
    Beiträge:
    2.635
    Zustimmungen:
    2
    Ort:
    Wegberg
    nfs

    Hallo


    Poste erstmal

    /etc/exports

    welche Verzeihnisse auf dem Server sollen denn exportiert werden

    Die IP von Server und Client.

    mfg
    schwedenmann

    P.S.
    Du hast doch die server-IP in die 7etc/hosts auf dm Client eingetragen, oder ?
     
  4. andy81

    andy81 von_suse_zu_arch_wechsler

    Dabei seit:
    30.03.2008
    Beiträge:
    72
    Zustimmungen:
    0
    Ich kann hier auch nur raten, würde aber mal folgendes probieren:

    Normalerweise wird bei nfs beim mounten immer der Filesystemtyp angegeben, also

    Code:
    mount -t nfs IP.IP.IP.IP:/Verzeichnis/auf/Server /lokales/Verzeichnis
    nfs wertet auch die beiden Dateien /etc/hosts.allow und etc/hosts.deny aus, falls sich hier dein Client nicht mit dem Server verbinden darf, funktioniert auch nfs nicht.

    Die Angabe von IP-Adressen funktioniert normalerweise nur, wenn der Rechnername nicht bekannt ist. Also falls du mit Namensauflösung arbeitest, oder deinen Server in /etc/hosts eingetragen hast musst du den Rechnernamen statt der IP angeben, ansonsten ist die IP richtig.

    Ich gehe mal davon aus, dass die Freigabe richtig in /etc/exports eingetragen ist, oder?

    portmap und nfsserver laufen ja oder?

    Das ist mal das was mir als erstes dazu einfällt, hoffe es hilft dir
     
  5. hood

    hood Robin von Locksley

    Dabei seit:
    19.02.2007
    Beiträge:
    67
    Zustimmungen:
    0
    also die /etc/exports auf dem server sieht so aus:

    Code:
    /home           192.168.0.101(rw,sync,no_root_squash,subtree_check)
    /var/nfs        192.168.0.101(rw,sync,subtree_check)

    die /etc/hosts auf dem client sieht so aus:
    Code:
    #127.0.0.1      localhost
    #127.0.0.1      box
    
    192.168.0.100   localhost
    192.168.0.100   box
    
    # The following lines are desirable for IPv6 capable hosts
    # (added automatically by netbase upgrade)
    
    ::1     ip6-localhost ip6-loopback
    fe00::0 ip6-localnet
    ff00::0 ip6-mcastprefix
    ff02::1 ip6-allnodes
    ff02::2 ip6-allrouters
    die /etc/hosts ist leicht von mir verändert.

    Code:
    # route -n
    Kernel-IP-Routentabelle
    Ziel            Router          Genmask         Flags Metric Ref    Use Iface
    192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
    0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 eth0
    
     
  6. andy81

    andy81 von_suse_zu_arch_wechsler

    Dabei seit:
    30.03.2008
    Beiträge:
    72
    Zustimmungen:
    0
    Warum hast du localhost auf deine Server-IP gesetzt? Stell das mal wieder auf 127.0.0.1 zurück und probier dann mal:

    Code:
    mount -t nfs box:/home /mnt/nfs/home
    
     
  7. hood

    hood Robin von Locksley

    Dabei seit:
    19.02.2007
    Beiträge:
    67
    Zustimmungen:
    0
    /etc/exports auf dem server sollte demnach so aussehen?

    Code:
    /home           127.0.0.1(rw,sync,no_root_squash,subtree_check)
    /var/nfs         127.0.0.1(rw,sync,subtree_check)

    die /etc/hosts auf dem client habe ich wieder zurück gesetzt.


    jetzt kommt folgende ausgabe:

    Code:
    root@box:~# mount -t nfs 127.0.0.0:/home /mnt/nfs/home
    mount.nfs: mount to NFS server 'rpcbind' failed: System Error: Network is unreachable
    mount.nfs: internal error
    root@box:~# mount -t nfs 127.0.0.1:/home /mnt/nfs/home
    mount.nfs: mount to NFS server 'rpcbind' failed: RPC Error: Program not registered
    mount.nfs: internal error
    root@box:~# mount -t nfs box:/home /mnt/nfs/home
    mount.nfs: mount to NFS server 'rpcbind' failed: RPC Error: Program not registered
    mount.nfs: internal error
    
    die /etc/hosts.allow steht auf portmap: ALL
    die /etc/hosts.deny ist komplett auskommentiert.
     
  8. #7 andy81, 03.05.2008
    Zuletzt bearbeitet: 03.05.2008
    andy81

    andy81 von_suse_zu_arch_wechsler

    Dabei seit:
    30.03.2008
    Beiträge:
    72
    Zustimmungen:
    0
    Mein letzter Beitrag hat sich nur auf folgenden Eintrag in deiner /etc/hosts bezogen:

    Code:
    192.168.0.100   localhost
    
    Das macht meiner Meinung nach keinen Sinn. localhost, sowie der Adressbereich 127.x.x.x ist für das Loopbackinterface reserviert. Deshalb steht in der /etc/hosts normalerweise immer

    Code:
    127.0.0.1 localhost
    
    Ich kann mir keinen Grund vorstellen, warum man dies ändern sollte. Im Rest deiner Einstellungen konnte ich keinen Fehler entdecken. Dass es nicht funktioniert, wenn du alles auf 127.0.0.1 umstellst ist klar, da unter dieser Adresse immer der lokale Rechner erreichbar ist. Ich kann mir allerdings vorstellen, dass es den nfsclient durcheinanderbringt wenn du localhost auf deine Server-IP verweisen lässt. Das habe ich aber noch nie probiert.

    Das einzige, was du ändern sollst ist also die Zeile für localhost in deiner /etc/hosts, denn Rest kannst du von deinem ursprünglichen Post übernehmen. Probiers mal, wenns dann nicht klappt kann man weiterschaun.

    EDIT:
    Doch noch einen evtl. Fehler übersehen: In /etc/exports haben IP-Adressen nur dann Gültigkeit, wenn die Hostnamen nicht bekannt sind. Wenn du Serverseitig die /etc/hosts auch pflegst, musst du hier den Hostnamen deines Clients eintragen.
     
  9. hood

    hood Robin von Locksley

    Dabei seit:
    19.02.2007
    Beiträge:
    67
    Zustimmungen:
    0
    ja du hast schon recht, aber nachdem nichts ging, habe ich auch an der /etc/hosts am client herumgespielt.

    es sieht jetzt folgendermaßen aus
    die /etc/exports auf dem server:
    Code:
    /home           192.168.0.101(rw,sync,no_root_squash,subtree_check)
    /var/nfs        192.168.0.101(rw,sync,subtree_check)
    die /etc/hosts auf dem client:
    Code:
    # cat /etc/hosts
    127.0.0.1       localhost
    127.0.0.1       box
    
    #192.168.0.1   localhost
    #192.168.0.1    box
    
    # The following lines are desirable for IPv6 capable hosts
    # (added automatically by netbase upgrade)
    
    ::1     ip6-localhost ip6-loopback
    fe00::0 ip6-localnet
    ff00::0 ip6-mcastprefix
    ff02::1 ip6-allnodes
    ff02::2 ip6-allrouters
    ff02::3 ip6-allhosts
    

    rpcinfo -p auf dem client:
    Code:
    rpcinfo -p
       Program Vers Proto   Port
        100000    2   tcp    111  portmapper
        100024    1   udp  52490  status
        100024    1   tcp  47654  status
        100000    2   udp    111  portmapper
    
    und rpcinfo -p auf dem server:
    Code:
    rpcinfo -p
       Program Vers Proto   Port
        100000    2   tcp    111  portmapper
        100000    2   udp    111  portmapper
        100024    1   udp  37251  status
        100024    1   tcp  51635  status
        100003    2   udp   2049  nfs
        100003    3   udp   2049  nfs
        100003    4   udp   2049  nfs
        100021    1   udp  36884  nlockmgr
        100021    3   udp  36884  nlockmgr
        100021    4   udp  36884  nlockmgr
        100003    2   tcp   2049  nfs
        100003    3   tcp   2049  nfs
        100003    4   tcp   2049  nfs
        100021    1   tcp  53742  nlockmgr
        100021    3   tcp  53742  nlockmgr
        100021    4   tcp  53742  nlockmgr
        100005    1   udp  51868  mountd
        100005    1   tcp  48272  mountd
        100005    2   udp  51868  mountd
        100005    2   tcp  48272  mountd
        100005    3   udp  51868  mountd
        100005    3   tcp  48272  mountd
    Jetzt bin ich wieder genau da, wo ich am anfang war.

    nach der eingabe von
    Code:
    mount 192.168.0.100:/home /mnt/nfs/home
    oder
    Code:
    mount 192.168.0.101:/home /mnt/nfs/home
    
    gibt die konsole nach 1:30 minuten folgende meldung raus:
    Code:
    mount.nfs: internal error
     
  10. andy81

    andy81 von_suse_zu_arch_wechsler

    Dabei seit:
    30.03.2008
    Beiträge:
    72
    Zustimmungen:
    0
    Jetzt mal ganz langsam, ich glaube wir reden hier aneinander vorbei. Wenn ich dich richtig verstanden habe, dann hast du folgende IP-Adressen:

    192.168.0.100 ist der Server (Hostname box)
    192.168.0.101 ist der Client

    Du willst mit Namensauflösung arbeiten, d.h. du trägst den Hostnamen und IP-Adresse des jeweiligen anderen Partners in die Datei /etc/hosts ein. Der Eintrag für localhost muss dabei IMMER auf 127.0.0.1 lauten, unabhängig vom Rechner. Folglich müssten deine Dateien so aussehen:

    Server:
    Code:
    127.0.0.1          localhost
    192.168.0.101    clientname #hast du ja noch nicht angegeben
    
    Client:
    Code:
    127.0.0.1          localhost
    192.168.0.100    box
    
    Da die Hostnamen jetzt bekannt sind, ist keine IP in /etc/exports mehr zulässig, d.h. hier muss jeweils der Hostname stehen:

    Code:
    /home           client(rw,sync,no_root_squash,subtree_check)
    /var/nfs        client(rw,sync,subtree_check)
    
    Da ich den Hostnamen des Clients nicht kenne, habe ich stellvertretend mal client reingeschrieben

    Noch was ist mir eingefallen: Du hast geschrieben, dass in deiner /etc/hosts.allow der Portmap akzeptiert wird. Wie siehts aber mit mountd aus, welcher für nfs auch relevant ist?
     
  11. hood

    hood Robin von Locksley

    Dabei seit:
    19.02.2007
    Beiträge:
    67
    Zustimmungen:
    0
    es sieht folgendermaßen aus, hab noch ein wenig herumjustiert:

    die /etc/hosts beim server:

    Code:
    127.0.0.1          localhost
    192.168.0.101   box
    die /etc/hosts beim client:
    Code:
    127.0.0.1          localhost
    192.168.0.100   box861
    server: box861 mit 192.168.0.101
    client: box mit 192.168.0.100

    jetzt muss ich mit
    Code:
    mount -t nfs box861:/home /mnt/nfs/home
    
    mounten? habe ich das richtig verstanden?
    geht aber immer noch nicht. immernoch internal error.

    /etc/exports auf dem server sieht jetzt so aus:
    Code:
    /home           box(rw,sync,no_root_squash,subtree_check)
    /var/nfs         box(rw,sync,subtree_check)
    
    was meinst du mit mountd?
     
  12. andy81

    andy81 von_suse_zu_arch_wechsler

    Dabei seit:
    30.03.2008
    Beiträge:
    72
    Zustimmungen:
    0
    Also du kannst einen ganz schön verwirren. Du schreibst jetzt, dass dein Server(box861) die IP 192.168.0.101 hat, aber nach deinen Dateien zu urteilen hat der Server 192.186.0.100. Gehe jetzt davon aus, dass die Dateien stimmen und dein Kommentar falsch ist, dann müsste das schon so stimmen.

    Das mit dem mounten ist schon richtig

    Für nfs sind zwei Dienste erforderlich: portmap und mountd. Beide müssen in /etc/hosts.allow freigegeben werden (hosts.deny ist ja auskommentiert und somit nicht weiter wichtig). Bei mir sehen die relevanten Zeilen von /etc/hosts.allow so aus:

    Code:
    portmap :       10.1.0.0/255.255.0.0    :       ALLOW
    mountd  :       10.1.0.0/255.255.0.0    :       ALLOW
    
    Falls du es immer noch nicht hinbringst würde ich vorschlagen, die Sache mit der Namensauflösung mal zu vergessen und rein mit den IP-Adressen zu konfigurieren. Falls es damit klappt, kannst du ja im nächsten Schritt die Namensauflösung wieder hinzufügen. Ich persönlich finde die Konfiguration mit IP-Adressen leichter, wenn es nicht zu viele Rechner sind. (Dazu musst du deine /etc/hosts Dateien wieder anpassen)
     
  13. hood

    hood Robin von Locksley

    Dabei seit:
    19.02.2007
    Beiträge:
    67
    Zustimmungen:
    0
    ich könnte mich auf den kopf stellen. es geht gar nichts.
    könnte es daran liegen, dass der server reiserfs ist und der client ext3?
     
  14. andy81

    andy81 von_suse_zu_arch_wechsler

    Dabei seit:
    30.03.2008
    Beiträge:
    72
    Zustimmungen:
    0
    Das Dateisystem, das sich auf den einzelnen Rechnern befindet ist egal.

    Klingt vielleicht blöd, aber du startest die jeweiligen Dienste bzw. das System schnon neu, nachdem du was geändert hast?

    Ich schlage vor, dass wir das ganze mal ohne Namensauflösung aufsetzen. Das heißt du kommentierst in den beiden /etc/hosts die die entsprechenden Zeilen für den anderen Rechner aus (die localhostzeile lässt du drin). Damit hast du erreicht, dass die Rechner nicht mehr namentlich bekannt sind und du kannst rein mit IP-Adressen konfigurieren.

    Als nächstes stellst du überall, wo du vorher die Hosnamen dringehabt hast auf IP-Adressen um, startest die Dienste neu (bzw. das System, wenn du dir nicht sicher bist welche Dienste), und probierst es aus.

    Falls es nicht klappt poste mal nochmals alle relevanten Dateien (hosts, hosts.allow, exports)

    EDIT: Eine Firewall funkt uns aber nicht dazwischen, oder?
     
  15. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  16. hood

    hood Robin von Locksley

    Dabei seit:
    19.02.2007
    Beiträge:
    67
    Zustimmungen:
    0
    hallo,

    schon mal vielen dank für deine geduld, ich bekomm schon langsam gehirnschwurbl.


    firewall hab ich vorher extra runtergeschmissen.


    ich poste jetzt nochmal alles, ich hab auch schon irgendwie den überblick verloren:

    alles daten vom server:

    1. /etc/exports:
    Code:
    /home          192.168.0.101(rw,sync,no_root_squash,no_subtree_check)
    /var/nfs        192.168.0.101(rw,sync,no_subtree_check)
    2. /etc/hosts:
    Code:
    127.0.0.1       localhost
    #127.0.0.1      box861    [COLOR="Red"]sollte ich ja auskommentieren,oder?[/COLOR]
    
    ::1     ip6-localhost ip6-loopback
    fe00::0 ip6-localnet
    ff00::0 ip6-mcastprefix
    ff02::1 ip6-allnodes
    ff02::2 ip6-allrouters
    ff02::3 ip6-allhosts
    
    3. /etc/hosts.allow:
    Code:
    portmap:ALL
    mountd:ALL
    jetzt der client:

    1./etc/hosts
    Code:
    127.0.0.1       localhost
    #127.0.0.1      box [COLOR="Red"]wieder auskommentiert durch mich[/COLOR]
    
    ::1     ip6-localhost ip6-loopback
    fe00::0 ip6-localnet
    ff00::0 ip6-mcastprefix
    ff02::1 ip6-allnodes
    ff02::2 ip6-allrouters
    ff02::3 ip6-allhosts
    
    
    2. /etc/hosts/allow:
    Code:
    portmap:ALL
    mountd:ALL
    
    

    server soll box861 sein
    client soll box sein

    zu sicherheit fahr ich jetzt alles nochmal hoch.
     
  17. andy81

    andy81 von_suse_zu_arch_wechsler

    Dabei seit:
    30.03.2008
    Beiträge:
    72
    Zustimmungen:
    0
    Meiner Meinung nach stimmt deine /etc/hosts.allow noch nicht. Die Einträge bestehen normalerweise immer aus 3 Teilen: Dienst, Rechner, und Aktion. Die Aktion fehlt bei dir allerdings. Müsste theoretisch so lauten:

    Code:
    portmap   :   ALL   :   ALLOW
    mountd    :   ALL   :   ALLOW
    
    Ist allerdings sehr unsicher, da du hier allen die Erlaubnis gibst, dich mit deinem Rechner zu verbinden. Besser du machst es wie ich in meinem Beispiel oben. Also Subnetz, oder sogar nur einige auserwälte IPs erlauben. Für den ersten Versuch müsste aber ALL auf alle Fälle funktionieren.

    Wenn du jetzt mountest musst du wieder mit IPs arbeiten, da die Namensauflösung ausgeschaltet ist:

    Code:
    mount -t nfs 192.168.0.100:/home /mnt/nfs/home
    
    Im Momentanen Zustand kennen die beiden Rechner ihren Partner nicht beim Namen. Das ist erst der nächste Schritt.

    Nur so am Rande: Wenn du die auskommentierten Zeilen wieder einfügst (mach das jetzt aber bloß nicht), dann kann es nicht gehen, da hier schon wieder die 127.0.0.1 drinsteht. Es müsste aber die IP des anderen Rechners drin stehen, damit der lokale Rechner den Namen des anderen kennt. 127.0.0.1 darf nur vor localhost stehen. Das Problem stellt sich aber erst wenn du wieder mit Namensauflösung arbeitest, also erst im nächsten Schritt.
     
Thema:

kleiner nfs server

Die Seite wird geladen...

kleiner nfs server - Ähnliche Themen

  1. Kleiner Mailserver unter Debian Lenny

    Kleiner Mailserver unter Debian Lenny: Hallo Leute, ich wollte mir einen kleinen Email Server für 4 - 5 Personen aufbauen. Okay, Email-Server ist (wenn ich das richtig gelesen habe) das...
  2. Kleiner Homeserver mit freier Software

    Kleiner Homeserver mit freier Software: Hallo, ich stell gerade einen kleinen Homeserver (Musiksammlung, Websites testen...) zusammen. Jetzt such ich dafür die entsprechende Hardware -...
  3. VoCore: Kleiner Open-Source-Platinenrechner mit OpenWrt

    VoCore: Kleiner Open-Source-Platinenrechner mit OpenWrt: VoCore ist Open Source, was Hard- und Software betrifft, kostet 20 US-Dollar und setzt beim Basteln eine Stufe tiefer an als der Raspberry Pi....
  4. Artikel: LibreOffice 5.0: Installation und kleiner Überblick

    Artikel: LibreOffice 5.0: Installation und kleiner Überblick: Es hat eine Weile gedauert, bis LibreOffice 5.0 schließlich in der finalen Version erschienen ist. Wir stellen Ihnen die neueste Version und auch...
  5. SSD auf einen (geringfügig) kleineren USB-Stick wiederherstellen

    SSD auf einen (geringfügig) kleineren USB-Stick wiederherstellen: Hallo, ich habe hier ein Ubuntu, instaliert auf einer SSD. Für einige Systemtests möchte ich das System auf einen USb-Stick klonen, der leider...