我安装了带有内核版本 2.6.32-220.4.1 的 Scientific Linux 6.2,但 realtek r8111/8168 NIC 出现了问题。我发现此卡无法与驱动程序 r8169 正常工作,因此我降级到 r8168,并找到了有关如何在 Debian、Ubuntu 和 Mint 中执行此操作的网站: http://www.makeinstall.es/2011/06/problemas-con-realtek-rtl81118168b.html
我从 Realtek 网站下载了驱动程序:http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=1&PNid=13&PFid=5&Level=5&Conn=4&DownTypeID=3&GetDown=false 名为 r8168-8.037.00。当我想要编译 autorun.sh 脚本时,问题就开始了,因为它出现了以下消息:
检查旧驱动程序并将其卸载。
rmmod 8169
构建模块并安装
make: ** /lib/modules/2.6.32-220.4.1.el6.x86_64/build: 没有此文件或目录。停止。
最糟糕的是,一旦执行该脚本,我就失去了有线连接的连通性。
解决方案可能是创建名为建造在 /lib/modules/2.6.32-220.4.1.el6.x86_64/ 中,但是我无法这样做,因为我发现在文件夹 2.6.32-220.4.1.el6.x86_64 内有此链接:
lrwxrwxrwx. 1 根 根建造-> ../../../usr/src/kernels/2.6.32-220.4.1.el6.x86_64
我注意到建造出现在终端中,以黑色和红色字体突出显示。
即使我尝试输入 mkdir build 终端也会显示:
无法创建目录‘build’:文件存在
我的问题是:
我如何创建此构建目录来运行 autorun.sh 脚本,从而使 NIC 正常工作?
红色字体突出显示的是什么意思建造文件?
我读到,这个 realtek NIC 在尝试安装驱动程序时给 Linux 用户带来了很多问题。您建议我直接更换这个 NIC 吗?
答案1
对于您的前两个问题:
- 您需要内核开发包(显然
kernel-devel
)。 - 这可能意味着符号链接已损坏(即链接的目标不存在)。您可以使用 进行检查
file build
。
答案2
我无法编译驱动程序的原因是我运行的是旧内核版本。我所做的就是输入:
yum-y 更新
然后我执行了 autorun.sh 脚本,它生成了以下成功代码:
检查旧驱动程序并将其卸载。
rmmod r8168
构建模块并安装
DEPMOD 2.6.32.-431.1.2.el6.x86_64
完全的
但是,系统没有检测到该卡。驱动程序已加载,因为我输入了:
lspci-v
并生成了以下日志:
正在使用的内核驱动程序:r8168
内核模块:r8168
现在,我正在寻找任何解决方案来检测 NIC。