Normalerweise füge ich in /etc/hosts und in /etc/hostname die erforderlichen Einträge für den Hostnamen ein und gut ist. Nicht aber so bei einer neuen Jiffybox mit Debian Squeeze. Hier bleibt die Maschine hartnäckig bei j0000.servers.jiffybox.net und lässt sich von den Betriebssystem-typischen Eingriffen des Administrators nicht beirren.

Gut, mit einem Kommandozeilen-Aufruf von hostname mein.server.tld ließe sich der Wert bis zum nächsten Reboot festlegen. Aber ich bin mir sicher, dass diese Vorgehensweise bei einem künftigen Neustart vergessen wird und mögliche Probleme nicht sofort auffallen.

Meine Suche bei Google nach

jiffybox hostname debian 6

lieferte mir einen interessanten Hinweis von Skydiver im Jiffybox-Forum, den ich befolgt habe und somit mein Problem auch beheben konnte. Eine weitere Lösungsmöglichkeit wurde ebenfalls in diesem Foren-Posting beschrieben. Das Entfernen von isc-dhclient und ein Umstieg auf dhcpcd als DHCP Client löst das Problem wohl auch.

Ich möchte die Maßnahmen in diesem Artikel nochmals zusammenfassen und auf die notwendigen Schritte kurz eingehen.
Für meine Vorgehensweise nutze ich beispielhaft als Hostname mein.server.tld mit der IP-Adresse 203.0.113.23. Mein Lieblingseditor ist der Midnight Commander. Wenn ihr einen anderen bevorzugt, dann nutzt diesen und ersetzt mcedit durch den entsprechenden Aufruf. Für alle Anpassungen sind root-Rechte notwendig.

Hostname permanent festlegen

Als erstes die eigene IP-Adresse und den Hostnamen in der hosts-Datei nachtragen.

1. mcedit /etc/hosts

127.0.0.1      localhost.localdomain localhost
::1            localhost6.localdomain6 localhost6
...
ff02::1        ip6-allnodes
ff02::2        ip6-allrouters

203.0.113.23   mein.server.tld mein

Die Datei /etc/hostname anlegen falls diese nicht vorhanden sein sollte.

2. mcedit /etc/hostname

mein

In der dhclient.conf die Anforderung von „host-name“ entfernen.

3. mcedit /etc/dhcp/dhclient.conf

request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, domain-search,
        netbios-name-servers, netbios-scope, interface-mtu,
        rfc3442-classless-static-routes;

Da bislang keinerlei Dienste erreichbar sein mussten, habe ich die Jiffybox im Anschluss einfach neu gestartet und nach dem Reboot den korrekten Hostname angezeigt bekommen.

shutdown -rf now

Sicherlich genügt es

/etc/init.d/hostname.sh

auszuführen, um den Hostname zu aktualisieren. Bei einem künftigen Neustart der Jiffybox, wird „host-name“ nun nicht mehr über den DHCP-Request angefordert, sondern der lokal hinterlegte verwendet. Was Domainfactory gegenüber Debian Lenny geändert hat, kann ich nicht sagen – hier gab es diese Probleme nicht. Wie es sich bei Debian Wheezy verhält konnte ich bislang noch nicht testen, werde meine künftigen Erfahrungen aber hier im Blog veröffentlichen.