From 3f06aa65ae56a78ba810d1b10d064be5c5100ed5 Mon Sep 17 00:00:00 2001 From: "Austin S. Hemmelgarn" Date: Fri, 14 Jan 2022 10:36:09 -0500 Subject: Better handle creation of UUID for claiming. (#11974) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Properly check for the availability of `uuidgen` before blindly using it. * Fall back on Linux to the kernel-provided interface for generating UUIDs if `uuidgen` is not present. * Provide a more useful error message if we can’t use either option. --- claim/netdata-claim.sh.in | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'claim/netdata-claim.sh.in') diff --git a/claim/netdata-claim.sh.in b/claim/netdata-claim.sh.in index 8f58cfe3b2..f2120ae9cd 100755 --- a/claim/netdata-claim.sh.in +++ b/claim/netdata-claim.sh.in @@ -151,7 +151,14 @@ NETDATA_USER=$(get_config_value netdata global "run as user") gen_id() { local id - id="$(uuidgen)" + if command -v uuidgen > /dev/null 2>&1; then + id="$(uuidgen)" + elif [ -r /proc/sys/kernel/random/uuid ]; then + id="$(cat /proc/sys/kernel/random/uuid)" + else + echo >&2 "Unable to generate machine ID." + exit 18 + fi if [ "${id}" = "8a795b0c-2311-11e6-8563-000c295076a6" ] || [ "${id}" = "4aed1458-1c3e-11e6-a53f-000c290fc8f5" ]; then gen_id -- cgit v1.2.3