Как я могу исправить потерю сетевого подключения моей сетевой карты каждые несколько минут с ядрами 3.8.x?
Я использую Ubuntu 13.04. Мой ноутбук - Acer Aspire one 722-c58rr, и моя сетевая карта работает в течение нескольких секунд с ядрами 3.8.x, однако ядра 3.5.x и ниже работали нормально.
На ядрах 3.8.x он нормально работает после загрузки около минуты, затем теряет сетевое соединение. При пинге по какому-то адресу он говорит: network address is unreachable
, но он может пропинговать свой собственный адрес. Адрес статически настроен.
Раньше все работало нормально. Я отправился в отпуск, где использовал соединения WiFi и 3G, поэтому не заметил, что проблема возникла. Вернулся домой, подключил к сети. Это работало на минуту, затем остановилось. Перезагрузка коммутатора устранила проблему. Пытался подключиться к другому коммутатору, та же проблема. Отключение и подключение кабеля устраняет проблему еще на одну минуту. Отсоединение eth
в диспетчере сети и переподключение снова делает то же самое. У WiFi такой проблемы нет. Пробовал использовать другой кабель, который отлично работает на другом компьютере, та же проблема. Пытался загружаться с более низкой версией ядра, та же самая проблема возникала, пока я не дошел до версии 3.5 серии ядра.
На ядре 3.5.x все работает нормально, но я не хочу упустить возможности нового ядра.
Выполнение команд при загрузке с ядром серии 3.8 дает следующие результаты:
Утилита lspci| grep -i eth: 06:00.0 Контроллер Ethernet: Qualcomm Atheros AR8152 v2.0 Fast Ethernet (rev c1) dmesg| grep eth1: [ 89.548291] atl1c 0000:06:00.0: atl1c: eth1 NIC Соединение установлено
Как это исправить, оставаясь в новой версии ядра?
2 ответа
Боюсь, вы попали в ошибку ядра для вашей конкретной карты Ethernet (отчеты об ошибках здесь и здесь). Я предлагаю вам оставить свой отзыв в этих темах.
Кажется, что удаление и добавление обратно atl1c
Модуль временно устраняет проблему:
sudo rmmod atl1c
sudo modprobe atl1c
Другое более долговременное решение - перекомпилировать compact-wireless
модуль, который вы можете найти на kernel.org, вот так:
sudo rmmod atl1c
sudo apt-get update
sudo apt-get install build-essential wget
wget http://wireless.kernel.org/download/compat-wireless-2.6/compat-wireless-2.6.tar.bz2
tar-xjf compat-wireless-2.6.tar.bz2
cd compat-wireless*
scripts/driver-select atl1c
make
sudo make install
sudo modprobe atl1c
Если это не работает, попробуйте перезагрузиться.
afaik, лучшее решение - обновить ядро до последней версии, поскольку исправление было включено в версии 3.11 и более поздние.
Я не пишу о том, как обновить ядро вручную, потому что очень легко найти учебники, просто прибегая к помощи "обновления ядра Linux в Ubuntu" или чего-то такого.