FÉV 04
Installation d'un noyau Debian sur Kimsufi
Blog, Kimsufi, openvz, r8168, r8169
0 commentaire
Cela se voit dans le fichier /var/log/dmesg (celui qui correspond au précédent boot, à savoir /var/log/dmesg.0 ) une fois que l'on a rebooté sur un noyau OVH :
[ XX.XX] r8169: eth0: link down
[ XX.XX] ADDRCONF(NETDEV_UP): eth0: link is not ready
Le noyau que je souhaitais installer est celui pour openvz, en version 64bits.
Après de très nombreuses tentatives infructueuses, j'ai fini par trouver le problème, puis la solution. Il se trouve que le module chargé par la carte réseau est non seulement buggué, mais en plus, ce n'est pas le bon.
Sur un serveur tout neuf, on va d'abord commencer par le mettre à jour :
aptitude update aptitude upgrade
Ensuite, on va remplacer lilo par grub :
aptitude install grub
On va maintenant installer le nouveau noyau, ainsi que ses sources (pour compiler le driver de la carte réseau),
aptitude install linux-image-openvz-amd64 linux-headers-2.6.26-2-openvz-amd64 grub-install /dev/sda
On récupère les drivers pour la carte r8168, puisque c'est ce que nous rapporte lspci :
$ lspci 03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)
wget ftp://WebUser:K4d5wHY@152.104.238.19/cn/nic/r8168-8.016.00.tar.bz2
On décompresse les sources du driver, et on modifie son Makefile
tar -xvjf r8168-8.016.00.tar.bz2 cd r8168-8.016.00/src
Voici un apercu du diff entre le fichier d'origine, et le fichier modifié
33c33 < KVER := $(shell uname -r) --- > KVER := 2.6.26-2-openvz-amd64 46c46 < $(MAKE) -C $(KDIR) SUBDIRS=$(PWD)/src modules --- > $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
Il reste à compiler le driver et à l'installer :
make clean modules make install
Pour être certain que le bon module sera chargé, on va supprimer celui qui ne fonctionne pas (cette opération est facultative) :
rm /lib/modules/2.6.26-2-openvz-amd64/kernel/drivers/net/r8169.ko
Ensuite, il faut prendre en compte le module, et générer un nouveau initrd.img :
depmod 2.6.26-2-openvz-amd64 -a mkinitramfs -o /boot/initrd.img-2.6.26-2-openvz-amd64 /lib/modules/2.6.26-2-openvz-amd64/
Et voilà, il ne reste plus qu'à rebooter, puis à installer tout ce qui sera nécessaire sur le serveur.