Проблемы с запуском dhclient

После запуска apt-get upgrade и перезапустив установку Ubuntu Server, я заметил, что у компьютера нет сетевого подключения.

Я проверил ifconfig

~$ ifconfig
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:7376 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7376 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1424 (1.4 KB)  TX bytes:1424 (1.4 KB)

Интерфейс 'em1' отсутствовал:/

Так я попробовал ifconfig em1 up который поднял интерфейс, а затем dhclient em1 получить IP-адрес, но я столкнулся с этой ошибкой:

~$ dhclient em1
dhclient: error while loading shared libraries: libc.so.6: failed to map segment from shared object: Permission denied
~$ dhclient
dhclient: error while loading shared libraries: libc.so.6: failed to map segment from shared object: Permission denied

У кого-нибудь есть идеи, что может быть не так? У некоторых людей, похоже, были проблемы с блокировкой SELinux dhclient, но даже с setenforce 0 Я понял эту проблему.

Я использовал dhclient для ручного запуска интерфейса на этом компьютере, поэтому я не уверен, что внезапно изменилось (и что изменилось, чтобы остановить автоматическую настройку интерфейса при запуске).

РЕДАКТИРОВАТЬ: сетевой адаптер в порядке, и все работает, когда ip / route / nameservers установлены вручную

Переустановка isc-dhcp-client а также isc-dhcp-common не помогло, и не сделал переустановку libc6

РЕДАКТИРОВАТЬ 2: Я попробовал предложения Gertvdijk. мой /etc/network/interfaces является:

auto lo  
iface lo inet loopback  

allow-hotplug em1  
iface em1 inet dhcp  

Я старался sudo ifup em1 но я получаю ту же ошибку:(

~$ sudo ifup em1
dhclient: error while loading shared libraries: libc.so.6: failed to map segment from shared object: Permission denied  
Failed to bring up em1.

2 ответа

Решение

Оказывается, проблема была связана с AppArmour; apparmor_status показал что профиль sbin.dhclient был загружен, так работает:

~$ sudo ln -s /etc/apparmor.d/sbin.dhclient /etc/apparmor.d/disable/  
~$ sudo /etc/init.d/apparmor reload  

Решил проблему. Я мог бы тогда вызвать интерфейс, как предложил gertvdijk

(Понятия не имею, почему / когда появился этот профиль - я подозреваю, что он может иметь какое-то отношение к обновлению, которое я выполнил раньше)

Я использовал dhclient, чтобы вручную вызвать интерфейс на этом компьютере

Не рекомендуется делать запрос DHCP из командной строки, так как он больше не управляется системой. Вместо этого настройте /etc/network/interfaces чтобы ваш интерфейс был настроен:

auto eth0
iface eth0 inet dhcp

Затем перезагрузите конфигурацию:

sudo ifup eth0

замещать eth0 с именем интерфейса в вашей системе, конечно.

Для получения дополнительной информации см. Справочную страницу интерфейсов.


Проверить с

ifconfig -a

для интерфейсов не вверх, но доступно в вашей системе.


[...] Permission denied

Вы получили это, потому что вы не бежите dhclient как root/sudo. Просто добавьте команду с sudo,

Другие вопросы по тегам