Looks like a problem with random number generation (getrandom() initialization failed)
This post from stack overflow explains why and provides a possible solution:
The Random Number generator needs to get to a certain state of entropy before it will “work”. This is from the archlinux wiki for rng-tools (the “solution” in the above SO post):
@TrystanLea, @glyn.hudson Is rng-tools included on the latest (or previous) SD images? If not, perhaps it should be?
Thanks @Greebo, checked here and it is not installed. Will make a note to include it and review with @glyn.hudson how it could be added as part of the emonSD update process.
It escapes me why this is not included in the Raspbian images by default. I’ve done some reading on this topic this morning (so I am by no means an expert) and it seems that all Pi’s have a hardware RNG (random number generator) but it is not actually used unless you install the rng-tools package.
Although I have never experienced the issue raised here, I use SSH a lot and apparently, the existing (non-hw) method of gathering entropy is very slow and on Linux insufficient entropy is non-blocking, it just means keys are created at boot with a low amount of entropy, ie the security is lower as the generated keys are less random.
There is a test for the speed, here is 2 tests on a Pi3 with the installation of rng-tools in between
pi@raspberrypi:~ $ dd if=/dev/random of=/dev/null bs=1024 count=1 iflag=fullblock
1+0 records in
1+0 records out
1024 bytes (1.0 kB, 1.0 KiB) copied, 1125.72 s, 0.0 kB/s
pi@raspberrypi:~ $ sudo apt-get install rng-tools
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
rng-tools
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 48.7 kB of archives.
After this operation, 160 kB of additional disk space will be used.
Get:1 http://raspbian.mirror.uk.sargasso.net/raspbian stretch/main armhf rng-tools armhf 2-unofficial-mt.14-1 [48.7 kB]
Fetched 48.7 kB in 0s (80.5 kB/s)
Selecting previously unselected package rng-tools.
(Reading database ... 80765 files and directories currently installed.)
Preparing to unpack .../rng-tools_2-unofficial-mt.14-1_armhf.deb ...
Unpacking rng-tools (2-unofficial-mt.14-1) ...
Setting up rng-tools (2-unofficial-mt.14-1) ...
Processing triggers for systemd (232-25+deb9u7) ...
Processing triggers for man-db (2.7.6.1-2) ...
pi@raspberrypi:~ $ dd if=/dev/random of=/dev/null bs=1024 count=1 iflag=fullblock
1+0 records in
1+0 records out
1024 bytes (1.0 kB, 1.0 KiB) copied, 0.00347737 s, 294 kB/s
pi@raspberrypi:~ $
1125.72 secs reduced to 0.00347737 secs, this means all keys etc would be generated with the full quota of entropy, increasing “randomness” and thus improving security.
Given it is just a 47kB package and the Raspberry Pi’s are not the most powerful machines out there, one has to wonder why it’s not included every Raspbian image.
Until I know better I’ll be adding this to my existing setups and to my standard image setup script so all my future images get it automatically. Thanks @Greebo.
Hi, my emonpi has been running nicely for over three years now, it only goes wrong when I fiddle. Then last week I had to power it down to decorate and when I turned it back on it refused to upload anything to emoncms.org
I updated all and eventually created a new emonpi card and started fresh with fully up to date install, again all set up and ran locally fine but no uploads. emoncms.log showed the same error as above, installing rng-tools as above worked, has it been dropped from the latest updates? I’m wondering if a recent update hasn’t taken effect until I unplugged?
All is good now, so thanks for all your hard work