Rstudio-server 1.1.453 && libcrypto.so.1.0.2

install

#1

Hi,

I saw an update on Rstudio website for Rstudio server and I tried to upgrade my Rstudio server to the more recent version through the following:

sudo apt update
sudo apt upgrade
wget https://download2.rstudio.org/rstudio-server-stretch-1.1.453-amd64.deb
sudo gdebi rstudio-server-stretch-1.1.453-amd64.deb

and I got:

Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading state information... Done

RStudio Server
RStudio is a set of integrated tools designed to help you be more productive with R. It includes a console, syntax-highlighting editor that supports direct code execution, as well as tools for plotting, history, and workspace management.
Do you want to install the software package? [y/N]:y
(Reading database ... 563695 files and directories currently installed.)
Preparing to unpack rstudio-server-stretch-1.1.453-amd64.deb ...
Unpacking rstudio-server (1.1.453) over (1.1.442) ...
Setting up rstudio-server (1.1.453) ...
useradd: user 'rstudio-server' already exists
groupadd: group 'rstudio-server' already exists
Created symlink from /etc/systemd/system/multi-user.target.wants/rstudio-server.service to /etc/systemd/system/rstudio-server.service.
Job for rstudio-server.service failed because the control process exited with error code. See "systemctl status rstudio-server.service" and "journalctl -xe" for details.
● rstudio-server.service - RStudio Server
Loaded: loaded (/etc/systemd/system/rstudio-server.service; enabled; vendor preset: enabled)
Active: activating (start) since Mon 2018-05-21 13:32:06 EEST; 3ms ago
Main PID: 1862 (code=killed, signal=TERM); : 23383 (rserver)
Tasks: 7
Memory: 1.1G
CPU: 181us
CGroup: /system.slice/rstudio-server.service
└─11760 /usr/lib/rstudio-server/bin/rsession -u mehu --launcher-to...

May 21 13:32:06 HP-EliteDesk-800-G1-TWR systemd[1]: Starting RStud...
May 21 13:32:06 HP-EliteDesk-800-G1-TWR rserver[23383]: /usr/lib/r...
May 21 13:32:06 HP-EliteDesk-800-G1-TWR systemd[1]: rstudio-server...
May 21 13:32:06 HP-EliteDesk-800-G1-TWR systemd[1]: Failed to star...
May 21 13:32:06 HP-EliteDesk-800-G1-TWR systemd[1]: rstudio-server...
May 21 13:32:06 HP-EliteDesk-800-G1-TWR systemd[1]: rstudio-server...
Hint: Some lines were ellipsized, use -l to show in full.

Then I tried rstudio-server start which produced:

/usr/lib/rstudio-server/bin/rserver: error while loading shared libraries: libssl.so.1.0.2: cannot open shared object file: No such file or directory

Based on this I went for installing libssl by sudo apt-get install libssl1.0.0 libssl-dev which resulted in:

Reading package lists... Done
Building dependency tree
Reading state information... Done
libssl-dev is already the newest version (1.0.2g-1ubuntu4.12).
libssl1.0.0 is already the newest version (1.0.2g-1ubuntu4.12).
0 upgraded, 0 newly installed, 0 to remove and 4 not upgraded.

Considering the version numbers in parenthesis, I have the correct version, plus Rstudio server version 1.1.445 was working fine on my computer.

I couldn't find any relevant post in StackOverflow or this forum. Any ideas?


#2

It seems that it is not only me who have faced this issue. I stumbled upon the following link in the first page of googling about this:

I'm sure that my openssl version is correct and I have downloaded the last .deb package from rstudio website, so things are expected to work. Just for the sake of the argument:

➜  ~  openssl version
OpenSSL 1.0.2n  7 Dec 2017


➜  ~  apt search libssl | grep "^libssl"

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

libssl-dev/xenial-updates,xenial-security,now 1.0.2g-1ubuntu4.12 amd64 [installed]
libssl-doc/xenial-updates,xenial-updates,xenial-security,xenial-security,now 1.0.2g-1ubuntu4.12 all [installed,automatic]
libssl-ocaml/xenial 0.5.2-1 amd64
libssl-ocaml-dev/xenial 0.5.2-1 amd64
libssl1.0.0/xenial-updates,xenial-security,now 1.0.2g-1ubuntu4.12 amd64 [installed]
libssl1.0.0-dbg/xenial-updates,xenial-security 1.0.2g-1ubuntu4.12 amd64
libsslcommon2/xenial 0.16-9ubuntu2 amd64
libsslcommon2-dev/xenial 0.16-9ubuntu2 amd64

I need this to work and I appreciate any help.


#3

I've hit the same. Can't make this work until it's fixed or there's a workaround

/usr/lib/rstudio-server/bin/rserver: error while loading shared libraries: libssl.so.1.0.2: cannot open shared object file:


#4

Do you know anyone from the support team or any experienced member that can help us dig into this and solve this? We can tag them here for example


#5

As a bit of an update, After discussing with a colleague of mine, he suggested that I check what is used during compilation of rstudio server:

ldd /usr/lib/rstudio-server/bin/rserver

/usr/lib/rstudio-server/bin/rserver: /usr/lib/libssl.so.1.0.2: version `OPENSSL_1.0.2d' not found (required by /usr/lib/rstudio-server/bin/rserver)
linux-vdso.so.1 => (0x00007ffd85bfc000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007ffa64e62000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ffa64c45000)
libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007ffa64a42000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007ffa6483d000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007ffa64635000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007ffa6441b000)
libssl.so.1.0.2 => /usr/lib/libssl.so.1.0.2 (0x00007ffa641b2000)
libcrypto.so.1.0.2 => not found
libpam.so.0 => /lib/x86_64-linux-gnu/libpam.so.0 (0x00007ffa63fa4000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007ffa63c22000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007ffa63919000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007ffa63703000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ffa63339000)
/lib64/ld-linux-x86-64.so.2 (0x00007ffa6581e000)
libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007ffa62ef5000)
libaudit.so.1 => /lib/x86_64-linux-gnu/libaudit.so.1 (0x00007ffa62cce000)

The only one missing is libcrypto.so.1.0.2 , so I searched in Ubuntu repository to see which package has this file:

sudo apt install apt-file
apt-file update
apt-file find libcrypto.so

This resulted in

libssl-dev: /usr/lib/x86_64-linux-gnu/libcrypto.so
libssl1.0.0: /lib/x86_64-linux-gnu/libcrypto.so.1.0.0

which means the file libcrypto.so.1.0.2 does not exist in the Ubuntu repository (my system is Ubuntu 16.04)

Then, it was time to check the package versions used in in the compiled file:

strings /usr/lib/rstudio-server/bin/rserver | grep OPENSSL

OPENSSL_add_all_algorithms_noconf
OPENSSL_1.0.2d
ERR_remove_thread_state@@OPENSSL_1.0.2d
CRYPTO_num_locks@@OPENSSL_1.0.2d
CRYPTO_free@@OPENSSL_1.0.2d
BIO_ctrl@@OPENSSL_1.0.2d
BIO_f_base64@@OPENSSL_1.0.2d
BIO_free_all@@OPENSSL_1.0.2d
ERR_free_strings@@OPENSSL_1.0.2d
BIO_new@@OPENSSL_1.0.2d
RSA_size@@OPENSSL_1.0.2d
ERR_load_crypto_strings@@OPENSSL_1.0.2d
EVP_sha256@@OPENSSL_1.0.2d
BIO_set_flags@@OPENSSL_1.0.2d
CONF_modules_unload@@OPENSSL_1.0.2d
BIO_s_mem@@OPENSSL_1.0.2d
OPENSSL_add_all_algorithms_noconf@@OPENSSL_1.0.2d
ENGINE_cleanup@@OPENSSL_1.0.2d
BIO_new_mem_buf@@OPENSSL_1.0.2d
ERR_error_string_n@@OPENSSL_1.0.2d
BIO_read@@OPENSSL_1.0.2d
SSL_COMP_free_compression_methods@@OPENSSL_1.0.2d
ERR_reason_error_string@@OPENSSL_1.0.2d
BN_bn2hex@@OPENSSL_1.0.2d
EVP_cleanup@@OPENSSL_1.0.2d
RAND_seed@@OPENSSL_1.0.2d
RSA_private_decrypt@@OPENSSL_1.0.2d
RSA_generate_key@@OPENSSL_1.0.2d
HMAC@@OPENSSL_1.0.2d
CRYPTO_set_locking_callback@@OPENSSL_1.0.2d
CRYPTO_cleanup_all_ex_data@@OPENSSL_1.0.2d
BIO_write@@OPENSSL_1.0.2d
ERR_get_error@@OPENSSL_1.0.2d
SSL_library_init@@OPENSSL_1.0.2d
BIO_push@@OPENSSL_1.0.2d
SSL_load_error_strings@@OPENSSL_1.0.2d

This shows that OPENSSL_1.0.2d is used all through out the compilation (the focus is on the minor version "d" at the end of the library name)

Then, finally it was time to check what is provided in the latest version that I could find in Ubuntu repository:

strings /usr/lib/libssl.so.1.0.2 | grep OPENSSL           

OPENSSL_cleanse
OPENSSL_DIR_read
OPENSSL_DIR_end
OPENSSL_1.0.0
OPENSSL_1.0.1
OPENSSL_1.0.1d
OPENSSL_1.0.2
OPENSSL_1.0.2g
OPENSSL_DIR_read(&ctx, '
OPENSSL_malloc Error

As you can see there is no 1.0.2d version. This simply means that Rstudio people have most probably changed their .deb building workflow!!!!!

For those who are stuck like me in this situation, the only way left is to download, complile and install Rstusio Server them selves on their own computer:
https://www.rstudio.com/products/rstudio/download-server/


#6

Do you have any better luck installing the binary for Debian 8 / Ubuntu? From https://www.rstudio.com/products/rstudio/download-server/ :

$ sudo apt-get install gdebi-core
$ wget https://download2.rstudio.org/rstudio-server-1.1.453-amd64.deb
$ sudo gdebi rstudio-server-1.1.453-amd64.deb

#7

Thanks for the help and pointing out my mistake. Yes it works when I use the correct .deb file :man_facepalming: . I think the header "Debian 8 / Ubuntu" is not as eye-catching and as bold as "64bit". Perhaps it would be nice to change the header color or draw a horizontal line between these two sections.

Thank you for your reply and thanks for saving my time.