我有一个运行CentOS 5.3(Final;内核版本2.6.18)的服务器,我需要添加第二个网卡,最初暂时,但最终永久。 我不熟悉在Linux下安装驱动程序,只使用system-config-network-tui和编辑configuration文件(我们没有安装X版本)来configuration内置的以太网适配器。
我发现一些说明,说苹果的USB以太网适配器在Linux下运行良好 。 我们是一家苹果商店,所以我们有足够的资源,而且短期内我们会为这台服务器寻找一个更好的PCI-X以太网适配器。 因此,我下载并安装( make和make install ) 推荐的AX88178驱动程序(Linux 2.6.38;适用于“Android 1.x / 2.x / 3.0,Linux kernel 2.6.14及更高版本”)的相应版本 。 插入Apple USB以太网适配器后,它显示在lsusb的结果中,但在运行system-config-network-tui时没有显示在选项中。
编译和安装的.ko文件是“asix.ko”,如果我运行lsmod | grep asix lsmod | grep asix ,我得到以下内容:
asix 82176 0 mii 38849 1 asix
那么,内核模块是否正确安装并加载? 我需要别名“eth2”(“eth0”是内置以太网和“eth1”在system-config-network-tui列为“skge”,但绝对不是我刚插入的)“asix “在/etc/modules.conf在这里指出 ? 我可能会错过哪些其他步骤?
注意:当我运行ifconfig -a时,我现在看到一个“dev23116”networking接口,在安装驱动程序之前, ifconfig -a接口并不存在。 那是USB以太网适配器吗? 如果是这样,我的别名或使用它作为接口的设备在system-config-network-tui ?
所以,每当我插入Apple USB以太网适配器(并拔出时都会自动消失),就会生成“devXXXXX”接口,但是它已经更改了,所以我不认为重新启动后它的设备名称是相同的。 (更不用说在使用system-config-network-tui时,我无法获得IP。
当插入Apple USB以太网适配器时,我在/var/log/messages获得了以下内容:
Sep 21 13:40:15 hostname kernel: usb 1-6: new high speed USB device using ehci_hcd and address 6 Sep 21 13:40:15 hostname kernel: usb 1-6: configuration #1 chosen from 1 choice Sep 21 13:40:15 hostname kernel: ASIX USB Ethernet Adapter:v4.1.0 17:04:38 Sep 20 2011 Sep 21 13:40:15 hostname kernel: http://www.asix.com.tw Sep 21 13:40:15 hostname kernel: eth%d: status ep1in, 8 bytes period 11 Sep 21 13:40:15 hostname kernel: eth1: register 'asix' at usb-0000:00:1d.7-6, ASIX AX88772A USB 2.0 Ethernet, ffff8100769819a8M
我在/etc/modprobe.conffind了一行读取alias eth1 skge的行(对于那个不是什么而且从不显示连接的奇怪的eth1接口),并将其注释掉(特别是/var/logs/messages显示日志注册asix为eth1)。 这样做后,给eth1一个使用system-config-network-tui的静态IP,断开并重新连接Apple USB以太网适配器,现在它总是显示为eth1并且具有正确的以太网地址。 我也可以ping该子网上的主机,所以这是工作。
主要的问题似乎是硬编码别名和试图注册为相同名称的asix模块之间的冲突。
另外一个注意事项:当插入Apple USB以太网适配器时,似乎更改默认路由,所以必须确保在必要时检查并调整。