Systemanpassungen nach Servertausch mit Übernahme der Festplatten

Last change on 2023-12-28 • Created on 2020-03-25 • ID: RO-CBCEE

Einführung

Wenn Ihr Server getauscht werden muss und die Festplatten übernommen werden können, müssen Sie vermutlich Ihre Netzwerkkonfiguration anpassen. Auf Grund der weiten Verbreitung vom predictable naming scheme in modernen Linux Distributionen ist es möglich, dass sich die Bezeichnung der Netzwerkschnittstelle im System ändert und angepasst werden muss. Bei älteren Linux Systemen kommen udev rules zum Einsatz, welche die Nummerierung der Netzwerkschnittstellen anhand der physischen MAC Adressen durchführen.

Auf der rechten Seite im Inhaltsverzeichnis finden Sie eine Übersicht finden Sie Linux Distributionen die wir aktuell unterstützen oder in der Vergangenheit unterstützt haben. Dieser Artikel behandelt nur Standardinstallationen die über den Robot oder das installimage Skript durchgeführt wurden.


Debian 9, Debian 10, Debian 11, Debian 12

Pfad der Netzwerk Konfiguration

/etc/network/interfaces

Inhalt der Netzwerk Konfiguration

### Hetzner Online GmbH installimage

source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback
iface lo inet6 loopback

auto enp0s31f6
iface enp0s31f6 inet static
  address 203.0.113.27
  netmask 255.255.255.248
  gateway 203.0.113.25
  # route 203.0.113.24/29 via 203.0.113.25
  up route add -net 203.0.113.24 netmask 255.255.255.248 gw 203.0.113.25 dev enp0s31f6

iface enp0s31f6 inet6 static
  address 2001:db8:5678::2
  netmask 64
  gateway fe80::1

Nötige Änderungen nach einem Servertausch

  • starten Sie den Server ins Hetzner Rescue System
  • ermitteln Sie die aktuelle Interface Bezeichnung mit dem Befehl predict-check
  • mounten Sie Ihre root-partition auf den Ordner /mnt Tutorial
  • öffnen Sie die Netzwerk Konfiguration mit einem Textbearbeitungsprogramm nano /mnt/etc/network/interfaces
  • ersetzen Sie den Interface Namen mit dem Neuen in allen Vorkommem
  • speichern und schließen Sie die Datei mit Strg+x, dann y und dann Enter
  • starten Sie den Server neu mit dem Befehl reboot

Debian 8

Pfad der Netzwerk Konfiguration

/etc/network/interfaces

Inhalt der Netzwerk Konfiguration

root@Debian-811-jessie-64-minimal ~ # cat /etc/network/interfaces
### Hetzner Online GmbH installimage

source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback
iface lo inet6 loopback

auto eth0
iface eth0 inet static
  address 203.0.113.27
  netmask 255.255.255.248
  gateway 203.0.113.25
  # route 203.0.113.24/29 via 203.0.113.25
  up route add -net 203.0.113.24 netmask 255.255.255.248 gw 203.0.113.25 dev eth0

iface eth0 inet6 static
  address 2001:db8:5678::2
  netmask 64
  gateway fe80::1

Nötige Änderungen nach einem Servertausch

Debian 8 nutzt standardmäßig nicht das predictable naming scheme. Stattdessen werden die Netzwerk Interfaces von udev nach Ihrer MAC Adresse benannt.

  • starten Sie den Server ins Hetzner Rescue System
  • Ermitteln Sie die neue MAC Adresse mit ifconfig eth0 | grep -o -E ..:..:..:..:..:..
  • mounten Sie Ihre root-partition auf den Ordner /mnt Tutorial
  • öffnen Sie die udev Konfiguration mit einem Textbearbeitungsprogramm nano /mnt/etc/udev/rules.d/70-persistent-net.rules
  • Ersetzen Sie die MAC Adresse mit der Neuen, die Sie vorher ermittelt haben
  • speichern und schließen Sie die Datei mit Strg+x, dann y und dann Enter
  • starten Sie den Server neu mit dem Befehl reboot

die udev Regeln sehen in etwa so aus::

root@Debian-811-jessie-64-minimal ~ # cat /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.

# PCI device 0x8086:0x15b7 (e1000e)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="39:15:42:47:34:44", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

Alternativ können Sie die Datei mit der udev Regel einfach entfernen, da sie dann beim Boot neu generiert wird.


Ubuntu 18.04 LTS, 20.04 LTS and Ubuntu 22.04 LTS

Pfad der Netzwerk Konfiguration

/etc/netplan/01-netcfg.yaml

Inhalt der Netzwerk Konfiguration

### Hetzner Online GmbH installimage
network:
  version: 2
  renderer: networkd
  ethernets:
    enp7s0:
      addresses:
        - 203.0.113.27/32
        - 2001:db8:5678::2/64
      routes:
        - on-link: true
          to: 0.0.0.0/0
          via: 203.0.113.25
        - to: default
          via: fe80::1
      nameservers:
        addresses:
          - 185.12.64.2
          - 2a01:4ff:ff00::add:1
          - 185.12.64.1
          - 2a01:4ff:ff00::add:2

Nötige Änderungen nach einem Servertausch

  • starten Sie den Server ins Hetzner Rescue System
  • ermitteln Sie die aktuelle Interface Bezeichnung mit dem Befehl predict-check
  • mounten Sie Ihre root-partition auf den Ordner /mnt Tutorial
  • öffnen Sie die Netzwerk Konfiguration mit einem Textbearbeitungsprogramm nano /mnt/etc/netplan/01-netcfg.yaml
  • ersetzen Sie den Interface Namen mit dem Neuen in allen Vorkommem
  • speichern und schließen Sie die Datei mit Strg+x, dann y und dann Enter
  • starten Sie den Server neu mit dem Befehl reboot

Ubuntu 16.04

Pfad der Netzwerk Konfiguration

/etc/network/interfaces

Inhalt der Netzwerk Konfiguration

root@Ubuntu-1604-xenial-64-minimal ~ # cat /etc/network/interfaces
### Hetzner Online GmbH installimage

source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback
iface lo inet6 loopback

auto eth0
iface eth0 inet static
  address 203.0.113.27
  netmask 255.255.255.248
  gateway 203.0.113.25
  # route 203.0.113.24/29 via 203.0.113.25
  up route add -net 203.0.113.24 netmask 255.255.255.248 gw 203.0.113.25 dev eth0

iface eth0 inet6 static
  address 2001:db8:5678::2
  netmask 64
  gateway fe80::1

Nötige Änderungen nach einem Servertausch

Ubuntu 16.04 does not use the predictable naming scheme by default. Instead network interfaces are named by udev according to their mac address.

  • starten Sie den Server ins Hetzner Rescue System
  • Ermitteln Sie die neue MAC Adresse mit ifconfig eth0 | grep -o -E ..:..:..:..:..:..
  • mounten Sie Ihre root-partition auf den Ordner /mnt Tutorial
  • öffnen Sie die udev Konfiguration mit einem Textbearbeitungsprogramm nano /mnt/etc/udev/rules.d/80-net-setup-link.rules
  • Ersetzen Sie die MAC Adresse mit der Neuen, die Sie vorher ermittelt haben
  • speichern und schließen Sie die Datei mit Strg+x, dann y und dann Enter
  • starten Sie den Server neu mit dem Befehl reboot

die udev Regeln sehen in etwa so aus::

root@Ubuntu-1604-xenial-64-minimal ~ # cat /etc/udev/rules.d/80-net-setup-link.rules 
# device: eth0
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="39:15:42:47:34:44", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

CentOS 7.9

Pfad der Netzwerk Konfiguration

/etc/sysconfig/network-scripts/ifcfg-enp0s31f6 !! Der Dateiname ermittelt sich aus der (alten) Interface Bezeichnung !!

Inhalt der Netzwerk Konfiguration

### Hetzner Online GmbH installimage

DEVICE=enp0s31f6
ONBOOT=yes
BOOTPROTO=none
IPADDR=203.0.113.27
PREFIX=32
SCOPE="peer 203.0.113.25"
DEFROUTE=yes

IPV6INIT=yes
IPV6ADDR=2001:db8:5678::2/64
IPV6_DEFAULTGW=fe80::1
IPV6_DEFROUTE=yes
IPV6_DEFAULTDEV=enp0s31f6

Nötige Änderungen nach einem Servertausch

  • starten Sie den Server ins Hetzner Rescue System
  • ermitteln Sie die aktuelle Interface Bezeichnung mit dem Befehl predict-check
  • mounten Sie Ihre root-partition auf den Ordner /mnt Tutorial
  • öffnen Sie die Netzwerk Konfiguration mit einem Textbearbeitungsprogramm nano /mnt/etc/sysconfig/network-scripts/ifcfg-enp0s31f6

!! Der Dateiname ermittelt sich aus der (alten) Interface Bezeichnung !!

  • ersetzen Sie den Interface Namen mit dem Neuen in allen Vorkommem
  • speichern und schließen Sie die Datei mit Strg+x, dann y und dann Enter
  • nennen Sie die alte Datei um, damit sie den neuen Interface Namen trägt

mv /mnt/etc/sysconfig/network-scripts/ifcfg-enp0s31f6 /mnt/etc/sysconfig/network-scripts/ifcfg-enp7s0 (ersetzen Sie die Interface Namen entsprechend)

  • starten Sie den Server neu mit dem Befehl reboot

Alma Linux 8.7, Rocky Linux 8.7, CentOS Stream

Pfad der Netzwerk Konfiguration

/etc/sysconfig/network-scripts/ifcfg-enp0s31f6 !! Der Dateiname ermittelt sich aus der (alten) Interface Bezeichnung !!

Inhalt der Netzwerk Konfiguration

[root@CentOS-85-64-minimal ~]# ls /etc/sysconfig/network-scripts/
ifcfg-enp0s31f6
mit dem Inhalt:
### Hetzner Online GmbH installimage

DEVICE=enp0s31f6
ONBOOT=yes
BOOTPROTO=none
IPADDR=203.0.113.27
PREFIX=32
GATEWAY=203.0.113.25
DEFROUTE=yes

IPV6INIT=yes
IPV6ADDR=2001:db8:5678::2/64
IPV6_DEFAULTGW=fe80::1
IPV6_DEFROUTE=yes

Nötige Änderungen nach einem Servertausch

  • starten Sie den Server ins Hetzner Rescue System
  • ermitteln Sie die aktuelle Interface Bezeichnung mit dem Befehl predict-check
  • mounten Sie Ihre root-partition auf den Ordner /mnt Tutorial
  • öffnen Sie die Netzwerk Konfiguration mit einem Textbearbeitungsprogramm nano /mnt/etc/sysconfig/network-scripts/ifcfg-enp0s31f6

!! Der Dateiname ermittelt sich aus der (alten) Interface Bezeichnung !!

  • ersetzen Sie den Interface Namen mit dem Neuen in allen Vorkommem
  • speichern und schließen Sie die Datei mit Strg+x, dann y und dann Enter
  • nennen Sie die alte Datei um, damit sie den neuen Interface Namen trägt

mv /mnt/etc/sysconfig/network-scripts/ifcfg-enp0s31f6 /mnt/etc/sysconfig/network-scripts/ifcfg-enp7s0 (ersetzen Sie die Interface Namen entsprechend)

  • starten Sie den Server neu mit dem Befehl reboot

Arch Linux

Pfad der Netzwerk Konfiguration

/etc/systemd/network/10-enp0s31f6.network !! Der Dateiname ermittelt sich aus der (alten) Interface Bezeichnung !!

Inhalt der Netzwerk Konfiguration

[root@archlinux-latest-64-minimal ~]# cat /etc/systemd/network/10-enp0s31f6.network
### Hetzner Online GmbH installimage
[Match]
Name=enp0s31f6

[Network]
Address=2001:db8:5678::2/64
Gateway=203.0.113.25
Gateway=fe80::1

[Address]
Address=203.0.113.27
Peer=203.0.113.25/32

Nötige Änderungen nach einem Servertausch

  • starten Sie den Server ins Hetzner Rescue System
  • ermitteln Sie die aktuelle Interface Bezeichnung mit dem Befehl predict-check
  • mounten Sie Ihre root-partition auf den Ordner /mnt Tutorial
  • öffnen Sie die Netzwerk Konfiguration mit einem Textbearbeitungsprogramm nano /mnt/etc/systemd/network/10-enp0s31f6.network

!! Der Dateiname ermittelt sich aus der (alten) Interface Bezeichnung !!

  • ersetzen Sie den Interface Namen mit dem Neuen in allen Vorkommem
  • speichern und schließen Sie die Datei mit Strg+x, dann y und dann Enter
  • nennen Sie die alte Datei um, damit sie den neuen Interface Namen trägt

mv /mnt/etc/systemd/network/10-enp0s31f6.network /mnt/etc/systemd/network/10-enp7s0.network (ersetzen Sie die Interface Namen entsprechend)

  • starten Sie den Server neu mit dem Befehl reboot

VMware vSphere/ESXi

Sie finden im folgenden Artikel nützliche Informationen zu den nötigen Anpassung unter ESXi nach einem Servertausch: VMware ESXi: Servertausch

Table of Contents