summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xclient/scripts/linux10
1 files changed, 8 insertions, 2 deletions
diff --git a/client/scripts/linux b/client/scripts/linux
index c4e51f6d..fe4da445 100755
--- a/client/scripts/linux
+++ b/client/scripts/linux
@@ -113,7 +113,7 @@ set_hostname() {
local current_hostname
if [ -n "$new_host_name" ]; then
- current_hostname=$(hostname)
+ current_hostname=$(uname -n)
# current host name is empty, '(none)' or 'localhost' or differs from new one from DHCP
if [ -z "$current_hostname" ] ||
@@ -121,7 +121,13 @@ set_hostname() {
[ "$current_hostname" = 'localhost' ] ||
[ "$current_hostname" = "$old_host_name" ]; then
if [ "$new_host_name" != "$old_host_name" ]; then
- hostname "$new_host_name"
+ if command -v hostnamectl >/dev/null; then
+ hostnamectl set-hostname --transient "$new_host_name"
+ elif command -v hostname >/dev/null; then
+ hostname "$new_host_name"
+ else
+ sysctl -w kernel/hostname="$new_host_name"
+ fi
fi
fi
fi