Я обновил свой сервер до 16.04 с 14.04, который, в свою очередь, был обновлен с 12.04 с использованием командной строки do-release-upgrade. Это серверная сборка, абсолютно без графического интерфейса. Он запускает apache2, bind9, nfs и несколько других сетевых сервисов. По большей части, ничего не сломалось в обновлении ... кроме сети. Теперь я должен бежать
sudo /etc/init.d/networking start
после каждой перезагрузки заставить его подключаться к сети. Не очень полезно для сервера. Я предполагаю, что сетевой скрипт просто не запускается при запуске; обычно я могу решить проблему, запустив
sudo update-rc.d networking defaults
но приведенная выше команда просто выдает ошибку о невозможности подключения к upstart.
Что я могу сделать, чтобы исправить мою сеть?
Редактировать: содержимое / etc / network / interfaces:
#loopback
auto lo
iface lo inet loopback
#eth0
auto eth0
iface eth0 inet dhcp
networking
16.04
systemd
ArmanX
источник
источник
/etc/network/interfaces
файле к вашему вопросу?ifconfig
показывает? Что происходит, когда ты бежишьsudo ifup eth0
?Ответы:
тоже самое.
Я думаю, что что-то пошло не так при переходе с upstart на systemd в процессе установки?
я опишу как я это исправил
Следуя этому руководству, я включил сетевую систему: http://xmodulo.com/switch-from-networkmanager-to-systemd-networkd.html
Шаги, которые я сделал:
Содержание:
Теперь все работает нормально :-)
источник
Решение со статическим адресом:
Чтобы добавить к ответу HerrTaschenbier: Если у вас есть статический адрес на вашем сервере, вы должны проверить, был ли NIC переименован, выполнив, как
ifconfig -a
я обнаружил, eth0 был переименован вens32
. Используйте эту информацию и примените ее к ответу HerrTaschenbier. Вам также нужно будет создать новый файл, как он указалsudo vi /etc/systemd/network/20-ens32.network
. Содержание немного отличается.Обратите внимание, что формат имени файла содержит имя сетевого адаптера. Не забудьте изменить имя адаптера в файле / etc / network / interfaces. Это произошло со мной с 14.04 до 16.04 обновления.
источник
Я столкнулся с той же проблемой после длительного использования 16.04, вероятно, некоторые обновления испортили.
Запуск
systemctl status networking.service
показал, что служба не запустилась из-за ошибки вifup -a
вызове. Запускifup -a
отдельно показал, что он пытается работать сeth0
интерфейсом, покаifconfig -a
указаны толькоenp0s31f6
иlo
интерфейсы. Проверка/etc/network/interfaces
показала:Исправление имени интерфейса к тому, что было найдено,
ifconfig
решило проблему:источник