Skip to content

NanoPi R5S - Samba

NanoPi R5S
5 2 546
  • Ich hatte ja schon erwähnt, das ich von NFS auf Samba wechseln musste, weil der NFS Server unterirdisch schlechte Transferraten hatte. Somit musste ich mich dann so ziemlich das erste Mal in meinem Leben mit einem Samba Server auseinandersetzen.

    8764bbf3-86a1-4777-bd97-2258b14bce5e-grafik.png

    Nach einigem Ausprobieren hatte ich es soweit, das ich zwei Freigaben hatte, die ich problemlos mit dem Dateimanager von Manjaro erreichen konnte. Ich konnte auch problemlos schreiben usw.

    Aber, mit diesen Dateipfaden aka

    smb://192.168.3.1/NAS

    kann ich nicht arbeiten. Meine vorhandenen Scripte möchten was ordentliches haben 😉 Also machte ich mich daran, diese Freigaben zu mounten.

    Also in /etc/fstab stundenlang Einträge ausprobiert. Zwischendurch auch immer versucht per Hand über die Konsole zu mounten.

    Ich bekam, egal was ich machte, immer diesen Fehler.

    CIFS: VFS: cifs_mount failed w/return code = -22
    

    Sehr aussagekräftig, weil ich dazu im Netz auch nichts vernünftiges fand. Also kurze Pause und nachdenken. Was, wenn es irgendwas mit dem Kernel zu schaffen hätte?

    Da kam mir die Idee, es mal auf meinem Linux Mint Cinnamon Notebook zu probieren und zack, schon der erste Mount-Versuch funktionierte.

    🤔

    Das Notebook benutzte einen 5.15er Kernel.

    Also, startete ich meinen Haupt-PC neu und wechselte von dem aktuellen Kernel

    Linux frank-ms7c37 5.18.12-3-MANJARO #1 SMP PREEMPT_DYNAMIC Sun Jul 17 14:33:15 UTC 2022 x86_64 GNU/Linux
    

    auf einen 5.15er Danach schnell ein Mount-Versuch und es ging! Ok, es muss irgendwas mit dem verwendeten Kernel zu schaffen haben. Den alten zu benutzen kam für mich nicht in Frage, also machte ich mich im Netz auf die Suche und stolperte über diesen Beitrag.

    Die Kernel-Version passte nicht ganz, aber egal, mal aufmerksam lesen. Man empfahl einen Beitrag als Lösung

    Wieder aufmerksam lesen... 🙂

    Lösung

    I was able to reproduce it to older Samba server (4.12.5) and could
    workaround the Samba server bug by using mount option "compress" on
    the client (which won't do anything different since it is not
    supported but interestingly it avoids the problem by adding another
    context at the end).

    Ok, man sollte also eine Mountoption compress benutzen. Also ausprobieren. Mittlerweile war der Rechner wieder auf 5.18.

    Der Mount-Befehl

    //192.168.3.1/NAS      /mnt/NAS               cifs    compress,credentials=/root/.smbcredentials,uid=1000,gid=1000 0 0
    

    funktionierte sofort!

    Die Dateiberechtigungen auf dem NanoPi R5S

    root@FriendlyWrt:~# ls -lha /mnt/sda1
    total 28K
    drwxrwxrwt  4 frankm frankm 4.0K Jul 22 10:03 .
    drwxr-xr-x  1 root   root   4.0K Jul 23 22:39 ..
    drwx------  2 frankm frankm  16K Jul 20 12:22 lost+found
    drwxr-xr-x 29 frankm frankm 4.0K Jul 24 08:08 samba
    

    Für Samba habe ich einen Linux User frankm angelegt.

    Fazit

    Es hat gedauert und zwar richtig lange um dieses Problem zu lösen. Und eine Bitte an die Coder da draußen, Error -22 hilft niemanden!!

    Interessanterweise findet man die Option compress in der Anleitung gar nicht!?

    Ok, lassen wir es und machen einen Haken dran. Die Samba Mounts funktionieren ja jetzt 🤓

  • Noch eine kurze Anmerkung, der eingesetzte Samba Server auf dem NanoPi R5S ist von März 2021.

    Kennt sich einer mit OpenWrt aus? Wird das mit 22.03 aktualisiert?

  • hab da auch nur die 4.14.12 probiert nur bei mir deutlich langsamer als nfs

    hier mal ein speed test was so netto auf der Festplatte auf dem R5S ankommt mit SMB rund 60-70MB/s

    smb.jpeg

    und das ganz noch mal mit NFS rund 130-140MB/s

    nfs.jpeg

    root@FriendlyWrt:~# cat /etc/exports
    /mnt/nvme0n1p1               192.168.0.10(rw,insecure,async,no_root_squash,subtree_check,fsid=0)
    /mnt/nvme0n1p1/ARCHiV        192.168.0.10(rw,insecure,async,no_root_squash,subtree_check)
    

    auf dem Desktop Rechner dann einfach mounten oder in fstab konfigurieren

    sudo mount -t nfs -o nfsvers=4,soft,rw 192.168.0.3:/ /mnt/NAS/NFS    
    

    bei den werten zu beachten wäre ich muss da auf die alte Verkabellung zurück greifen mit CAT5 Kabel ab bei 2,5Gbit Fehler/Aussetzer auf der Leitung

  • hab da auch nur die 4.14.12 probiert nur bei mir deutlich langsamer als nfs

    hier mal ein speed test was so netto auf der Festplatte auf dem R5S ankommt mit SMB rund 60-70MB/s

    smb.jpeg

    und das ganz noch mal mit NFS rund 130-140MB/s

    nfs.jpeg

    root@FriendlyWrt:~# cat /etc/exports
    /mnt/nvme0n1p1               192.168.0.10(rw,insecure,async,no_root_squash,subtree_check,fsid=0)
    /mnt/nvme0n1p1/ARCHiV        192.168.0.10(rw,insecure,async,no_root_squash,subtree_check)
    

    auf dem Desktop Rechner dann einfach mounten oder in fstab konfigurieren

    sudo mount -t nfs -o nfsvers=4,soft,rw 192.168.0.3:/ /mnt/NAS/NFS    
    

    bei den werten zu beachten wäre ich muss da auf die alte Verkabellung zurück greifen mit CAT5 Kabel ab bei 2,5Gbit Fehler/Aussetzer auf der Leitung

    @Dude Danke, ich werde das nochmal prüfen.

  • Test zu dem NFS Mount (240GB USB SSD an USB-Port)

    [frank-ms7c37 nfs]# dd if=/dev/zero of=sd.img bs=1M count=2048 oflag=direct,nonblock
    2048+0 Datensätze ein
    2048+0 Datensätze aus
    2147483648 Bytes (2,1 GB, 2,0 GiB) kopiert, 20,0851 s, 107 MB/s
    

    Test zum NAS Mount (Samba) (2TB 2,5Zoll HDD am USB-Port)

    [frank-ms7c37 NAS]# dd if=/dev/zero of=sd.img bs=1M count=2048 oflag=direct,nonblock
    2048+0 Datensätze ein
    2048+0 Datensätze aus
    2147483648 Bytes (2,1 GB, 2,0 GiB) kopiert, 21,4538 s, 100 MB/s
    

    Das für den NAS Mount (Samba) sollte die maximal Schreibgrenze der Festplatte sein. Mehr dürfte da nicht gehen. Das andere könnte an den Adaptern liegen, die ich dafür benutze.

    Bei mir ist NFS hier aktuell nicht viel schneller, oder ich bin zu doof dafür.

  • FrankMF FrankM hat am auf dieses Thema verwiesen
  • A Andy hat am auf dieses Thema verwiesen
  • FrankMF FrankM hat am auf dieses Thema verwiesen
  • 450 Stimmen
    27 Beiträge
    306 Aufrufe
    A
    This is the kind of news I want to keep seein’!
  • OpenCloud - Storage Backends testen

    OpenCloud opencloud linux docker
    2
    0 Stimmen
    2 Beiträge
    165 Aufrufe
    FrankMF
    So, mal weiter damit beschäftigen. Also, durch meine ganze Testerei war doch ein Haufen Müll angefallen. dockeruser@opencloud:~/opencloud/deployments/examples/opencloud_full$ docker volume ls DRIVER VOLUME NAME local 0fcd6f237898477b251f3dacb6cd083996092b783f991f899b06d89befc41b1e local 1d8df3f5d41613ad93ed753ce2102a14738cf00e8e7d127ec79881660be291ab local 3b612ce20b207c226640d6b84c32c788cd0fad9f9157578c2310f4b3db63dd29 local 5dfdde733fefb9fdb805acec8338a860762e88cd0753f4bb4098a19fbcd4b6c3 local 6bd5659759fb99b0d0613175d2392ca268dbdb3bd0353b85ccdf9a6004e798c0 local 6f8881420aa0e7713ed5308e635fcb9382939b6570afbd1d776866a07f6d61f2 local 29f7d20edd9eda935041cea7af5aab0af748175d7df8f345288463753d2afa9a local 66ca6287706aac5013b458a109e7c143c4fb177670734fc7a0f68495b1c62fd4 local 74d304835ef51f91226cc22dbbd494d2ddc9a4d91badf88814cae24126efd04a local 0203eb654c1f28a60899ded4660fb101ea222a5f8c86a225d39f3e5da877f1c0 local 271c474feb2ed915afb8efa85e422461fcfdf8acd4097355841eadf33847b7ef local 569a8c34804afd5861299973bed023c0146f40c0dbda0d980b8651bbcadc7fc9 local 655b1f446b5db9749787d4be4445887dcb3d19906d4244d059a0f292a6cd5f01 local 843bb8d0d7845adab06e146c44b153b842d5a1a1d8eb3972bdee1d3cbcb7e815 local 987ee19b8639ad5fffabba276ceb1ca09af6ebc66efb007e561570589c9c53a8 local 1004f5b7b161a4fe37a07d7960740e5cd09b90d5744f1922fb3e41c1265f800a local 2043c77b57728106cbcca8b7e2d3ae2f07ddf4ca44ee21fca232526c95e07381 local 3685c81df1be0061352dfc5b0e6db8d8d9f9b0915a271f1ca53d2796a7876805 local 9581abcfb4fb42b2fabfabbc8139cc4659ca83d92a8b60041957565409293ef4 local 796650f1fa887ff0b153822b268a10aa3579f4f2ca3ce6855ff292e49b3bb6b8 local 426251107e3131a250b27b96e795355332127f19ccf1ec8252860aff5d0caec8 local bd43ceef38448db348cc34e7dc5c4fee9c834d8b6c5957b1e6cdb83cec7b0974 local d94e7ce6c0fb1f4f7b811f624b4526ea889f2f8b99d2aa1b21e79d00dfeb38d0 local e87a27c307a8be80839fae1c006273d57570bb99f60c78c95e86a1e9ea1a786c local f2b3e30406db730e2a341850243c115b6eb231f30f41f5353c7b2427de39af75 local opencloud_full_certs local opencloud_full_opencloud-apps local opencloud_full_opencloud-config local opencloud_full_opencloud-data Oje, das sieht ziemlich vermüllt aus. Dann mal ganz mutig alles löschen. Vorher alles gestoppt. docker compose down Volume löschen, nur ein Beispiel docker volume rm opencloud_full_opencloud-data Alles gelöscht. Dann mal ein Neustart docker compose up -d Jetzt sieht das schon viel besser aus. dockeruser@opencloud:~/opencloud/deployments/examples/opencloud_full$ docker volume ls DRIVER VOLUME NAME local 3737a8eab68ffdc08d6e41493346feeb2e06ef350a210213ab450775318e49f8 local opencloud_full_opencloud-apps Da ich neugierig bin, schauen wir mal rein. root@opencloud:~ ls -lha /var/lib/docker/volumes/3737a8eab68ffdc08d6e41493346feeb2e06ef350a210213ab450775318e49f8/_data/web/assets/apps/ total 8.0K drwxr-x--x 2 dockeruser dockeruser 4.0K May 19 18:25 . drwxr-x--x 3 dockeruser dockeruser 4.0K May 31 10:21 .. Vermutlich ein Speicher, wo die Web Apps was ablegen können. Der andere zeigt es dann klarer. root@opencloud-4gb-fsn1-2:~# ls -lha /var/lib/docker/volumes/opencloud_full_opencloud-apps/_data total 28K drwxr-x--x 7 dockeruser dockeruser 4.0K May 31 10:22 . drwx-----x 3 root root 4.0K May 31 10:21 .. drwxr-xr-x 2 root root 4.0K May 31 10:22 draw-io drwxr-xr-x 2 root root 4.0K May 31 10:21 external-sites drwxr-xr-x 3 root root 4.0K May 31 10:22 json-viewer drwxr-xr-x 2 root root 4.0K May 31 10:22 progress-bars drwxr-xr-x 3 root root 4.0K May 31 10:22 unzip Ok, das sollte mir erst mal reichen. Meine Installation lagert die certs ja aus, das habe ich im docker compose geändert. dockeruser@opencloud:~/opencloud/deployments/examples/opencloud_full$ ls -lha certs/ total 44K drwxr-xr-x 2 dockeruser dockeruser 4.0K May 30 05:49 . drwxr-xr-x 6 dockeruser dockeruser 4.0K May 31 10:38 .. -rw------- 1 dockeruser dockeruser 33K May 29 11:00 acme.json Im docker-compose.yml volumes: - ./certs:/certs # bind-mount acme.json Der Grund dafür ist, das ich das docker-compose nicht als root laufen haben möchte. Die Hauptdaten sind nach lokal ausgelagert. OC_CONFIG_DIR=/home/dockeruser/oc_data/config OC_DATA_DIR=/home/dockeruser/oc_data/data Somit sollte jetzt alles so passen und ich muss mal langsam mit der Spielerei aufhören
  • Update 1.32.3 released

    Vaultwarden vaultwarden linux
    1
    0 Stimmen
    1 Beiträge
    163 Aufrufe
    Niemand hat geantwortet
  • Ubuntu wird 20

    Linux ubuntu linux
    1
    0 Stimmen
    1 Beiträge
    167 Aufrufe
    Niemand hat geantwortet
  • SSH sign_and_send_pubkey: signing failed: agent refused operation

    Linux linux
    1
    1 Stimmen
    1 Beiträge
    278 Aufrufe
    Niemand hat geantwortet
  • ReactPHP auf einem ROCKPro64 testen

    Linux reactphp linux composer
    1
    1
    0 Stimmen
    1 Beiträge
    221 Aufrufe
    Niemand hat geantwortet
  • Logger

    Linux linux
    1
    0 Stimmen
    1 Beiträge
    441 Aufrufe
    Niemand hat geantwortet
  • NodeBB - Upgrade auf v1.9.0

    NodeBB nodebb linux
    2
    1
    0 Stimmen
    2 Beiträge
    940 Aufrufe
    FrankMF
    Da oben fehlt ein Schritt. cd nodebb (or path to where nodebb is installed) ./nodebb stop git fetch git checkout v1.12.x git merge origin/v1.12.x ./nodebb upgrade Beim nächsten Upgrade testen.