Эта проблема
Мой компьютер подключен к сети, где требуется dhcp.
Итак, моя конфигурация сети в /etc/rc.conf
выглядит так
interface=eth0
address=
netmask=
broadcast=
gateway=
Мои демоны
DAEMONS=(!hwclock syslog-ng network netfs crond ntpd)
С этой конфигурацией Arch долго зависает при загрузке в "сети" (все равно он говорит «[готово]», но после загрузки у меня нет соединения). Я обнаружил два обходных пути:
Обходной путь 1
- удалить
network
от демонов - запустите
mii-tool --reset eth0
иdhcpcd eth0
после загрузки (каким-то образом это не работает при размещении этих команд в/etc/rc.local
.
Тогда dhcp работает очень быстро (из-за сброса !).
Перед выполнением первой команды ip link show eth0
имеет "NO CARRIER" в выводе. Впоследствии это не так. (Также mii-tool
сначала показывает "нет связи", затем eth0: 10 Mbit, half duplex, link ok
.
Обходной путь 2
Изменить конфигурацию сети на
interface=eth0 address=x.y.z.21 netmask=255.255.255.0 broadcast=xxx.y.z.255 gateway=x.y.z.254
тогда как x, y, z создают специфические адреса сети (хотя используется dhcp, я получаю статический ip).
- Добавьте команды
mii-tool --reset eth0
иdhcpcd eth0
в/etc/rc.local
Теперь сеть запускается быстро при загрузке (хотя я не знаю, успешно ли), команды в /etc/rc.local
выполняются и после входа в систему соединение в порядке.
Что делать?
Таким образом, проблема, кажется, в том, что dhcpcd
застревает в "ожидании носителя" или что-то еще.
Я не люблю обходной путь, потому что некоторые демоны нуждаются в сети (хотя они, кажется, запускаются). Что я могу сделать, чтобы eth0
готов к загрузке dhcp? Или есть другая проблема?