summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xscripts/live-bottom/06hostname15
1 files changed, 13 insertions, 2 deletions
diff --git a/scripts/live-bottom/06hostname b/scripts/live-bottom/06hostname
index 29a080f..75ea801 100755
--- a/scripts/live-bottom/06hostname
+++ b/scripts/live-bottom/06hostname
@@ -31,9 +31,19 @@ log_begin_msg "Setting hostname"
# live-initramfs script
-echo "${HOSTNAME}" > /root/etc/hostname
+# Change hostname only if it is not set
+if [ ! -f /root/etc/hostname ] || grep -q localhost\.localdomain /root/etc/hostname
+then
+ echo "${HOSTNAME}" > /root/etc/hostname
+else
+ HOSTNAME="$(cat /root/etc/hostname)"
+ really_export HOSTNAME
+fi
-cat >> /root/etc/hosts << EOF
+# Create /etc/hosts only if it is not present or empty
+if [ ! -f /root/etc/hosts ] || [ "$(/root/usr/bin/stat -c %s root/etc/hosts)" == "0" ]
+then
+ cat > /root/etc/hosts << EOF
127.0.0.1 localhost
127.0.1.1 ${HOSTNAME}
@@ -45,6 +55,7 @@ ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
EOF
+fi
hostname "${HOSTNAME}"