Artix Linux Forum

Artix Linux => Package management => Topic started by: ####### on 17 September 2018, 17:01:59

Title: Long pause at "Initializing random number generator"
Post by: ####### on 17 September 2018, 17:01:59
I updated, and uninstalled libreoffice-fresh and it's deps first, because I didn't need it anymore. Then I installed jdk 6 from the AUR. (An old unsupported version of java.)
Now I am getting a long pause on every boot after the  "Initializing random number generator" message is shown onscreen.
I guess I'll have to rewind that lot and see what's causing it, unless anyone else has the answer already if they've encountered it.

Code: [Select]
[2018-09-17 03:08] [PACMAN] Running 'pacman -Rs libreoffice-fresh'
[2018-09-17 03:09] [ALPM] transaction started
[2018-09-17 03:09] [ALPM] removed libreoffice-fresh (6.1.0-2)
[2018-09-17 03:09] [ALPM] removed xmlsec (1.2.26-1)
[2018-09-17 03:09] [ALPM] removed redland (1:1.0.17-4)
[2018-09-17 03:09] [ALPM] removed rasqal (1:0.9.33-2)
[2018-09-17 03:09] [ALPM] removed raptor (2.0.15-9)
[2018-09-17 03:09] [ALPM] removed poppler (0.67.0-1)
[2018-09-17 03:09] [ALPM] removed nss (3.39-1)
[2018-09-17 03:09] [ALPM] removed neon (0.30.2-3)
[2018-09-17 03:09] [ALPM] removed lpsolve (5.5.2.5-2)
[2018-09-17 03:09] [ALPM] removed libzmf (0.0.2-4)
[2018-09-17 03:09] [ALPM] removed libxslt (1.1.32+3+g32c88216-1)
[2018-09-17 03:09] [ALPM] removed libwps (0.4.10-1)
[2018-09-17 03:09] [ALPM] removed libvisio (0.1.6-4)
[2018-09-17 03:09] [ALPM] removed libwpg (0.3.2-1)
[2018-09-17 03:09] [ALPM] removed libtommath (1.0.1-1)
[2018-09-17 03:09] [ALPM] removed libstaroffice (0.0.6-1)
[2018-09-17 03:09] [ALPM] removed libqxp (0.0.1-3)
[2018-09-17 03:09] [ALPM] removed libpagemaker (0.0.4-1)
[2018-09-17 03:09] [ALPM] removed liborcus (0.13.4-3)
[2018-09-17 03:09] [ALPM] removed libixion (0.13.0-3)
[2018-09-17 03:09] [ALPM] removed libodfgen (0.1.7-1)
[2018-09-17 03:09] [ALPM] removed libnumbertext (1.0-1)
[2018-09-17 03:09] [ALPM] removed libmwaw (0.3.14-1)
[2018-09-17 03:09] [ALPM] removed libmspub (0.1.4-3)
[2018-09-17 03:09] [ALPM] removed libfreehand (0.1.2-1)
[2018-09-17 03:09] [ALPM] removed libexttextcat (3.4.5-1)
[2018-09-17 03:09] [ALPM] removed libetonyek (0.1.8-1)
[2018-09-17 03:09] [ALPM] removed libepubgen (0.1.1-1)
[2018-09-17 03:09] [ALPM] removed libe-book (0.1.3-3)
[2018-09-17 03:09] [ALPM] removed liblangtag (0.6.2-1)
[2018-09-17 03:09] [ALPM] removed libcmis (0.5.1-9)
[2018-09-17 03:09] [ALPM] removed libcdr (0.1.4-4)
[2018-09-17 03:09] [ALPM] removed libwpd (0.10.2-1)
[2018-09-17 03:09] [ALPM] removed libabw (0.1.2-1)
[2018-09-17 03:09] [ALPM] removed librevenge (0.0.4-2)
[2018-09-17 03:09] [ALPM] removed hyphen (2.8.8-2)
[2018-09-17 03:09] [ALPM] removed hunspell (1.6.2-1)
[2018-09-17 03:09] [ALPM] removed harfbuzz-icu (1.8.8-1)
[2018-09-17 03:09] [ALPM] removed clucene (2.3.3.4-10)
[2018-09-17 03:09] [ALPM] removed boost-libs (1.67.0-7)
[2018-09-17 03:09] [ALPM] transaction completed
[2018-09-17 03:09] [ALPM] running 'gtk-update-icon-cache.hook'...
[2018-09-17 03:09] [ALPM] running 'update-desktop-database.hook'...
[2018-09-17 03:09] [ALPM] running 'update-mime-database.hook'...
[2018-09-17 03:09] [PACMAN] Running 'pacman -Syyu'
[2018-09-17 03:09] [PACMAN] synchronizing package lists
[2018-09-17 03:10] [PACMAN] starting full system upgrade
[2018-09-17 03:19] [ALPM] transaction started
[2018-09-17 03:19] [ALPM] upgraded bzip2 (1.0.6-7 -> 1.0.6-8)
[2018-09-17 03:19] [ALPM] upgraded openssl (1.1.0.i-1 -> 1.1.1-1)
[2018-09-17 03:19] [ALPM] upgraded libidn (1.34-2 -> 1.35-1)
[2018-09-17 03:19] [ALPM] upgraded dhcpcd (7.0.7-1 -> 7.0.8-1)
[2018-09-17 03:19] [ALPM] upgraded double-conversion (3.1.0-1 -> 3.1.1-1)
[2018-09-17 03:19] [ALPM] upgraded git (2.18.0-1 -> 2.19.0-1)
[2018-09-17 03:19] [ALPM] upgraded libpng (1.6.34-2 -> 1.6.35-1)
[2018-09-17 03:19] [ALPM] upgraded harfbuzz (1.8.8-1 -> 1.9.0-1)
[2018-09-17 03:19] [ALPM] upgraded libinput (1.11.3-1 -> 1.12.0-1.1)
[2018-09-17 03:19] [ALPM] upgraded libpulse (12.2-2 -> 12.2-2.1)
[2018-09-17 03:19] [ALPM] upgraded libtool (2.4.6+42+gb88cebd5-1 -> 2.4.6+42+gb88cebd5-2)
[2018-09-17 03:19] [ALPM] upgraded libutf8proc (2.1.1-4 -> 2.2.0-1)
[2018-09-17 03:19] [ALPM] upgraded mesa (18.1.7-1 -> 18.2.0-1)
[2018-09-17 03:19] [ALPM] warning: /etc/nanorc installed as /etc/nanorc.pacnew
[2018-09-17 03:19] [ALPM] upgraded nano (2.9.8-1 -> 3.0-2)
[2018-09-17 03:19] [ALPM] upgraded ntfs-3g (2017.3.23-1 -> 2017.3.23-2)
[2018-09-17 03:19] [ALPM] upgraded sudo (1.8.25-1 -> 1.8.25.p1-1)
[2018-09-17 03:19] [ALPM] warning: directory permissions differ on /var/lib/syslog-ng/
filesystem: 700  package: 755
[2018-09-17 03:19] [ALPM] upgraded syslog-ng (3.15.1-4 -> 3.17.2-1)
[2018-09-17 03:19] [ALPM] upgraded tumbler (0.2.2-1 -> 0.2.3-1)
[2018-09-17 03:19] [ALPM] upgraded upower (0.99.8-1 -> 0.99.8-2)
[2018-09-17 03:19] [ALPM] upgraded vlc (3.0.4-1 -> 3.0.4-3)
[2018-09-17 03:19] [ALPM] transaction completed
[2018-09-17 03:19] [ALPM] running 'gtk-update-icon-cache.hook'...
[2018-09-17 03:19] [ALPM] running 'opensysusers.hook'...
[2018-09-17 03:19] [ALPM] running 'opentmpfiles.hook'...
[2018-09-17 03:19] [ALPM] running 'texinfo-install.hook'...
[2018-09-17 03:19] [ALPM] running 'udev-hwdb.hook'...
[2018-09-17 03:19] [ALPM] running 'udev-reload.hook'...
[2018-09-17 03:19] [ALPM] running 'update-desktop-database.hook'...
[2018-09-17 03:19] [ALPM] running 'update-vlc-plugin-cache.hook'...
[2018-09-17 03:34] [PACMAN] Running '/usr/bin/pacman -S --asdeps java-environment-common java-runtime-common libxslt'
[2018-09-17 03:34] [ALPM] transaction started
[2018-09-17 03:34] [ALPM] installed java-environment-common (3-1)
[2018-09-17 03:34] [ALPM] installed java-runtime-common (3-1)
[2018-09-17 03:34] [ALPM-SCRIPTLET] For the complete set of Java binaries to be available in your PATH,
[2018-09-17 03:34] [ALPM-SCRIPTLET] you need to re-login or source /etc/profile.d/jre.sh
[2018-09-17 03:34] [ALPM-SCRIPTLET] Please note that this package does not support forcing JAVA_HOME as former package java-common did
[2018-09-17 03:34] [ALPM] installed libxslt (1.1.32+3+g32c88216-1)
[2018-09-17 03:34] [ALPM] transaction completed
[2018-09-17 03:40] [PACMAN] Running '/usr/bin/pacman -U /home/me/artix/makepkg/jdk6/jdk6/jdk6-6u45-6-x86_64.pkg.tar.xz'
[2018-09-17 03:40] [ALPM] transaction started
[2018-09-17 03:40] [ALPM] installed jdk6 (6u45-6)
[2018-09-17 03:40] [ALPM-SCRIPTLET] (B[m[1m[34m::(B[m[1m[33m archlinux-java:(B[m[1m JDK ('java-6-jdk') set as default Java environment.(B[m
[2018-09-17 03:40] [ALPM] transaction completed
[2018-09-17 03:40] [ALPM] running 'gtk-update-icon-cache.hook'...
[2018-09-17 03:40] [ALPM] running 'update-desktop-database.hook'...
[2018-09-17 03:40] [ALPM] running 'update-mime-database.hook'...
Title: Re: Long pause at "Initializing random number generator"
Post by: ####### on 17 September 2018, 21:29:31
The problem is openssl:
[2018-09-17 03:19] [ALPM] upgraded openssl (1.1.0.i-1 -> 1.1.1-1)
$ cd /var/cache/pacman/pkg
$ sudo pacman -U openssl-1.1.1-1-x86_64.pkg.tar.xz
Long hang at boot, over a minute.
$ sudo pacman -U openssl-1.1.0.i-1-x86_64.pkg.tar.xz
Normal boot.

The old version included an 'i' so was probably more 'intelligent'.  ;D
Title: Re: Long pause at "Initializing random number generator"
Post by: ####### on 17 September 2018, 21:44:57
That's still the latest version available today of openssl which causes the problem.
Another IgnorePkg! The 4.18.9 kernel should fix the C2D boothang though, when it arrives in due course.
/etc/pacman.conf
IgnorePkg   = linux linux-api-headers openssl

Title: Re: Long pause at "Initializing random number generator"
Post by: mrbrklyn on 20 September 2018, 09:21:55
facinating.  What happened to haved?
Title: Re: Long pause at "Initializing random number generator"
Post by: ####### on 20 September 2018, 22:31:20
It's not installed, but it wasn't previously:

$ cat /proc/sys/kernel/random/entropy_avail
3802

https://wiki.archlinux.org/index.php/Haveged
According to that page it is not required as the number is well over 1000. (I don't know much about all that though, I found that page just now.)

Pre - existing knowledge : haveged - annoying thing that makes you wait while booting the Artix USB...  ;)
Title: Re: Long pause at "Initializing random number generator"
Post by: fungalnet on 21 September 2018, 09:14:51
The problem is openssl:
[2018-09-17 03:19] [ALPM] upgraded openssl (1.1.0.i-1 -> 1.1.1-1)
$ cd /var/cache/pacman/pkg
$ sudo pacman -U openssl-1.1.1-1-x86_64.pkg.tar.xz
Long hang at boot, over a minute.
$ sudo pacman -U openssl-1.1.0.i-1-x86_64.pkg.tar.xz
Normal boot.

The old version included an 'i' so was probably more 'intelligent'.  ;D


I tried this and among other things pacman died as libcurl and libcrypto were not compatible.
How did I get out of the mess?  Backup 2nd installation (1-2 delay in updating from primary cache) , copy paste incompatible libraries to get pacman running again.

Did anyone else try it?
Title: Re: Long pause at "Initializing random number generator"
Post by: ####### on 21 September 2018, 16:01:00
I'm fully updated, my Pacman is still working. I'm using the stable repos, not gremlins.
Other than holding the kernel due to the C2D issues, I'm doing nothing special otherwise. libcrypto is a part of openssl, so I don't see how you managed to get an incompatible version unless the  openssl downgrade didn't work somehow.
I do have 2 similar packages installed, openssl and openssl-1.0, perhaps you got the wrong one.
libressl is an alternative to openssl, available in the AUR, but I have no idea what complications it might bring. I have considered it as an option for the future (hopefully the openssl issues will be resolved in time) or perhaps installing haveged as Mr Brooklyn suggested, or some other workaround, to do the random number initialization in some other way.

Code: [Select]
:: Starting full system upgrade...
warning: linux: ignoring package upgrade (4.17.14.artix1-1 => 4.18.8.artix1-1)
warning: openssl: ignoring package upgrade (1.1.0.i-1 => 1.1.1-1)
 there is nothing to do

$ pacman -Qo /usr/lib/libcrypto.so
/usr/lib/libcrypto.so is owned by openssl 1.1.0.i-1

$ pacman -Qo /usr/lib/libcurl.so
/usr/lib/libcurl.so is owned by curl 7.61.1-1

system/openssl 1.1.1-1 [installed: 1.1.0.i-1]
    The Open Source toolkit for Secure Sockets Layer and Transport Layer Security
system/openssl-1.0 1.0.2.p-1 [installed]
    The Open Source toolkit for Secure Sockets Layer and Transport Layer Security
Title: Re: Long pause at "Initializing random number generator"
Post by: mrbrklyn on 22 September 2018, 02:51:23

Pre - existing knowledge : haveged - annoying thing that makes you wait while booting the Artix USB...  ;)


indeed that is correct
Title: Re: Long pause at "Initializing random number generator"
Post by: mrbrklyn on 22 September 2018, 02:53:38

I tried this and among other things pacman died as libcurl and libcrypto were not compatible.
How did I get out of the mess?  Backup 2nd installation (1-2 delay in updating from primary cache) , copy paste incompatible libraries to get pacman running again.

Did anyone else try it?


install package by package fr all the depenent packages
Title: Re: Long pause at "Initializing random number generator"
Post by: ####### on 22 September 2018, 04:25:36
openssl says this :
Required By     : coreutils  curl  git  iputils  ldns  libarchive  libsasl  libssh2  openssh  python  python2  s-nail  testdisk
Optional For    : apr-util
while openssl-1.0 says this :
Required By     : wpa_supplicant

So openssl-1.0 isn't relevant after all, it's only there to supply an older version of the same package for wpa_supplicant.
Title: Re: Long pause at "Initializing random number generator"
Post by: mrbrklyn on 22 September 2018, 11:32:12
Why are you doing that.  You have a conflict between libcurl and libcrypto?  The hardest thing about helping people in these forums is that folks don't listen to you, then they do something different and then they don't communicate what is happening.  We left off this conversation with a pacman conflict with libcurl and libcrypto.

Install the libcurb and all the  dependencies one by one
Title: Re: Long pause at "Initializing random number generator"
Post by: mrbrklyn on 22 September 2018, 11:42:18
The problem is openssl:
[2018-09-17 03:19] [ALPM] upgraded openssl (1.1.0.i-1 -> 1.1.1-1)


How did you come to that conclusion?
Title: Re: Long pause at "Initializing random number generator"
Post by: mrbrklyn on 22 September 2018, 11:44:29
That's still the latest version available today of openssl which causes the problem.
Another IgnorePkg! The 4.18.9 kernel should fix the C2D boothang though, when it arrives in due course.
/etc/pacman.conf
IgnorePkg   = linux linux-api-headers openssl




BTW - you do not want openssl in the ignore of pacman because it is a highly explosed part of your system with regular security updates.
Title: Re: Long pause at "Initializing random number generator"
Post by: mrbrklyn on 22 September 2018, 12:22:52
FWIW - I just did the complete upgrade on my workstation and no troubles with boot times and entropy.  OTOH I don't have sshd as a start up dameon
Title: Re: Long pause at "Initializing random number generator"
Post by: ####### on 22 September 2018, 16:34:10
It's fungalnet having lib compat issues, not me, but I don't know how, or with what repos, as I'm not getting those problems. I found openssl to be the problem by downgrading packages from the upgrade one by one, openssl was the last one I came to. I'm only ignoring it until a newer version comes along to try, like the kernel, the next release should fix the problems with that and I'll un-ignore it. That means I can still update the rest of my system in the meanwhile, which is better than just not updating. Also I need to do this to add and remove other software easily when required.
The boot seems to hang for me at this point:
/etc/init.d/urandom
                ebegin "Initializing random number generator"
                cat "$urandom_seed" > /dev/urandom
Well that's the last boot message onscreen before the hang anyway. I don't have sshd either.
Title: Re: Long pause at "Initializing random number generator"
Post by: mrbrklyn on 22 September 2018, 20:27:54
/dev/urandom has two different implentations a BSD one and a Linux one where the BSD one can block as it loads and the Linux impementation in theory can not.  I've seen booting slowdown with /dev/urandam building random bits from the physcial feedback of the hardware.  It is designed to do that and the security of cryptography for which openssl might be only one client, depends on it functioning correctly.

It seems wrongheaded to not update openssh and openssl because /dev/urandom is doing what it is supposed to do.  It is held up for 20 minute, then there might be a problem.

If you wan to really root this out you need to find all the packages that own /dev/urandom but installing them and uninstalling packlages willynillie to see how it affects the boot is not as rational as it seems, especially since you are likely to make an error and mess something up unintentionally, or deal with packages that step on each other in unexpected ways.
Title: Re: Long pause at "Initializing random number generator"
Post by: ####### on 03 October 2018, 21:26:54
Keeping openssl at the previous version breaks pacman in the stable repo now, so look out for that:
IgnorePkg   = openssl
$ sudo pacman -Syyu
pacman: /usr/lib/libssl.so.1.1: version `OPENSSL_1_1_1' not found (required by /usr/lib/libcurl.so.4)
Title: Re: Long pause at "Initializing random number generator"
Post by: ####### on 04 October 2018, 05:45:26
Installing the newer openssl fixed pacman, but openssl still causes the long 1m20sec boot hang.
Code: [Select]
rm'ing that openssl lib breaks sudo, so I mounted the artix / from elsewhere to have a separate shell to fix this.

openssl has a single conf file, back this up if it's been modified as it's about to get overwritten :

/etc/ssl/openssl.cnf

$ sudo mount /dev/sda? /mnt
$ sudo mkdir /tmp/oldssl
$ sudo tar -xvJf /mnt/var/cache/pacman/pkg/openssl-1.1.0.i-1-x86_64.pkg.tar.xz -C /tmp/oldssl | tee -a old-openssl-pkg-file-list.txt
Remove .files from list:
$ sed '/^\./ d' < old-openssl-pkg-file-list.txt > output-old-openssl-pkg-file-list.txt
$ mkdir latest-openssl
$ tar -xvJf /mnt/var/cache/pacman/pkg/openssl-1.1.1-1-x86_64.pkg.tar.xz -C latest-openssl/
Next command is inefficient & slow to complete:
$ for i in $(cat output-old-openssl-pkg-file-list.txt); do sudo rm /mnt/$i; done
$ sudo cp -r latest-openssl/* /mnt/

Then boot into artix and (re)install the latest openssl with pacman to get the database correct.
$ sudo pacman -U --overwrite=* /var/cache/pacman/pkg/openssl-1.1.1-1-x86_64.pkg.tar.xz
Or you could probably use pacman remotely from an iso etc. instead of this method.

Title: Re: Long pause at "Initializing random number generator"
Post by: ####### on 05 October 2018, 03:26:48
Installing haveged, haveged-openrc and enabling it did not help. Also it does not always hang at the random number generator line, so that is only a coincidence. Perhaps as mrbrklyn suggests, this isn't openssl, but something that depends on it and it doesn't work with the new version. There is nothing logged by syslog-ng as the hang occurs before it starts. I tried using ALT F* but there are no logins on the other ttys at this point, so there's no shell to see what's running during the hang either.
Title: Re: Long pause at "Initializing random number generator"
Post by: ####### on 05 October 2018, 21:13:50
 ;)  :D  ;D
I've got rid of the boot hang by disabling a bunch of non-essential services, then I re-enabled them to find out which one it was:
Code: [Select]
$ sudo rc-update delete syslog-ng
 * service syslog-ng removed from runlevel default
The winner was syslog-ng, that's what causes the long pause with the latest openssl version. There was a kind of a clue in the boot logs too, as they show syslog-ng being started fairly early during boot, before the hang, but the first time stamps in everything.log are after the long pause.
I also found a totally useless service I had enabled - netmount, I have no netmounts. So there's another useful find today.
Title: Re: Long pause at "Initializing random number generator"
Post by: mrbrklyn on 05 October 2018, 23:24:55
Because logging is not important?
Title: Re: Long pause at "Initializing random number generator"
Post by: mrbrklyn on 06 October 2018, 01:39:04
;)  :D  ;D
I've got rid of the boot hang by disabling a bunch of non-essential services, then I re-enabled them to find out which one it was:
Code: [Select]
$ sudo rc-update delete syslog-ng
 * service syslog-ng removed from runlevel default
The winner was syslog-ng, that's what causes the long pause with the latest openssl version. There was a kind of a clue in the boot logs too, as they show syslog-ng being started fairly early during boot, before the hang, but the first time stamps in everything.log are after the long pause.
I also found a totally useless service I had enabled - netmount, I have no netmounts. So there's another useful find today.


logging is an essential service
Title: Re: Long pause at "Initializing random number generator"
Post by: SGOrava on 06 October 2018, 10:22:29
I advice you to use some logging service.
Title: Re: Long pause at "Initializing random number generator"
Post by: ####### on 06 October 2018, 15:59:14
I am hoping removing the syslog-ng service might also resolve the random boot failures, they became much more frequent with the incompatible syslog-ng / openssl versions that caused the hang. I have had none since, but it will take a long while to confirm this. Personally I have dmesg, xorg, wtmp,  rc.log, and that will suffice for a while, it's a much better solution than ignoring openssl. Disabling the syslog-ng service means if a newer version is installed as an update I will see that, and can try it again easily. But if you must have logging then try another logger like metalog, rsyslog from the AUR, or socklog with runit.
There is no syslog in the base install - it's not essential to system operation, just a useful source of information on occasion.
I said the 'netmount' service was useless (to me personally, after I read the init script carefully) not syslog, anyway.  ;D
Title: Re: Long pause at "Initializing random number generator"
Post by: mrbrklyn on 07 October 2018, 03:25:21
To anyone who might ever read this thread in the future, NEVER run a system without system logging