Unter Ubuntu 16.04 LTS Hostnamen und Mailnamen permanent setzen

Heute wollen wir den Hostnamen unseres VPS so setzen, dass dieser nach einem Neustart nicht zurückgesetzt wird. Einige Anbieter setzen den Hostnamen nach einem Neustart zurück, also umgehen wir dies, wenn notwendig mit einem Skript, das die entsprechenden Anpassungen für uns beim Booten vornimmt.

Zuerst müssen wir eine Datei namens set_vps_hostname.service in /etc/systemd/system/ erstellen:

sudo nano /etc/systemd/system/set_vps_hostname.service

Inhalt:

[Unit]
Description=Setze meinen Hostnamen beim Booten
Before=rsyslog.service

[Service]
Type=oneshot
ExecStart=/usr/local/bin/set_vps_hostname

[Install]
WantedBy=multi-user.target

Jetzt müssen wir das Skript set_vps_hostname erstellen (Hostnamen bitte anpassen):

sudo nano /usr/local/bin/set_vps_hostname

Inhalt:

#!/bin/bash
HOSTNAME=www.markus-blog.de # <---hier Hostnamen anpassen
[ -f /etc/hostname ] && echo $HOSTNAME > /etc/hostname
[ -f /etc/HOSTNAME ] && echo $HOSTNAME > /etc/HOSTNAME
[ -f /etc/mailname ] && echo $HOSTNAME > /etc/mailname
[ -f /etc/sysconfig/network ] && sed -i.hebackup s/HOSTNAME=".*"/HOSTNAME="$HOSTNAME"/ /etc/sysconfig/network
/bin/hostname $HOSTNAME
[ -f /etc/my.resolv.conf ] && cp /etc/my.resolv.conf /etc/resolv.conf
[ -f /etc/my.hosts ] && cp /etc/my.hosts /etc/hosts
exit 0

und es ausführbar machen:

sudo chmod +x /usr/local/bin/set_vps_hostname

Wir setzen den Hostnamen ebenfalls in /etc/hosts:

sudo nano /etc/hosts

dort ändern wir den alten Hostnamen auf unseren neuen und kopieren die Datei nach /etc/my.hosts:

sudo cp /etc/hosts /etc/my.hosts

wenn wir unsere eigenen Nameserver nutzen, passen wir auch die /etc/resolv.conf an:

sudo nano /etc/resolv.conf

und kopieren diese nach /etc/my.resolv.conf:

sudo cp /etc/resolv.conf /etc/my.resolv.conf

Jetzt müssen wir unseren Dienst aktivieren und einen Reboot durchführen, um den Hostnamen zu setzen (bitte beachten, dass dieser Befehl den VPS neu startet):

sudo systemctl daemon-reload && sudo systemctl enable set_vps_hostname.service && sudo systemctl start set_vps_hostname.service && sudo systemctl restart rsyslog && sudo reboot

Nach dem Reboot überprüfen wir den Host- und Mailname des VPS:

cat /etc/hostname
cat /etc/mailname

Das war es für heute! Ein schönes Wochenende. 🙂

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.