Install SMB V2 on NSA325

2

All Replies

  • Mijzelf
    Mijzelf Posts: 2,763  Guru Member
    250 Answers 2500 Comments Friend Collector Seventh Anniversary
    The problem with Entware-ng is that it's not really compatible with the old 2.6.31(?) kernel in the NSA3xx. It targets 2.6.32 and higher, when I'm not mistaken. That means that libc on start checks if the kernel is new enough, and if not it errors out with 'kernel too old', or something like that.
    To solve that I created a custom libc package (and derivatives) where I configured it to support 2.6.24 (because the NSA210 and '221 use that kernel). In practice this means that some emulation is compiled in, what is used when a kernel doesn't support some functionality. (BTW, AFAIK there is no emulation needed for 2.6.31, it's just the version number which is rejected).
    So far so good. When Entware-ng updates libc, the not compatible version is installed, and so the Entware-ng binaries do not longer work. To bypass that there is a script in /opt/sbin/, I think it was called restore_2.6.24_support.sh or something like that, which restores the old symlinks.
    The versions you are mentioning are not the latest. The latest version of libc I have available is 2.23-6. I *think* your problems are caused by the flaky character of zyxel.diskstation.eu. For me the dns resolves it off and on. What you could try is edit the repository list (in /opt/etc/opkg/, or something like that) and change zyxel.diskstation.eu in metarepository.tk (which is the same server) and update your lists. Then install the latest patched packages. (Here is the listing). When it spawns 'kernel too old' messages, just run that script in /opt/sbin/.



  • Norbi
    Norbi Posts: 18  Freshman Member
    First Comment First Anniversary
    Hello,

    OK, I think, I'm understand the compatibility problems.

    When I changed the repository list to metarepository.tk, I think, nothing changed (probably my DNS can handle the old name, too). Here is the install console:

    root@Nasi:~# /opt/bin/opkg install zyxel-samba-replacement
    Installing zyxel-samba-replacement (3.6.25) to root...
    Installing samba36-server (3.6.25-9) to root...
    Installing libc (2.23-6) to root...
    Installing libgcc (6.3.0-6) to root...
    Installing libssp (6.3.0-6) to root...
    Installing librt (2.23-6) to root...
    Installing libpthread (2.23-6) to root...
    Configuring libgcc.
    Configuring libc.
    Configuring libssp.
    Configuring libpthread.
    Configuring librt.
    Configuring samba36-server.
    Configuring zyxel-samba-replacement.
    root@Nasi:~# /opt/etc/init.d/S08samba stop
    root@Nasi:~# chmod a-x /opt/etc/init.d/S08samba
    root@Nasi:~# chmod a+x /opt/etc/init.d/S09ZyXELSambaReplacement
    root@Nasi:~# /opt/etc/init.d/S09ZyXELSambaReplacement start
    Stopping Samba daemons: nmbd smbd.
    mv: cannot stat `/opt/var/lock/*': No such file or directory
    FATAL: kernel too old
    FATAL: kernel too old


    You wrote, that there is a script in opt/sbin to restore symlinks to the old libs, but I'm not found anywhere. Manually searched all the directories under /opt, but nothing similar found.
    My /opt/sbin directory:

    # ls -la /opt/sbin
    total 3300
    drwxr-xr-x  2 root root    4096 Oct 22 16:42 .
    drwxr-xr-x 10 root root    4096 Nov  7  2017 ..
    -rwxr-xr-x  1 root root  262864 Jan  4  2018 eventlogadm
    lrwxrwxrwx  1 root root      15 Oct 22 16:42 nmbd -> samba_multicall
    -rwxr-xr-x  1 root root  382944 Jan  4  2018 pdbedit
    -rwxr-xr-x  1 root root  234592 Jan  4  2018 profiles
    -rwxr-xr-x  1 root root 2170340 Jan  4  2018 samba_multicall
    lrwxrwxrwx  1 root root      15 Oct 22 16:42 smbd -> samba_multicall
    lrwxrwxrwx  1 root root      15 Oct 22 16:42 smbpasswd -> samba_multicall
    -rwxr-xr-x  1 root root  281228 Jan  4  2018 smbstatus
    -rwxr-xr-x  1 root root   27204 Jan  4  2018 tdbbackup

    Also tried to find the script in /usr/local/zy-pkgs (the parent dir of the symlink of /opt), but nothing.

    What's next?
  • Mijzelf
    Mijzelf Posts: 2,763  Guru Member
    250 Answers 2500 Comments Friend Collector Seventh Anniversary
    Have a look in /opt/bin. (There is no /opt/usr/sbin, I suppose?) Sorry, I'm getting a bit rusty.
  • Norbi
    Norbi Posts: 18  Freshman Member
    First Comment First Anniversary
    Nope, /opt/bin contains only the opkg executable.
    /opt/usr is empty.
    I walked through all the folders in /opt and in some other places, too. Nothing similar than restore_2.6.24_support.sh

    Don't apologize, you've already helped me a lot. :-)
    Thanks!
  • Mijzelf
    Mijzelf Posts: 2,763  Guru Member
    250 Answers 2500 Comments Friend Collector Seventh Anniversary
    I looked in my install script, it installs the package kernel-2.6.24-support, which, surprise!, installs /opt/sbin/kernel-2.6.24-support.sh. So apparently that part failed. It is also possible to do it's tasks manually, basically it executes all scripts in /opt/lib/2.6.24/. After that install kernel-2.6.24-support. Somehow the 2.6.24 support is supposed to be re-applied on boot either, but I can't remember how. A script in /opt/etc/init.d/, I suppose, but I don't know how it's installed. Maybe in libc-2.6.24.

  • Norbi
    Norbi Posts: 18  Freshman Member
    First Comment First Anniversary
    Oh yes, finally it works - again.

    So, I ran all 3 sh scripts from /opt/lib/2.6.24/, started the new samba (/opt/etc/init.d/S09ZyXELSambaReplacement start) and voila! 

    No need to install anything else.

    Thanks again!
  • Hi all, I have 12 NSA325V2´s and they all desperately need SMB2. I followed the link from "Mijzelf" to the zyxel.diskstation.eu site, but I am unable to register to that site to ask a question, the registration form shows no reaction when I submit my data.

    So I post my question here : Is there a step by step description of how to update the NSA325V2 to a higher SMB version anywhere ? I understand how to enable SSH on the box, but I don´t understand where to download and how to install "Entware-ng"- Any help would be greatly appreciated. Thanks in advance.
  • Mijzelf
    Mijzelf Posts: 2,763  Guru Member
    250 Answers 2500 Comments Friend Collector Seventh Anniversary
    If zyxel.diskstation.eu works for you, you should follow the directions in http://zyxel.diskstation.eu/Users/Mijzelf/zypkg-repo/ to install MetaRepository, which gives you an option to install Entware-ng.


  • Thanks for the fast answer. I was able to install Metarepository and when I look into the \admin\zy-pkgs path I have a bunch of new data. Nevertheless, even if I restart the NSA and press retieve new list there is still only the one Metarepository packet, marked as "installed". I can´t find out how to go from here.
    Sorry for being such a beginner, I read almost anything I could find on the internet but it stops here.
    Many thanks in advance and best regards !

  • I forgot to mention this : In the package menu you can open the configuration page of MetaRepository - Yes, I can do that but on the page that opens there is no clue to entware

Consumer Product Help Center