У меня есть набор серверов (Ubuntu 16.04), которые бездисковые и загружаются с общего ресурса nfs.
Общий ресурс доступен только для чтения, и я использую наложение tmpfs. Для этого я установил /etc/overlayroot.local.conf
к
overlayroot_cfgdisk="disabled"
overlayroot="tmpfs:recurse=0"
и до сих пор он работал нормально.
Теперь я добавил больше машин с другими именами NIC, поэтому для них мне нужен другой /etc/network/interfaces
(возможно в будущем хотелось бы еще разнообразить конфигурации). Как я мог добиться этого без управления отдельными, почти идентичными копиями корневых файловых систем?
Я нашел решение (Немецкие слайды / доклады) с разными уровнями auFS, которые устанавливаются через строки параметров DHCP, которые обрабатываются initrd. Но соответствующие сценарии для сборки initrd не обсуждаются.
кстати. мой /etc/network/interfaces
гласит следующее
# The primary network interface
auto eno1
iface eno1 inet dhcp
# secondary network interface, connected to nfs_root
iface eno2 inet manual
На новых машинах сетевые карты называются enp24s0fx
Предсказуемые имена сетевых интерфейсов udev должны согласовываться на одном и том же оборудовании, очевидно, что у вас неоднородное оборудование.
В простом случае одного интерфейса вы можете отключить постоянное именование, добавив net.ifnames=0 biosdevname=0
в командную строку Linux. (Спросите Ubuntu: изменение имени сетевого интерфейса Ubuntu 16.04)
Однако для нескольких интерфейсов нет гарантии, что станет eth0
. Вы можете снова включить постоянное именование, но настройка правил обычно выполняется путем записи конкретных MAC-адресов хоста в файл.