Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
en:linux:nfs_unique_machineid [2020/05/06 01:21] – created alexen:linux:nfs_unique_machineid [2020/05/06 01:59] (current) alex
Line 1: Line 1:
 ====== Unique machine ID for nfs root systems ====== ====== Unique machine ID for nfs root systems ======
  
 +When multiple hosts running systemd share the same NFS root, they will also share the same machine-id.  This can cause issues, especially with journald.  Journald logging can be disabled by deleting ''/var/log/journal'' which solves most of the problems, but a better solution is to use unique machine-id values on all of the hosts.  Modern motherboards provide a unique UUID accessible via DMI, so a reasonable option is to write this out to /run during boot and point systemd at that as the machine-id.  Here is a simple way to set that up.
  
 +Create the file ''/etc/initramfs-tools/scripts/init-top/machineid'':
 +
 +<code bash machineid>
 +#!/bin/sh -e
 +
 +PREREQS=""
 +
 +prereqs() { echo "$PREREQS"; }
 +
 +case "$1" in
 +    prereqs)
 +    prereqs
 +    exit 0
 +    ;;
 +esac
 +
 +# write sanitized motherboard UUID to /run/machine-id
 +sed 's/-//g' /sys/class/dmi/id/product_uuid > /run/machine-id
 +
 +# requires the following symbolic links:
 +# ln -sf /run/machine-id /etc/machine-id
 +# ln -sf /run/machine-id /var/lib/dbus/machine-id
 +
 +</code>
 +
 +Rebuild the initramfs (for example ''update-initramfs -u'') and replace ''/etc/machine-id'' and ''/var/lib/dbus/machine-id'' with symlinks to ''/run/machine-id''.