Невозможно запустить ifdown eth0 && ifup eth0

Невозможно запустить ifdown eth0 && ifup eth0

Присоединив нашу ферму Ubuntu к домену Windows и добавив IP-адрес контроллера домена в /etc/network/interfaces, я пытаюсь отключить интерфейс, как я делал это на других серверах Ubuntu, и получаю ошибку.

ifdown: interface eth0 not configured
RTNETLINK answers: File exists
Failed to bring up eth0

/etc/network# cat run/ifstate показывает:

lo=lo
eth2=eth2
eth1=eth1

Я посмотрел на /run/network/ifstate и добавил eth0=eth0 в конец файла. Все еще не могу запустить командуifdown eth0 && ifup eth0

Из-за особенностей этого сервера мне нужно свести перезагрузки к минимуму. Есть ли у кого-нибудь идеи, что вызывает эту проблему и как ее решить? У нас есть еще один сервер с такой же проблемой.

ОБНОВЛЕНИЕ: Вот часть eth0 моего /etc/network/interfaces

auto lo
iface lo inet loopback

# Label public
auto eth0
iface eth0 inet static
    address XXX.XXX.X95.56
    netmask 255.255.255.0
    gateway XXX.XXX.X95.1
iface eth0 inet6 static
    address 2001:XXXX:XXXX:XXX:XXXX:XXXX:XXXX:XXXX
    netmask 64
    gateway fe80::def
    dns-nameservers 192.168.XXX.XXX 173.203.4.9 173.203.4.8

Если я запускаю, ifconfig eth0 downинтерфейс падает, но ifconfig eth0 upне поднимается снова. По иронии судьбы, nslookup моего домена AD работает в этот момент. Я предполагаю, что теперь он использует запись DNS, которую я добавил в порт LAN, чтобы сделать это. Перезагрузка сервера восстанавливает eth0.

ОБНОВЛЕНИЕ 2: Запускsudo ifup -v eth0

Configuring interface eth0=eth0 (inet)
run-parts --verbose /etc/network/if-pre-up.d
ip addr add XXX.XXX.XX5.56/255.255.255.0 broadcast XXX.XXX.X95.255    dev eth0 label eth0
RTNETLINK answers: File exists
Failed to bring up eth0.

решение1

В моем случае я создал образ машины Ubuntu и поместил образ на несколько других. Я начал заставлять их придумывать интерфейсы, которые назывались не eth0 и wlan0, а eth1 и wlan1.

Вот что произошло: есть файл, который привязывает MAC-адрес каждого адаптера к имени каждого адаптера (eth{n} wlan{n} и т. д.). Если вы загрузитесь и ОС увидит, что eth0 привязан к какому-то другому MAC-адресу (в моем случае, с главной машины), она создаст новый интерфейс с именем eth1, и что-то начнет ломаться внутри /etc/network/interfaces.

Решение: Удалите файл /etc/udev/rules.d/70-persistent-net.rules и перезагрузите (извините, OP). Файл будет создан заново при загрузке с правильными настройками для этой машины.

Для тех, кто сталкивается с этим в контексте создания образа, как и я, подумайте об удалении этого файла как sysprep. Вам нужно удалить его, а затем захватить образ перед следующей загрузкой ОС.

Я не уверен, что моя ситуация такая же, как у вас, но если это звучит как что-то разумное, то не помешает попробовать. Удачи

Связанный контент