Симптомы: время от времени пропадает сеть.
В логах множество записей типа:
Feb 3 01:27:22 vds1 kernel: [ 6489.198269] r8169 0000:04:00.0: eth0: link up
проблема в драйвере сетевой платы r8169, и данная проблема проявляется даже на самом последнем ядре linux. Для решения проблемы необходимо стянуть и установить драйвер с сайта realtek для r8168, то есть сделать даунгрейд драйвера, а оригинальный заблеклистить, чтоб его не подхватывало ядро.
Для начала проверим действительно ли у нас стоит драйвер r8169:
lsmod | grep 8169
Если в ответ увидели что то подобное:
r8169 31364 0
то продолжаем дальше…
Теперь необходимо проверить есть ли смысл нам делать даунгрейд, то есть заведется или не заведется сетевая…
apt-get install -y pciutils lspci | grep Ethernet
Если в ответ увидите что то на подобии:
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)
То драйвер r8168 будет работать с вашей сетевой и можем продолжать дальше…
Поставим пакет включающий все необходимые компоненты (компиляторы и прочие инструменты) для сборки всего необходимого:
aptitude install build-essential linux-headers-`uname -r`
Дальше скачаем исходники драйвера:
cd /usr/src http://blogovo.in.ua/uploads/r8168-8.032.00.tar.bz2 tar xjf r8168-8.032.00.tar.bz2
Собираем их:
cd r8168-8.032.00 make all
Дальше мы перестроим зависимости ядра:
depmod -a
Драйвер r8169 необходимо занести в блеклист, чтоб ядро его не прогружало. Если у вас несколько сетевых, тогда заносить в блеклист не нужно.
echo "blacklist r8169" >> /etc/modprobe.d/blacklist.conf
Добавляем драйвер r8169 в initrd:
echo "r8168" >> /etc/initramfs-tools/modules
Теперь нужно пересобрать initrd:
update-initramfs -v -u -k `uname -r`
Ну вот и все. Новый драйвер будет загружен после перезагрузки. Перезагружаемся:
shutdown -r now
Проверить загрузился ли драйвер можно командой:
lsmod | grep 8168 r8168 226837 0
P.S. если надумаете обновлять ядро, драйвер необходимо пересобрать!
P.P.S С офсайта realtek можно стянуть свежий драйвер который устанавливается скриптом. Но не всегда работает.