Есть у меня рабочий ноутбук Lenovo Ideapad Z470, достался мне почти новым и без ОС. Долго не думая поставил Линух Убунту, как более привычную мне ОС с окошками. Сначала были переживания по поводу совместимости, но после установки они все развеялись, всё железо заработало, что называется, "из коробки". Трудился Пингвин на ней, можно сказать без глюков и довольно шустро, и я уже было расслабился, но как оказалось зря... Дело в том, что этот ноутбук используется мной как комп-потаскунчик, когда надо произвести какие-то работы в дали от стационарного компа, и вот сегодня я словил забавный баг связанный с сетевым адаптером. Если в двух словах, то при многократном включении/отключении сетевого интерфейса (ну нужно было по-перетыкаться патчем в разные порты на железке) он зависает, т.е. подключение значится, как отключенное, и подыматься заново не хочет. Не помогает ни ручное отключение разъёма, ни программное:
ifconfig eth0 down
ifconfig eth0 up
Единственный выход был найден в останове и перезапуске модуля ядра сетевой карты (драйвера). На скорую руку мной был написан скриптик содержащий буквально пару строк:
modprobe -r r8169
modprobe r8169
r8169 - это имя модуля сетевой карты (можно посмотреть так: lspci -v).
А на рабочем столе появился соответствующий ярлычок, для удобства.
Но в чём же проблема, ведь раньше такого не было?! Проанализировав понял одну вещь, мне не приходилось раньше работать с аккумуляторов, всегда по близости находилась розетка, а тут не нашлось. Вернувшись на рабочее место решил воспроизвести проблему. Включил бук в розетку, "подёргал" интерфейс и нифига, всё работает. Перешёл на аккумулятор, снова "подёргал"... ага, есть, сетевушка снова померла. Значит дело, скорее всего, в каких-то заморочках с управлением питанием. Беглое гугление по проблеме не дало результатов. Отписал багрепорт и на этом пока успокоился. Будет время по-разбираюсь с проблемой более углублённо, а пока попользуюсь ярлычком, в случае необходимости.