]> git.proxmox.com Git - pve-docs.git/commitdiff
network: override device names: suggest running update-initramfs master
authorFriedrich Weber <f.weber@proxmox.com>
Tue, 21 May 2024 12:55:18 +0000 (14:55 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Tue, 21 May 2024 14:01:08 +0000 (16:01 +0200)
The initramfs-tools hook /usr/share/initramfs-tools/hooks/udev copies
link files from /etc/systemd/network to the initramfs, where they take
effect in early userspace. If the link files in the initramfs diverge
from the link files in the rootfs, this can lead to confusing
behavior, as reported in enterprise support. For instance:

- If an interface matches link files both in the initramfs and the
  rootfs, it will be renamed twice during boot.
- A leftover link file in the initramfs renaming an interface A to a
  new name X may prevent a link file in the rootfs from renaming a
  different interface B to the same name X (it will fail with "File
  exists").

To avoid this confusion, mention the link files are copied to the
initramfs, and suggest updating the initramfs after making changes to
the link files.

Suggested-by: Hannes Laimer <h.laimer@proxmox.com>
Signed-off-by: Friedrich Weber <f.weber@proxmox.com>
pve-network.adoc

index be8d63ca785020e63e9d801d25d536695930686e..acdcf39216fd4342e8b46b36325fa8bbb90bd390 100644 (file)
@@ -184,6 +184,13 @@ manpage] for more details.
 
 Then, you can assign a name using the `Name` option in the `[Link]` section.
 
+Link files are copied to the `initramfs`, so it is recommended to refresh the
+`initramfs` after adding, modifying, or removing a link file:
+
+----
+# update-initramfs -u -k all
+----
+
 For example, to assign the name `enwan0` to the Ethernet device with MAC
 address `aa:bb:cc:dd:ee:ff`, create a file
 `/etc/systemd/network/10-enwan0.link` with the following contents:
@@ -197,8 +204,9 @@ Type=ether
 Name=enwan0
 ----
 
-Do not forget to adjust `/etc/network/interfaces` to use the new name.
-You need to reboot the node for the change to take effect.
+Do not forget to adjust `/etc/network/interfaces` to use the new name, and
+refresh your `initramfs` as described above. You need to reboot the node for
+the change to take effect.
 
 NOTE: It is recommended to assign a name starting with `en` or `eth` so that
 {pve} recognizes the interface as a physical network device which can then be