[0.5 alpha] Avahi Mounter scheint zu funktionieren, mountet aber nicht

  • Moin,


    ich habe gerade den avahi mounter getestet.
    Der Server ist ubuntu 10.04. Dort habe ich avahi-mounter aus den yavdr Paketen installiert und mich an http://www.yavdr.org/tutorials…-vdr-addon-avahi-mounter/ gehalten.


    Code
    1. /etc/exports:
    2. /srv *(rw,sync,no_subtree_check,all_squash)
    3. root@HomeServer:/srv# grep srv /etc/fstab
    4. /mnt/Video/VDR /srv/share/vdr none bind 0 0
    5. /mnt/Fotos /srv/picture none bind 0 0
    6. /mnt/Musik /srv/audio none bind 0 0
    7. /mnt/Video/VideoSchnitt /srv/video/VideoSchnitt none bind 0 0
    8. /mnt/Video/Homevideo /srv/video/Homevideo none bind 0 0


    avahi-discover findet die exports auch.


    Code
    1. /srv# ls -all
    2. total 20
    3. drwxr-xr-x 7 root root 4096 2012-06-23 12:00 .
    4. drwxr-xr-x 22 root root 4096 2012-06-20 18:02 ..
    5. drwxrwxr-x 1 henfri __USERS__ 422 2012-06-04 21:57 audio
    6. drwxr-xr-x 2 root ftp 4096 2012-02-13 21:01 ftp
    7. drwxrwxr-x 1 henfri __USERS__ 39252 2012-06-23 10:07 picture
    8. drwxr-xr-x 3 root root 4096 2012-06-23 12:00 share
    9. drwxrwxrwx 5 root root 4096 2012-06-23 12:31 video



    Soweit so gut. Die Rechte könnten ein Problem sein.


    Jetzt zum client:


    Sieht doch auch gut aus, oder?
    Und weiter:


    Hm. Hier sollten die anderen Shares doch auch stehen?!! Warum werden die nicht gemountet?


    Ok, testen wir den einen:

    Code
    1. ls //media/Video/HomeServer
    2. Homevideo VideoSchnitt
    3. touch abba
    4. touch Homevideo/abba1
    5. touch: kann »abba1“ nicht berühren: Keine Berechtigung


    Die Datei abba entsteht auf dem Server. Aber warum klappt es mit der abba1 im Unterverzeichnis nicht?


    Und: Warum wird nur der eine Share und nicht die anderen eingebunden?


    Gruß,
    Hendrik

  • Das mit dem touch ist definitiv ein rechte Problem.


    Wir haben auf dem Server immer passende uid + guid . Schau dir mal das /etc/export auf dem yaVDR an.


    UJnd wie sieht /srv auf dem Client aus?


    gemuesepudding

    VDR1: POV ION 330 mit Media-Pointer MP-S2 auf yaVDR 0.3.1 - enermay 370 Watt - 80GB SSD + 500GB HD - CoolerMaster ATX-620 - VGA2Scart + HDMI
    VDR2: Zotak ZBOX ID40 auf yaVDR unstable - Sundtek DVB-S2 + remote Sundtek - 60GB SSD - HDMI
    VDR3
    : Zotak ZBOX ID40 auf yaVDR unstable - remote Sundtek - 500GB HD - DVI
    Atom 2700 mit 13W, Ubuntu PP, 60GB SDD + 240GB SSD, 2x Sundtek DVB-S2

  • Hallo,


    vielen Dank für deine Antwort.


    Das mit dem touch ist definitiv ein rechte Problem.
    Wir haben auf dem Server immer passende uid + guid .


    Ja, das ist Mist. Hast du einen Lesetipp, wie ich die geradeziehen kann, zwischen meinen Rechnern?


    Quote

    Schau dir mal das /etc/export auf dem yaVDR an.


    Code
    1. /srv/share/vdr *(rw,fsid=0,sync,no_subtree_check,all_squash,anongid=666,anonuid=666)
    2. /srv/audio *(rw,fsid=1,sync,no_subtree_check,all_squash,anongid=666,anonuid=666)
    3. /srv/video *(rw,fsid=2,sync,no_subtree_check,all_squash,anongid=666,anonuid=666)
    4. /srv/picture *(rw,fsid=3,sync,no_subtree_check,all_squash,anongid=666,anonuid=666)


    Auf dem Server hab ich ja

    Code
    1. /srv *(rw,sync,no_subtree_check,all_squash)


    Fehlen also ",anongid=666,anonuid=666" und fsid=.


    Quote

    Und wie sieht /srv auf dem Client aus?


    Der Client ist ja Yavdr. Der Server Ubuntu 10.04.
    Also auf dem Yavdr sieht srv so aus:

    Code
    1. ls -ltr /srv
    2. insgesamt 20
    3. drwxr-xr-x 3 root root 4096 Jun 20 23:27 share
    4. drwxr-xr-x 3 vdr vdr 4096 Jun 20 23:39 vdr
    5. drwxrwxrwx 2 root root 4096 Jun 20 23:39 audio
    6. drwxrwxrwx 2 root root 4096 Jun 20 23:39 picture
    7. drwxrwxrwx 2 root root 4096 Jun 23 10:34 video


    und auf dem Server:

    Code
    1. ls -ltr /srv
    2. total 12
    3. drwxr-xr-x 2 root ftp 4096 2012-02-13 21:01 ftp
    4. drwxrwxr-x 1 henfri __USERS__ 422 2012-06-04 21:57 audio
    5. drwxrwxr-x 1 henfri __USERS__ 39252 2012-06-23 10:07 picture
    6. drwxr-xr-x 3 root root 4096 2012-06-23 12:00 share
    7. drwxrwxrwx 5 root root 4096 2012-06-23 15:44 video


    Gruß,
    Hendrik

  • Hi,


    nimmt dein Ubuntu auch auf, sprich ist da auch VDR am laufen?


    Dann hier ein Lesetip.


    Dein ubuntu-Server macht die Rechteverwaltung mittels der /etc/exports, dazu ist eben anongid und anonuid nötig (erstes ist die gruppe, zweitens der User). Nimmt dein Ubuntu also auch auf, musst du in der /etc/passwd bzw /etc/groups nachschauen, welche ID für den user VDR vorhanden sind.


    Nimmt dein Ubuntu nicht aus, muss eben die ID vom Nutzer rein.


    mfg
    kris

  • Hi Kris,


    nimmt dein Ubuntu auch auf, sprich ist da auch VDR am laufen?


    Noch nicht. Später ist das aber geplant.


    Quote

    Dann hier ein Lesetip.


    Wenn ich es recht verstehe, sorgst du so dafür, dass der NFS-User die in der exports angegebene UserID und GruppenID bekommt.


    Quote

    Dein ubuntu-Server macht die Rechteverwaltung mittels der /etc/exports, dazu ist eben anongid und anonuid nötig (erstes ist die gruppe, zweitens der User). Nimmt dein Ubuntu also auch auf, musst du in der /etc/passwd bzw /etc/groups nachschauen, welche ID für den user VDR vorhanden sind


    Momentan sind da ja nur Aufnahmen von meiner alten Installation. Die haben aber natürlich eine User und Gruppen-ID die auf dem neuen VDR nicht bekant sind.


    Wäre es nicht am saubersten, auf beiden Rechnern einen User VDR mit gleicher UID und GID anzulegen?


    Gruß,
    Hendrik

  • Hi,


    warte mal, lese ich das richtig

    Quote

    Der Server ist ubuntu 10.04. Dort habe ich avahi-mounter aus den yavdr Paketen installiert und mich an http://www.yavdr.org/tutorials/mounting-…-avahi-mounter/ gehalten.


    Du hast auf dem SERVER den avahi-mounter installiert? Du musst den avahi-mounter natürlich auf den CLIENT installieren, steht ja auch so in der Anleitung (und sagt auch der name ;) )


    Auf dem Server musst Du nur den avahi-damon und eine service Datei in /etc/avahi/services installieren (siehe von Dir verlinkte Anleitung) installieren.


    Quote

    Wäre es nicht am saubersten, auf beiden Rechnern einen User VDR mit gleicher UID und GID anzulegen?


    Viele Wege führen nach Rom, die Funktion von anonuid und anongid ist nicht ohne grund vorhanden, es ist halt nicht immer möglich, die gleiche ID zu vergeben.


    MfG
    Kris

  • Ich hatte auf meiner goflex mit debian auch einfach die debian avahi Pakete installiert, user/group vdr passend angelegt und die yavdr avahi Serverkonfiguration rüberkopiert.
    Verhält sich sich absolut wie ein weiterer yavdr im Netz.


    Funktioniert absolut einwandfrei seit Monaten...


    Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD Red WD30EFRX 3TB in SW Raid5

  • Auf dem Server musst Du nur den avahi-damon und eine service Datei in /etc/avahi/services installieren (siehe von Dir verlinkte Anleitung) installieren.

    Oh, ok. Das hatte ich falsch verstanden.
    Allerdings ist der avahi-daemon eine Abhängigkeit vom Avahi-Mounter so dass die Service-Definitionen auch in /etc/avahi/services liedgen.


    Wie gesagt werden die auch von avahi-discover angezeigt.



    Ich probiere es mal mit den Rechten/gleiche uid/gid einzurichten.


    Gruß,
    Hendrik

  • Wenn ich mich richtig erinnere, dann muss die uID und gID auf dem Server auch existieren, also müssen passende User & Gruppen eingerichtet sein. Das muss ich auf meinem NAS mal nachsehen.


    Ich kann den heute abend mal anschalten, wenn es bei dir jetzt nicht klappt.


    gemuesepudding

    VDR1: POV ION 330 mit Media-Pointer MP-S2 auf yaVDR 0.3.1 - enermay 370 Watt - 80GB SSD + 500GB HD - CoolerMaster ATX-620 - VGA2Scart + HDMI
    VDR2: Zotak ZBOX ID40 auf yaVDR unstable - Sundtek DVB-S2 + remote Sundtek - 60GB SSD - HDMI
    VDR3
    : Zotak ZBOX ID40 auf yaVDR unstable - remote Sundtek - 500GB HD - DVI
    Atom 2700 mit 13W, Ubuntu PP, 60GB SDD + 240GB SSD, 2x Sundtek DVB-S2

  • Hallo,


    ich hab's jetzt mal probiert:
    Ich habe auf dem Server folgende Änderungen gemacht:

    Code
    1. /etc/passwd
    2. vdr:x:666:666:VDR user,,,:/var/lib/vdr:/bin/bash
    3. /etc/groups
    4. vdr:x:666:


    Es reicht doch, dies per Editor zu machen, oder?


    Zudem ein

    Code
    1. chown vdr:vdr /pfad/zum/VDR-Aufnahmeverzeichnis


    Jedenfalls erscheint weiterhin kein Mount vom Server auf dem Client :-(


    Allerdings ist jetzt im Log auch garnix mehr zu finden:

    Code
    1. Jun 26 21:04:35 vdr-wohnzimmer kernel: [ 645.040120] init: avahi-mounter main process (1505) terminated with status 1
    2. Jun 26 21:04:35 vdr-wohnzimmer avahi-mounter[2292]: mount static to /srv/vdr/video.00
    3. Jun 26 21:04:35 vdr-wohnzimmer avahi-mounter[2292]: initialized zeroconf browser on vdr-wohnzimmer
    4. Jun 26 21:04:35 vdr-wohnzimmer avahi-mounter[2292]: Resolved type _nfs._tcp on vdr-wohnzimmer.local


    Gruß,
    Hendrik

  • aber du hast du Dateien äquivalent zu /etc/avahi/services angepasst bzw. vom yavdr geholt, /etc/exports angepasst und die nfs exports auch bekanntgemacht, gfs nfs und avahi daemon durchgestartet, und da geht immer noch nix?


    Das Ding hat doch nicht viele configs...


    Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD Red WD30EFRX 3TB in SW Raid5

  • zudem ein

    Code
    1. chown vdr:vdr /pfad/zum/VDR-Aufnahmeverzeichnis


    Besser ein

    Code
    1. chown vdr:vdr -R /pfad/zum/VDR-Aufnahmeverzeichnis

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hallo,


    ich hab's heute nochmal probiert. Immernoch kein Erfolg.
    Ich versuche mal alle relevanten Konfigurationen hier zu posten. Wahrscheinlich fällt's mir dann selbst auf.
    Also:



    Das ist schonmal komisch. Warum gibt es den Ordner services und dann nochmal die Datei service?


    Nun ja... Weiter:

    Code
    1. root@HomeServer:/srv/share/vdr# ls -l
    2. total 51416
    3. drwxrwxrwx 1 vdr vdr 486 2012-06-03 16:32 0_Comedy
    4. drwxrwxrwx 1 vdr vdr 3746 2012-05-06 11:04 0_Dokumentationen
    5. drwxrwxrwx 1 vdr vdr 238 2011-04-20 21:06 0_HD
    6. drwxrwxrwx 1 vdr vdr 62 2011-11-01 20:38 0_Info


    Code
    1. cat /etc/exports
    2. /srv *(rw,sync,no_subtree_check,all_squash,anongid=666,anonuid=666)


    Schauen wir mal, was am Client zu finden ist:


    Das sieht doch eigentlich gut aus, oder?


    Und aus dem Syslog:

    Code
    1. Jul 8 22:40:47 vdr-wohnzimmer avahi-mounter[1634]: Resolved type _nfs._tcp on HomeServer.local
    2. Jul 8 22:40:47 vdr-wohnzimmer avahi-mounter[1634]: media is mounted on /srv/vdr/video.00/HomeServer/ for server HomeServer.local and share /srv/share/vdr
    3. Jul 8 22:40:48 vdr-wohnzimmer avahi-mounter[1634]: Service resolved: HomeServer.local to Recordings on HomeServer


    Also nachsehen:

    Code
    1. root@vdr-wohnzimmer:/# ls -l /srv/vdr/video.00/HomeServer/
    2. insgesamt 0


    Hm. Warum ist das leer?


    Mal eine Datei erstellen und gucken, ob sie auf dem Server entsteht:

    Code
    1. root@vdr-wohnzimmer:/# touch /srv/vdr/video.00/HomeServer/test
    2. root@vdr-wohnzimmer:/# ls -l /srv/vdr/video.00/HomeServer/
    3. insgesamt 0
    4. -rw-r--r-- 1 root root 0 Jul 8 22:53 test
    5. root@vdr-wohnzimmer:/# su vdr
    6. vdr@vdr-wohnzimmer:/$ touch /srv/vdr/video.00/HomeServer/test_vdr
    7. touch: kann »/srv/vdr/video.00/HomeServer/test_vdr“ nicht berühren: Keine Berechtigung


    Komisch.


    Was ist denn eigentlich gemountet?

    Code
    1. root@vdr-wohnzimmer:/# mount
    2. [...]
    3. HomeServer.local:/srv/video on /media/Video/HomeServer type nfs (rw,soft,intr,addr=192.168.178.3)


    Komisch warum ist /srv/vdr/video.00/HomeServer/ nicht dabei??


    Dafür aber /media/Video/HomeServer. Schauen wir mal rein...


    Code
    1. root@vdr-wohnzimmer:/# ls /media/Video/HomeServer
    2. Homevideo VDR VideoSchnitt
    3. root@vdr-wohnzimmer:/# ls /media/Video/HomeServer
    4. VideoSchnitt
    5. root@vdr-wohnzimmer:/# touch /media/Video/HomeServer/abba
    6. root@vdr-wohnzimmer:/# su vdr
    7. vdr@vdr-wohnzimmer:/$ touch /media/Video/HomeServer/abba_vdr



    Gucken wir auf dem Server:

    Code
    1. root@HomeServer:/srv/video# ls -l
    2. total 4
    3. -rw-r--r-- 1 vdr vdr 0 2012-07-08 22:59 abba
    4. -rw-rw-r-- 1 vdr vdr 0 2012-07-08 22:59 abba_vdr
    5. drwxrwxrwx 1 henfri __USERS__ 244 2012-06-23 12:50 VideoSchnitt


    Das ist doch schonmal ein Teilerfolg.


    Aber warum klappt es mit "video" und nicht mit "vdr"?


    Sorry für den langen Beitrag. Aber vielleicht hilft es ja auch sonst wem?!


    Gruß,
    Hendrik

  • Hallo,
    Kannst du mal die komplette /etc/fstab und die /etc/exports des Servers posten?
    Was sagen folgende Befehle (Die Ausgabe wird vermutlich recht lang, deshalb wenn es geht pastebinit nutzen (lässt sich aus dem gleichnamigen Paket installieren), also z.B. "ls -ln /srv/vdr | pastebinit"):

    Code
    1. #Auf dem Client
    2. ls -ln /srv/vdr
    3. ls -ln /srv/vdr/video.0*
    4. ls -ln /media/Video
    5. # Auf dem Server
    6. ls -ln /srv/video
    7. ls -ln /srv/vdr
    8. ls -ln /srv/vdr/video.0*
    9. ls -ln /srv/share/vdr

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hi,


    mir ist gerade Dein Directory-Listing zu wirr, ich poste einfach mal meine Konfig, die kannst Du dann anpassen. Aber zuerst, die nachfolgenden dinge sind alle am SERVER zu machen.


    - Lösche erstmal die überflüssige service dabei.
    - dann editierst Du die Datei vdr-vdr.service, im prinzip ist der Name egal, aber sie muss die Endung .service haben, meine heißt bspw. vdr_nfs.service
    - Deine vdr-vdr.service ist soweit i.o. aber du musst die Zeile

    Code
    1. <txt-record>path=/srv/share/vdr</txt-record> ## path to shared Folder


    anpassen. path ist der Pfad, worin sich die Aufnahmen befinden. bei mir heißt der Pfad bspw. /freigaben/nas/video0


    Bleiben wir mal bei meinem Beispielpfad /freigaben/nas/video0, die datei /etc/exports muss natürlich passend sein


    Code
    1. /freigaben/nas/video0 192.168.0.0/24(rw,sync,no_subtree_check,anonuid=666,anongid=666)


    So wie ich das sehe, ist das bei Dir nicht der Fall, /etc/exports gibt /srv frei, aber in deiner Avahi wird /srv/share/vdr definiert.... Also entweder paßt Du Deine Servicedatei an oder deine exports....


    Ich hoffe das war verständlich.


    mfg
    kris

  • Hallo,


    danke für die flotte Antwort.
    Also hier die fstab und exports:


    Die Verzeichnisse

    Code
    1. ls -ln /srv/video
    2. ls -ln /srv/vdr
    3. ls -ln /srv/vdr/video.0*
    4. ls -ln /srv/share/vdr


    gibt es nur zum Teil auf dem Server:
    http://pastebin.com/S5ARCDQY


    Das sollte auch ok sein, denn in der /etc/avahi/service steht:
    <txt-record>path=/srv/share/VDR</txt-record>
    bzw in der /etc/avahi/services/
    <txt-record>path=/srv/share/vdr</txt-record> ## path to shared Folder

    Hm... Groß/Kleinschreibung ist unterschiedlich...
    Welche Datei ist denn jetzt maßgeblich?
    Habe letztere jetzt mal angepasst...


    Aber der Vollständigkeit halber noch vom Client:
    http://paste.ubuntu.com/1084944/


    Es funktioniert jetzt jedenfalls weiterhin nicht.
    Komisch ist:

    Code
    1. root@vdr-wohnzimmer:/srv/vdr/video.00/HomeServer# avahi-browse -a -r -l
    2. + eth0 IPv4 HomeServer [38:60:77:25:cd:75] Arbeitsplatzrechner local
    3. = eth0 IPv4 HomeServer [38:60:77:25:cd:75] Arbeitsplatzrechner local
    4. hostname = [HomeServer.local]
    5. address = [fe80::3a60:77ff:fe25:cd75]
    6. port = [9]
    7. txt = []


    Was sonst noch in den Logs auffält (Server):

    Code
    1. Jul 10 20:51:17 zentyal avahi-daemon[3048]: Invalid query packet.
    2. Jul 10 20:52:35 zentyal avahi-daemon[3048]: last message repeated 2 times


    Gruß,
    Hendrik

  • Hi,


    hast Du meinen Beitrag gelesen? Die Export ist immer noch falsch, die service datei sollst Du löschen, die vdr-vdr.service sollst du bearbeiten und Linux ist Case-Sensitive, also JA, du musst den Pfad anpassen.


    MfG
    Kris

  • /mnt/Video/VDR /srv/share/vdr none bind 0 0


    Aha - du machst einen mount bind - dann brauchst du vermutlich in deiner /etc/exports noch die Option "crossmnt" zusätzlich für /srv


    Das am Client dürfte das das Problem sein - wenn das Verzeichnis root gehört, darfst du als User vdr (bzw. der VDR) nicht reinschreiben:

    Code
    1. drwxr-xr-x 3 0 0 4096 Jul 8 22:56 HomeServer


    Wie sehen denn die Rechte am Server für /mnt/Video/VDR und /srv/share/vdr aus?

    Code
    1. ls -ln /mnt/Video
    2. ls -ln /srv/share

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hi Chris,

    Hi,
    hast Du meinen Beitrag gelesen? Die Export ist immer noch falsch, die service datei sollst Du löschen, die vdr-vdr.service sollst du bearbeiten und Linux ist Case-Sensitive, also JA, du musst den Pfad anpassen.


    Nein, danke für den Hinweis. Während du gepostet hast, habe ich auch gerade an meinem Beitrag getippt...
    Also die /etc/avahi/service habe ich gelöscht und natürlich den Pfad in der vdr-vdr.service habe ich angepasst, klaro.
    Aber in der exports reicht es, wenn der übergeordnete Ordner angegeben ist. Die darunter liegenden Ordner können gleichermaßen gemountet werden.



    Aha - du machst einen mount bind - dann brauchst du vermutlich in deiner /etc/exports noch die Option "crossmnt" zusätzlich für /srv


    Ja, das war's. Danke! Mensch, zwischenzeitlich hatte ich das im Kopf, hab's aber dann vergessen zu verfolgen...