Skip to main content
Topic: libssl error after incomlete update [SOLVED] (Read 713 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

libssl error after incomlete update [SOLVED]

during boot to DE which recently worked quite well as Artix with Plasma, now I see on screen an infinitely repeating error:
sddm: Can not find libssl
It happened after installing the openssl package via pacman.
Is the system still recoverable? (I can boot to this machine from a live usb if any direct changes to files required). Could anyone guide me through this?
Operating System: Artix Linux x86_64

Re: boot error on libssl

Reply #1
Quote
Is the system still recoverable?
Yes
Quote
It happened after installing the openssl package via pacman.
I'm curious because you make it sound like you did that explicitly? When openssl would be pulled in as a dependency anyway.

I just installed sddm to have a look and on my fully updated system there are no library errors.
sddm links to libssl.so.3
Code: [Select]
❯ ldd /usr/bin/sddm | grep ssl
        libssl.so.3 => /usr/lib/libssl.so.3 (0x00007fa41b160000)

world/sddm 0.19.0-9.1 is my sddm version
system/openssl 3.0.8-1 is my openssl version

You should be able to still access your system by booting and then switching to another TTY.
Hold CTRL-ALT-F2

There's various way to get your desktop back. Fixing your openssl issue is one of them. Make sure the system is fully up to date.
Run ldd /usr/bin/sddm and post the output.

You could just use startx for now https://wiki.archlinux.org/title/Xinit
Install xorg-xinit
Code: [Select]
sudo pacman -S xorg-xinit
Create ~/.xinitrc and add this to it
Code: [Select]
## Uncomment the three lines below if you use pipwire for sound
#/usr/bin/pipewire &
#/usr/bin/pipewire-pulse &
#/usr/bin/wireplumber &

startplasma-x11

Stop sddm
Code: [Select]
sudo rc-service sddm stop 

Start X
Code: [Select]
startx

You could also switch to another Display manager eg. lightdm.


Re: boot error on libssl

Reply #2
Hi @gripped , thanks for your interest in the problem. I use runit-plasma-x86 (this version of artix) on the machine in question.

I am glad your advice of Alt-Ctrl-F2 works, but I am not sure when exactly to press it as sometimes it did not work as I missed the correct moment apparently.

The system was not up to date. I installed a few things with pacman today: wine, wine-gecko, wine-mono, wesnoth, freeciv. Wine worked, but reported some missing components running Explorer, afaicr: fixme:ntl auth. If I remember well this convinced me to install openssl afterwards. Afaicr there was already openssl 1.0 on the system and I installed openssl 3.0 something.

Anyway I managed to break the looped error message. It said sddm: error while loading shared libs: libssl.so.1.1 can not open no such file (...)uint32 2. Also the first message on boot screen said Starting 251.4-1-artix and took several times  longer than usual to display the following recovering journal and proceed to sddm.

I ran
Code: [Select]
 ldd /usr/bin/sddm 
and read several lines of its output mentioning libraries and filepaths, among which only two were reported missing: libssl.so.1.1 and libcrypto.so.1.1. I have no idea how to post the actual output as I can not run any browser and get the machine on line at the moment, so please forgive me or confirm you need a camera photo of the screen to debug the issue  :-[ . What do you think of putting these two libraries mentioned manually to /usr/lib?
Operating System: Artix Linux x86_64

Re: boot error on libssl

Reply #3
Yeah sorry I forgot not everybody uses openrc!
Code: [Select]
sudo rc-service sddm stop 
would have to be changed to your init's equivalent.

Anyway If you have not just try
Code: [Select]
sudo pacman -Syu
before you do anything else.

You should be able to switch TTY's at any point once the init has done it's startup.
Though maybe you have a usable prompt anyway?
As you ran
Code: [Select]
ldd /usr/bin/sddm 

Pretty sure your problem is just an out of date openssl package.
Both the missing libraries you mentioned come from that package.

 

Re: boot error on libssl

Reply #4
Hi, thanks for all your advice above. I finally found time to follow it (at least in general direction). And to write all the below. To tell the long story short, I manually copied the missing libraries to /usr/lib/ and upgraded updated.

The machine in question is a notebook built in the style of /\/\@c8ook Air, so no LAN socket. So no access to internet except for WiFi. Fortunately it was equipped with 3 USB A sockets. Well yes, I am aware one can log to any wireless network from command line with wpa_supplicant. Unfortunately last year when I tried to find any tutorial on this, I failed. I needed to login to a wireless network with static IP, which is the only one available in the location in question.

So I planned to login to desktop to any account that already had configured and stored WiFi settings. Not being confident on the way to achieve it I decided to manually copy the missing libraries to their correct location. Thanks to your advice above, I found libcrypto.so.1.1 and libssl.so.1.1 in the /usr/lib/ directory of another machine with a similiar system. If not there, I would have no idea where to look for these files?

I launched the machine with a broken system from a live USB, launched the console (from desktop env, as I am not aware of any other way, maybe apart from ctrl+alt+F2 I have just learned) and from the root account copied both files to the /usr/lib/ of the machine with broken system. I used USB memory stick. I must mention that on the „source” machine with an outdated but working system I also noticed symlinks pointing to these two libraries. However on the broken one I found the same symlinks but pointing to the more recent libssl.so.3 and libcrypto.so.3. So decided to leave the symlinks in their state. I can not recommend this way as a proper and effective solution, but in my case it worked, if anyone ever wanted to try out this path.

I rebooted and gladly noticed that this time DE loaded correctly. So I checked internet connection, moved on to
Code: [Select]
pacman -Syu 
and observed the action for a couple of minutes and lots of MiBs. Noticed some warnings, some optional offers and terrifying questions (sdl or sdl-core, atk or not atk), but that’s a different story. After rebooting all seems fine. And this time it is 252-5.1, not the number mentioned previously. Pasting just for fun after update
Code: [Select]
 $ ldd /usr/bin/sddm
        linux-vdso.so.1 (0x00007fff7271d000)
        libQt5DBus.so.5 => /usr/lib/libQt5DBus.so.5 (0x00007f83b17e7000)
        libQt5Qml.so.5 => /usr/lib/libQt5Qml.so.5 (0x00007f83b1200000)
        libQt5Network.so.5 => /usr/lib/libQt5Network.so.5 (0x00007f83b1676000)
        libQt5Core.so.5 => /usr/lib/libQt5Core.so.5 (0x00007f83b0c00000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f83b0800000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f83b1656000)
        libc.so.6 => /usr/lib/libc.so.6 (0x00007f83b0619000)
        libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0x00007f83b11af000)
        libm.so.6 => /usr/lib/libm.so.6 (0x00007f83b0b18000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00007f83b163a000)
        libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0x00007f83b115b000)
        libssl.so.3 => /usr/lib/libssl.so.3 (0x00007f83b0a78000)
        libcrypto.so.3 => /usr/lib/libcrypto.so.3 (0x00007f83b0000000)
        libdouble-conversion.so.3 => /usr/lib/libdouble-conversion.so.3 (0x00007f83b1622000)
        libicui18n.so.72 => /usr/lib/libicui18n.so.72 (0x00007f83afc00000)
        libicuuc.so.72 => /usr/lib/libicuuc.so.72 (0x00007f83af800000)
        libpcre2-16.so.0 => /usr/lib/libpcre2-16.so.0 (0x00007f83b058b000)
        libzstd.so.1 => /usr/lib/libzstd.so.1 (0x00007f83b04bb000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007f83afac1000)
        /lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007f83b1913000)
        libelogind.so.0 => /usr/lib/libelogind.so.0 (0x00007f83aff63000)
        libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x00007f83af728000)
        libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x00007f83b112d000)
        libcom_err.so.2 => /usr/lib/libcom_err.so.2 (0x00007f83b161a000)
        libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0x00007f83b160a000)
        libkeyutils.so.1 => /usr/lib/libkeyutils.so.1 (0x00007f83b1126000)
        libresolv.so.2 => /usr/lib/libresolv.so.2 (0x00007f83b0a66000)
        libicudata.so.72 => /usr/lib/libicudata.so.72 (0x00007f83ad800000)
        libpcre2-8.so.0 => /usr/lib/libpcre2-8.so.0 (0x00007f83afa26000)
        libcap.so.2 => /usr/lib/libcap.so.2 (0x00007f83b0a5a000)
However, I still can see both libcrypto.so.1.1 and libssl.so.1.1 are present in the /usr/lib/ Where should I send the following question: „Dear pacman, should I keep both the libcrypto.so.1.1 and libssl.so.1.1 ? Are they still necessary? Are they harmful?”

I confirm the reason for the problem was the incorrect and incomplete way to update that I shouldn’t have used in the first place. Thanks once again!
Operating System: Artix Linux x86_64