Problem setting up persistence on Linux server

  1. 9 years ago

    I have problems setting up persistence, the arma 3 server is running on Ubuntu 14.04.4 LTS (GNU/Linux 4.2.0-34-generic x86_64)

    The server segfaults at the moment it tries to run the @aliveserver plugin, here's the RPT

    http://pastebin.com/eBi74g02

    And here's the ldd output for the aliveplugin.so file after installing libcurl3:386 as was explained on another thread:

    $ ldd mods/@aliveserver/ALiVEPlugIn.so
            linux-gate.so.1 =>  (0xf7771000)
            libcurl.so.4 => /usr/lib/i386-linux-gnu/libcurl.so.4 (0xf751e000)
            libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf74d8000)
            libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf7329000)
            /lib/ld-linux.so.2 (0x56654000)
            libidn.so.11 => /usr/lib/i386-linux-gnu/libidn.so.11 (0xf72f6000)
            librtmp.so.0 => /usr/lib/i386-linux-gnu/librtmp.so.0 (0xf72db000)
            libssl.so.1.0.0 => /lib/i386-linux-gnu/libssl.so.1.0.0 (0xf7283000)
            libcrypto.so.1.0.0 => /lib/i386-linux-gnu/libcrypto.so.1.0.0 (0xf70d5000)
            libgssapi_krb5.so.2 => /usr/lib/i386-linux-gnu/libgssapi_krb5.so.2 (0xf708e000)
            liblber-2.4.so.2 => /usr/lib/i386-linux-gnu/liblber-2.4.so.2 (0xf707f000)
            libldap_r-2.4.so.2 => /usr/lib/i386-linux-gnu/libldap_r-2.4.so.2 (0xf702d000)
            libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xf7013000)
            libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf6ff7000)
            libgnutls.so.26 => /usr/lib/i386-linux-gnu/libgnutls.so.26 (0xf6f30000)
            libgcrypt.so.11 => /lib/i386-linux-gnu/libgcrypt.so.11 (0xf6ea9000)
            libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf6ea4000)
            libkrb5.so.3 => /usr/lib/i386-linux-gnu/libkrb5.so.3 (0xf6de6000)
            libk5crypto.so.3 => /usr/lib/i386-linux-gnu/libk5crypto.so.3 (0xf6db6000)
            libcom_err.so.2 => /lib/i386-linux-gnu/libcom_err.so.2 (0xf6db0000)
            libkrb5support.so.0 => /usr/lib/i386-linux-gnu/libkrb5support.so.0 (0xf6da4000)
            libresolv.so.2 => /lib/i386-linux-gnu/libresolv.so.2 (0xf6d8c000)
            libsasl2.so.2 => /usr/lib/i386-linux-gnu/libsasl2.so.2 (0xf6d71000)
            libgssapi.so.3 => /usr/lib/i386-linux-gnu/libgssapi.so.3 (0xf6d35000)
            libtasn1.so.6 => /usr/lib/i386-linux-gnu/libtasn1.so.6 (0xf6d20000)
            libp11-kit.so.0 => /usr/lib/i386-linux-gnu/libp11-kit.so.0 (0xf6ce4000)
            libgpg-error.so.0 => /lib/i386-linux-gnu/libgpg-error.so.0 (0xf6cdf000)
            libkeyutils.so.1 => /lib/i386-linux-gnu/libkeyutils.so.1 (0xf6cdb000)
            libheimntlm.so.0 => /usr/lib/i386-linux-gnu/libheimntlm.so.0 (0xf6cd2000)
            libkrb5.so.26 => /usr/lib/i386-linux-gnu/libkrb5.so.26 (0xf6c4b000)
            libasn1.so.8 => /usr/lib/i386-linux-gnu/libasn1.so.8 (0xf6ba5000)
            libhcrypto.so.4 => /usr/lib/i386-linux-gnu/libhcrypto.so.4 (0xf6b70000)
            libroken.so.18 => /usr/lib/i386-linux-gnu/libroken.so.18 (0xf6b5a000)
            libffi.so.6 => /usr/lib/i386-linux-gnu/libffi.so.6 (0xf6b53000)
            libwind.so.0 => /usr/lib/i386-linux-gnu/libwind.so.0 (0xf6b29000)
            libheimbase.so.1 => /usr/lib/i386-linux-gnu/libheimbase.so.1 (0xf6b1a000)
            libhx509.so.5 => /usr/lib/i386-linux-gnu/libhx509.so.5 (0xf6ad3000)
            libsqlite3.so.0 => /usr/lib/i386-linux-gnu/libsqlite3.so.0 (0xf6a16000)
            libcrypt.so.1 => /lib/i386-linux-gnu/libcrypt.so.1 (0xf69e5000)

    I have tried renaming the file to lowercase but then I get "THERE IS A PROBLEM WITH THE ALIVE PLUGIN!" errors back and no connection to the WarRoom.

    In any case no log is generated by the plugin on the @aliverserver folder.

  2. 8 years ago

    Hi, I'm back with the tests I ran with the new alive version. Sadly, the server still segfaults whenever I try to use the plugin.

    Stuff that has changed in this two weeks: the server is running now Ubuntu 14.04.4 LTS (GNU/Linux 4.2.0-35-generic x86_64) which is a kernel security upgrade. I'm also now running the latest arma3server linux performance binaries from here:

    https://forums.bistudio.com/topic/160288-arma-3-stable-server-156-performance-binary-feedback/page-67#entry3005240

    I've tried with the normal arma3server binary and it has the same problem, the server crashes when it tries to load the plugin.

    I've ran gdb on the core dump and the output is basically the same as this fellow: http://alivemod.com/forum/1704-linux-dedi-segfault

    Our server is really barebones, it just has the core ubuntu server installation, openssh and the libraries needed to operate the arma3server, it runs on an i7 CPU and 12GB of RAM.

    If you guys need more information or tests to be performed I would be happy to oblige. We really like ALiVE and we would *really* like to have persistence working for our missions.

  3. Tupolov

    Show in context Administrator

    Us too!

    Our linux plugin dev is away at the moment. We really need him to troubleshoot this.

    Please confirm:

    1. You are testing with ALiVE 1.0.3
    2. You have download the latest version of the plugin
    3. You are testing a vanilla ALiVE Mission - Stratis Quick Start
  4. Tupolov

    Show in context Administrator
    Edited 8 years ago by Tupolov

    I set up an Ubuntu server for the ALiVE team at the weekend. Everything is working well for us.

    Key things I had to do:

    1. Run ldd ALiVEPlugIn.so to ensure you have all the correct libraries (libcurl3 32bit)
    2. Make sure all pbo's are lowercase for all mods
    3. Copy the mod keys into the arma 3 root keys folder
    4. Make sure that your linux user account running arma 3 is the owner of the arma 3 folder and sub directories
    5. Make sure all pbo's are chmod 755
    6. Make sure the alive server folder is @aliveserver (and not @AliveServer)
    7. Make sure the ALiVEPlugIn.so is NOT all lowercase
    8. Ensure chmod +rw on the ALiVEPlugIn.so (owner is your linux user account for running arma 3)
    9. Check the output of ldd ALiVEPlugIn.so should be:
    steam@BEAST-Ubuntu-1404-trusty-64-minimal:~/steamcmd/arma3/@aliveserver$ ldd ALiVEPlugIn.so
            linux-gate.so.1 =>  (0xf7713000)
            libcurl.so.4 => /usr/lib/i386-linux-gnu/libcurl.so.4 (0xf74bd000)
            libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf7477000)
            libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf72c8000)
            /lib/ld-linux.so.2 (0xf7714000)
            libidn.so.11 => /usr/lib/i386-linux-gnu/libidn.so.11 (0xf7295000)
            librtmp.so.0 => /usr/lib/i386-linux-gnu/librtmp.so.0 (0xf727b000)
            libssl.so.1.0.0 => /lib/i386-linux-gnu/libssl.so.1.0.0 (0xf7223000)
            libcrypto.so.1.0.0 => /lib/i386-linux-gnu/libcrypto.so.1.0.0 (0xf7076000)
            libgssapi_krb5.so.2 => /usr/lib/i386-linux-gnu/libgssapi_krb5.so.2 (0xf7038000)
            liblber-2.4.so.2 => /usr/lib/i386-linux-gnu/liblber-2.4.so.2 (0xf7029000)
            libldap_r-2.4.so.2 => /usr/lib/i386-linux-gnu/libldap_r-2.4.so.2 (0xf6fd7000)
            libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xf6fbd000)
            libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf6fa1000)
            libgnutls.so.26 => /usr/lib/i386-linux-gnu/libgnutls.so.26 (0xf6eda000)
            libgcrypt.so.11 => /lib/i386-linux-gnu/libgcrypt.so.11 (0xf6e54000)
            libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf6e4f000)
            libkrb5.so.3 => /usr/lib/i386-linux-gnu/libkrb5.so.3 (0xf6d80000)
            libk5crypto.so.3 => /usr/lib/i386-linux-gnu/libk5crypto.so.3 (0xf6d58000)
            libcom_err.so.2 => /lib/i386-linux-gnu/libcom_err.so.2 (0xf6d52000)
            libkrb5support.so.0 => /usr/lib/i386-linux-gnu/libkrb5support.so.0 (0xf6d49000)
            libresolv.so.2 => /lib/i386-linux-gnu/libresolv.so.2 (0xf6d31000)
            libsasl2.so.2 => /usr/lib/i386-linux-gnu/libsasl2.so.2 (0xf6d15000)
            libgssapi.so.3 => /usr/lib/i386-linux-gnu/libgssapi.so.3 (0xf6cd9000)
            libtasn1.so.6 => /usr/lib/i386-linux-gnu/libtasn1.so.6 (0xf6cc4000)
            libp11-kit.so.0 => /usr/lib/i386-linux-gnu/libp11-kit.so.0 (0xf6cb2000)
            libgpg-error.so.0 => /lib/i386-linux-gnu/libgpg-error.so.0 (0xf6cad000)
            libkeyutils.so.1 => /lib/i386-linux-gnu/libkeyutils.so.1 (0xf6ca9000)
            libheimntlm.so.0 => /usr/lib/i386-linux-gnu/libheimntlm.so.0 (0xf6ca0000)
            libkrb5.so.26 => /usr/lib/i386-linux-gnu/libkrb5.so.26 (0xf6c19000)
            libasn1.so.8 => /usr/lib/i386-linux-gnu/libasn1.so.8 (0xf6b73000)
            libhcrypto.so.4 => /usr/lib/i386-linux-gnu/libhcrypto.so.4 (0xf6b3e000)
            libroken.so.18 => /usr/lib/i386-linux-gnu/libroken.so.18 (0xf6b28000)
            libwind.so.0 => /usr/lib/i386-linux-gnu/libwind.so.0 (0xf6aff000)
            libheimbase.so.1 => /usr/lib/i386-linux-gnu/libheimbase.so.1 (0xf6aef000)
            libhx509.so.5 => /usr/lib/i386-linux-gnu/libhx509.so.5 (0xf6aa8000)
            libsqlite3.so.0 => /usr/lib/i386-linux-gnu/libsqlite3.so.0 (0xf69eb000)
            libcrypt.so.1 => /lib/i386-linux-gnu/libcrypt.so.1 (0xf69ba000)
  5. Well, all is OK according to your checklist. I usually have the pbo files with 644 file permissions since I don't think the arma3server requires execute permissions for pbo's but I still went and made the change to 755. And I even went and changed the @aliveserver directory and ALiVEPlugIn.so file permissions to 777 and 666 and still no joy.

    The only difference I noticed was on the ldd output where you have this:

            libroken.so.18 => /usr/lib/i386-linux-gnu/libroken.so.18 (0xf6b28000)
            libwind.so.0 => /usr/lib/i386-linux-gnu/libwind.so.0 (0xf6aff000)

    And I have this:

            libroken.so.18 => /usr/lib/i386-linux-gnu/libroken.so.18 (0xf6b50000)
            libffi.so.6 => /usr/lib/i386-linux-gnu/libffi.so.6 (0xf6b49000)
            libwind.so.0 => /usr/lib/i386-linux-gnu/libwind.so.0 (0xf6b1f000)
  6. Tupolov

    Show in context Administrator

    New linux plugin (2.1) pushed to above link. 1.0.4 ALiVE inbound over the next 1 hour or two :)