nfs mit USB Stick geht nicht

  • Ich habe es geschafft einen Ordner vom Raspberry über nfs in meinen Ubunturechner einzubinden.
    In der etc/exports steht:

    Code
    /home/pi/testinhome 192.168.1.0/24(rw,sync,no_subtree_check,fsid=0)


    Mit

    Code
    sudo mount -t nfs 192.168.1.27:/home/pi/testinhome /home/sun/nfs


    kann ich den Ordner auch mounten. Schreiben, Lesen - alles i.O.

    Nun habe ich versucht einen Stick (/media/5BBA-481B) per nfs auf mein Ubuntu zu mounten.
    Also die etc/exports geändert zu

    Code
    /media/5BBA-481B 192.168.1.0/24(rw,sync,no_subtree_check,fsid=0)


    Mit

    Code
    sudo mount -t nfs 192.168.1.27:/media/5BBA-481B /home/sun/nfs


    erhalte ich immer nur:

    Code
    mount.nfs: access denied by server while mounting 192.168.1.27:/media/5BBA-481B

    Was mache ich falsch?

  • nfs-kernel-server bei ubuntu prüfen, ggf. starte ihn neu:

    Code
    sudo /etc/init.d/nfs-kernel-server restart

    Alles OK soweit?

    Nun unter Ubuntu folgende Datei anlegen:

    Code
    sudo nano/etc/exports


    Inhalt der exports (Mußt du freilich anpassen, hier Rechte für RW):

    Code
    /media/A55E-3748       192.168.0.66/255.255.255.0(rw,async)


    Danach speichern und berechtigen und wieder:

    Code
    sudo /etc/init.d/nfs-kernel-server restart



    oder:

    Code
    sudo exportfs -ra


    (sollte eigentlich genügen, damit wird nur neu eingelesen)

    Jetzt vom Pi aus mounten:

    Code
    sudo mount.nfs 192.168.0.78:/media/A55E-3748 /mnt/stick

    Einmal editiert, zuletzt von PIARBO (30. Oktober 2013 um 16:54)

  • Früher war das mal ein Problem aber mittlerweile sollte das dank ntfs-3g bzw FUSE funktionieren: http://www.tuxera.com/community/ntfs-3g-faq/#nfs

    Ohne nfts-3g kann man NTFS aber auch nur als "read-only" also ro mounten

    Ausserdem denk ich würde die Fehlermeldung dann nicht "access denied" lauten sondern sowas wie "does not support NFS export"

    Schau auch mal ins Logfile /var/log/messages auf dem NFS-Server, dort steht meist eine Erklärung warum dem Client der Zugriff verweigert wurde

    Ansonsten mal nfs-kernel-server deinstallieren und nfs-user-server installieren

  • Wenn er die Platte mit -t nfs-3g gemountet hat, mag es sein. Hat er das?
    Oder hat er mit -t nfs gemountet.

    Ansonsten können die Fehlermeldungen auf dem Client(!) in die falsche Richtung weisen.
    Hatte das Problem vor Kurzen auch - allerdings mit Samba.
    Auf dem Client kam "access denied", Grund war aber ein "mount -t ntfs" auf dem Pi mit Rasbian.

    Das ist übrigens bei den Distributionen unterschiedlich:
    Bei OpenSuse funktioniert es auch mit "mount -t ntfs".

    Keep it simple [,&] stupid

  • Hallo,
    sollten NAS-Systeme, die per nfs gemountet werden nicht "Unix-kompatibel" formatiert sein? (z.B. ext3, ext4)
    Hier wird doch ein Raspi und Ubuntu-Rechner benutzt. Wozu dann ntfs?
    Bei meiner Konstellation zwischen Debian-PC, Raspi, Dreambox und Sheevaplug kann ich fröhlich untereinander
    mounten....ohne Probleme.

    Gruß, woddy

  • völlig einverstanden.

    Allerdings sind USB-Sticks und -Festplatten dafür geschaffen, hin- und hergetragen zu werden. Und NTFS ist für Linux-Systeme schneller eingerichtet, als ext[234], xfs, btrfs, zfs, reiserfs etc. mit MS Windows für selbige. Also nicht verurteilen.

    Und dann sind wir hier im Hobby-Bereich. Da wird doch erst mal alles so hingenommen, wie es kommt, und es anschließend passend gemacht. Macht doch auch Spass.

    Die anwesenden Experten machen das natürlich anders, die wissen das ja besser.

    Achtung: Dieser Text enthält Ironie, wer sich angesprochen fühlt, hat selber Schuld

    Keep it simple [,&] stupid

  • Moin,

    erst einmal, selbst wenn der Stick mit NTFS ist und daher nicht gemounted werden könnte, dann sollte das Mounten per NFS klappen.
    Der Stick wird auf ein Verzeichnis gemounted, in desem Fall /media/A55E-3748. Das Verzeichnis sollte auch angelegt sein und wenn es in der NFS Config in der /etc/exports eingetragen auch exportiert werden. Nur wäre dann halt nix drin bzw. wenn man schreiben könnte nichts auf dem Stick landen sondern im FS vom PI.

    Was sagt denn bitte ein:
    exportfs
    Ausserdem zeig mal die Ausgabe von:
    exportfs -a

    Was sagt eigentlich mount und df -h bei Dir?

    Trag mal in Deiner /etc/exports folgendes ein:
    /media/A55E-3748 192.168.0.0/24(rw,root_squash,no_subtree_check,sync,insecure,all_squash)

    Dann exportfs und exportfs -a einmal aufrufen und hier posten falls Fehlermeldungen kommen.

  • Danke erst einmal für die vielen Antworten und Meinungen.
    Hier die Informationen:

    Der Stick hat Fat32. Das soll auch so bleiben, da ich ihn auch mal auf Arbeit brauche.

    /var/log/messages sagt zur entsprechenden Zeit gar nix. Da läuft wohl was falsch. Seit gestern ist kein Eintrag in der Datei. Auch den heutigen bootvorgang hat mein pi nicht eingetragen.??????

    die exportfs zeigt:

    /media/5BBA-481B
    192.168.1.0/24


    expotfs -a sagt gar nichts. Also auch keinen Fehler.

    df -h sagt
    Filesystem Size Used Avail Use% Mounted on
    rootfs 7.3G 1.8G 5.3G 25% /
    /dev/root 7.3G 1.8G 5.3G 25% /
    devtmpfs 85M 0 85M 0% /dev
    tmpfs 19M 264K 19M 2% /run
    tmpfs 5.0M 0 5.0M 0% /run/lock
    tmpfs 37M 0 37M 0% /run/shm
    /dev/mmcblk0p1 56M 19M 38M 33% /boot
    /dev/sda1 3.8G 900M 2.9G 24% /media/5BBA-481B

    ein mount sagt
    /dev/root on / type ext4 (rw,noatime,data=ordered)
    devtmpfs on /dev type devtmpfs (rw,relatime,size=86160k,nr_inodes=21540,mode=755)
    tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=18884k,mode=755)
    tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
    proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
    sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
    tmpfs on /run/shm type tmpfs (rw,nosuid,nodev,noexec,relatime,size=37760k)
    devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620)
    /dev/mmcblk0p1 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=cp437,iocharset=ascii,shortname=mixed,errors=remount-ro)
    nfsd on /proc/fs/nfsd type nfsd (rw,relatime)
    /dev/sda1 on /media/5BBA-481B type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0077,codepage=cp437,iocharset=ascii,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks)

    Ein showmount auf dem Client zeigt korrekt die Freigabe an.

    Was mich eigentlich stuzig macht: Warum geht die Freigabe eines Ordners und die Freigabe des Sticks nicht? Ich dachte unter Linux ist alles Datei/ Ordner.
    Ich werde mal einen anderen Stick testen. Vielleicht ist auch am Stick was defekt?

  • Nachtrag:
    ich habe mit

    Code
    tail -f -n 0 /var/log/messages


    nachgesehen, ob ein Eintrag in die messages erfolgt, wenn ich vom Client den Stick mounten möchte.
    Aber da passiert gar nichts.

    Allerdings auch nicht, wenn ich den Ordner /home/pi/testinhome mounte. Das funktioniert ja. Aber in der messages kommt nichts Neues vor.

  • tail -f zeigt die letzten 10 Zeilen an
    -n 0 würde in deinem Fall logischerweise nichts anzeigen, weil -n x abweichend von den letzten 10 Zeilen die Ausgabe xZeilen bedeutet, da bei dir 0 steht. Also mach den Parameter >10 oder belasse es bei -f .

    waren das Zeiten, als Ordner noch Verzeichnisse waren

    Einmal editiert, zuletzt von I.R.Gendwer (31. Oktober 2013 um 09:25)

  • So wie ich den ersten Post verstehe, klappt es ja einen Ordner über NFS zu mounten, aber beim Versuch ein USB-Stick über NFS zu mounten scheitert - also würde eine mögliche Firewall daran eigentlich keine Schuld haben

    Es gibt btw kein " kernel.log " sondern nur ein " kern.log " ;) aber da steht eigentlich das selbe drin wie in /var/log/messages und das & kann man eigentlich auch weglassen
    also:

    Code
    tail -f /var/log/{messages,syslog,kern.log}

    Wenn aber gänzlich garnichts in den Logfiles reingeschrieben wird scheint da allgemein was kaputt zu sein, zumindest im syslog müssten die CRON sachen regelmässig auftauchen

    /etc/init.d/portmap erstarr ? Du meinst sicherlich /etc/init.d/portmap restart ;)


    Wie gesagt, ich glaube weiterhin das es wortwörtlich mit "access denied" zu tun hat...
    Ich bin mir relativ sicher das im syslog vom Ubuntu Rechner sowas ähnliches wie

    Code
    refused mount request from 192.168.0.27 for /media/5BBA-481B (/media/5BBA-481B): unmatched host

    stehen wird...

    Ich würde raten nicht solche /24 IP Bereiche einzutragen sondern die wirklich fest zu legen also auf dem Raspberry in die /etc/exports nicht

    Code
    /media/5BBA-481B 192.168.1.0/24(rw,sync,no_subtree_check,fsid=0)

    einzutragen sondern

    Code
    /media/5BBA-481B 192.168.1.27(rw,sync,no_subtree_check,fsid=0)

    nfs über export is ein bischen komplizierter als Samba bzw cifs, es spielt zum Beispiel auch die userID eine Rolle, wenn es die auf dem Zielsystem nicht gibt kann darauf auch nicht zugegriffen werden. Und wenn du als root (der hat immer eine userID von 0) exportierst dann müsstest du auch noch die option no_root_squash in die exports mit aufnehmen, also:

    Code
    /media/5BBA-481B 192.168.1.27(rw,sync,no_subtree_check,fsid=0,no_root_squash)

  • Es gibt btw kein " kernel.log " sondern nur ein " kern.log " ;) aber da steht eigentlich das selbe drin wie in /var/log/messages und das & kann man eigentlich auch weglassen
    also:

    Code
    tail -f /var/log/{messages,syslog,kern.log}


    /etc/init.d/portmap erstarr ? Du meinst sicherlich /etc/init.d/portmap restart ;)

    autch, F*ck, da hat am Handy die Autokorrektur zugeschlagen. :D

    Ja das & kann man weg lassen, aber so sieht man besser wenn man etwas neustartet oder ausführt und es direkt mit in die Shell rausgeblasen wird.

  • über tail -f /var/log/syslog erhalte ich beim mounten eines lokalen Ordners vom client die Meldung

    Code
    authenticated mount request ...


    Eine entsprechende Meldung beim umounten.

    Wenn ich dann in die exports /media/5BBA-481B eintrage und den nfs kernel server neu starte, zeigt er mir auf dem Client mit

    Code
    showmount -e 192.168.1.27


    den freigegebenen Ordner

    Code
    Export list for 192.168.1.27:
    /media/5BBA-481B 192.168.1.20


    korrekt an.
    Wenn ich

    Code
    sudo mount -t nfs 192.168.1.27:/media/5BBA-482B /mnt


    eingebe, dann kommt:

    Code
    mount.nfs: access denied by server while mounting 192.168.1.27:/media/5BBA-482B

    ich habe auf dem Raspberry immer noch tail -f /var/log/syslog laufen.
    Er zeigt mir den Neustart des nfs kernel servers an, aber beim mount Versuch kommt gar keine Meldung.
    Also auch kein Zurückweisen des MountVersuches.

    Ich habe es mittlerweile mit einem anderen Stick getestet.
    Das selbe Verhalten.
    Auf dem Client erhalte ich

    Code
    mount.nfs: access denied by server while mounting 192.168.1.27:/media/GOLD

    auf dem Server erscheint in der /var/log/syslog einfach nichts.

    Ein mounten eines Ordners in home geht aber ohne Probleme.

    Einmal editiert, zuletzt von sun (1. November 2013 um 08:19)

  • Ich glaube nicht das eine Neuinstallation von Raspbian dein Problem löst - es sei denn du hast dein System dermassen zerschossen :D

    Wechsel doch mal bitte vollständig zum root Benutzer wenn du die Befehle ausführst also nicht immer sudo nutzen sondern ein mal sudo su zum root wechseln und dann sudo weg lassen... Oder am besten sogar direkt als root richtig Anmelden

    Und dann fehlen mir auch noch 2 Versuche deinerseits die ich dir vorgeschlagen hatte:


    • Code
      /media/5BBA-481B 192.168.1.27(rw,sync,no_subtree_check,fsid=0,no_root_squash)


      oder ggf mit

      Code
      /media/5BBA-481B 192.168.1.27(rw,sync,no_subtree_check,no_root_squash)

      ...also die Optionen mal durchspielen, wenn das auch nicht geht dann versuch es mal mit nur "rw,no_root_squash"


    • Code
      apt-get remove nfs-kernel-server -y && apt-get install nfs-user-server -y
  • Ich bin gerade dabei etwas anderes zu testen und habe ich dabei einen falschen Pfad angegeben. Und bekam ebenfalls die Meldung "access denied" beim mounten einer nfs-Freigabe.

    Daher habe ich noch mal genauer hingeschaut und gesehen:

    #16:
    in der exports steht:
    /media/5BBA-481B

    im mount-Befehl steht:
    /media/5BBA-482B

    Kleiner, aber gemeiner Unterschied

    In #1 ist der Pfad allerdings richtig, zumindest was gepostet wurde.

    Also mal in dieser Richtung suchen. Z.B. den Stick in ein anderes, leichter zu tippendes Verzeichnis mounten und freigeben.

    Hier mein Fehler:

    Code
    nexus:/mnt/rubus # mount -t nfs rubus:/mnt/rubus/DatenUSB DatenUSB
    mount.nfs: access denied by server while mounting rubus:/mnt/rubus/DatenUSB
    nexus:/mnt/rubus # mount -t nfs rubus:/media/usb0 DatenUSB
    nexus:/mnt/rubus # df
    Dateisystem           1K-Blöcke   Benutzt  Verfügbar Verw% Eingehängt auf
    devtmpfs                8183100        48    8183052    1% /dev
    tmpfs                   8233008        92    8232916    1% /dev/shm
    ...
    //opus/Video          488383484 109272432  379111052   23% /mnt/opus/Video
    rubus:/media/usb0     192293696  56380032  126145664   31% /mnt/rubus/DatenUSB

    Keep it simple [,&] stupid

  • Danke, Danke, Danke

    Es hat nun funktioniert.


    Die Lösung war die Option

    Code
    no_root_squash


    in der etc/exports
    also

    Code
    /media/5BBA-481B 192.168.1.27(rw,sync,no_subtree_check,fsid=0,no_root_squash)


    Ich werde nun noch ein wenig weiter experimentieren und dann meine Datenfestplatte anschließen, so dass ich den raspberry als NAS nutzen kann.

    Ihr habe mir wirklich sehr geholfen.

    PS: Ein sehr angenehmes Forum. Schnelle Antworten, guter Umgangston.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!