jinlife

Community Developer
  • Posts

    173
  • Joined

  • Last visited

Posts posted by jinlife

  1. 20 hours ago, xenoblade said:

     

    老哥,安装之后发现还是用的8169的驱动,有什么办法吗

    1.thumb.JPG.62a78051f362cb00819022b8a21bb586.JPG

    呃,这个要想办法去掉R8169的驱动。需要重新改配置build。等我有空弄弄。我自己在用6.9.1版本没啥问题。

    可以这样屏蔽试试,命令行跑一次,会存到U盘,重启看看。

    echo "blacklist r8169" > /boot/config/modprobe.d/r8169.conf

     

  2. 17 hours ago, limetech said:

     

    It's because Realtek does not keep up properly with Linux kernel releases and they do not maintain the in-kernel driver.  This has always been problematic.  What is you solution doing?  Presumably installing vendor-supplied drivers?

     

    I have no idea. Maybe Realtek doesn't maintain their code in the Linux kernel.

    We can download the driver from their web, it is public:

    r8125:

    https://www.realtek.com/en/component/zoo/category/network-interface-controllers-10-100-1000m-gigabit-ethernet-pci-express-software

    2.5G Ethernet LINUX driver r8125 for kernel up to 5.17 9.009.00 2022/04/28

     

    r8152(6):

    https://www.realtek.com/en/component/zoo/category/network-interface-controllers-10-100-1000m-gigabit-ethernet-usb-3-0-software

    USB NIC Linux driver for kernel up to 5.17 2.16.1 2022/05/04

     

    and keep the code in our own code repository, then build these modules with Unraid Linux kernel.

    Just like what we did for Openwrt, we can add kinds of modules to Openwrt.

  3. 7 hours ago, xenoblade said:

    老哥厉害啊。这么说我2.5G网卡进入系统检测不到网卡的问题就是这个了。谢谢分享

    如果是螃蟹的2.5G网卡,应该是这个原因。

    6.9版本,自带这两个驱动,只是稍微老一点的驱动,起码能识别网卡。6.10直接就没了。。。官方应该是编译的时候,.config文件没配好,把6.9的配置和代码搞丢了~~~

  4. @ich777 大佬帮忙做了r8125和r8152, r8168网卡的Unraid v6.11.5以上的plugin. R8125 和 R8156的驱动都可以在应用市场搜索到了。

    各位可以不用下面的补丁了,重复的,建议多用plugin,除非有IOMMU的需求再用下面的补丁。

    ------------------------------------------------------------------------------------------------------------------------------------------------------------

    由于最近Unraid出版本太频繁了,为各种不稳定的发布版本做补丁,太负担了。以后有觉得稳定的版本再做补丁。

    ------------------------------------------------------------------------------------------------------------------------------------------------------------

    Unraid貌似用了r8169这个驱动来驱r8125,比较老。r8152也是很老的1.12版本,好像驱不动R8156。

     

    以下补丁基于Unraid原版定制,加了最新的V9.013.02的r8125 2.5G PCI网卡驱动和V2.17.1的r8156 2.5G USB 网卡驱动。解压后把所有文件覆盖到U盘根目录重启即可。覆盖前记得备份原始文件。 

     

    默认自带r8169的驱动,支持板载网卡r8169和USB网卡r8156共存的情况。

    如果不需要r8169,需要r8125 PCI网卡的驱动,可以靠如下blacklist屏蔽掉。命令行跑一次,会存到U盘,重启试试。 

    从6.12.5开始, cdc_ncm会影响r8156驱动,也需要屏蔽掉,r8156才能正常工作。

    echo "blacklist r8169" > /boot/config/modprobe.d/r8169.conf
    echo "blacklist cdc_ncm" > /boot/config/modprobe.d/cdc_ncm.conf

    如果想去掉blacklist,去U盘里面删掉上面的这些文件 /config/modprobe.d/*.conf ,重启就行了。

     

    原生Unraid内核之外的补丁修改部分:

    1. 修改了ACS Override补丁,支持某些主板的IOMMU分组补丁。

    2. 增加R8125驱动,修改打开了队列支持和关闭了ASPM节能。

    3. 增加R8156驱动,修改了支持最新的Unraid的Linux6.1内核。

    4. 增加R8168/8111驱动,修改了支持最新的Unraid的Linux6.1内核。

     

    只是供测试,如果感觉不稳定,用原始文件覆盖回来,重启就能恢复原状了。

    免责声明: 补丁只是用于测试,请勿使用于重要的数据服务器,如果出现数据丢失等情况概不负责。谢谢。

     

    下载链接在:

    链接: https://pan.baidu.com/s/1987agT_JHTv6QT3ds1olqg?pwd=zapu

     

    Mirror (Google Drive):

    https://drive.google.com/drive/folders/1wA9UNejVllZfBTjDQ-pquJ-Bx4Tlqluk?usp=sharing

     

    里面还有Unraid老版本的补丁,都是加了类似的驱动。有兴趣也可以使用。6.12之前补丁都没有R8168驱动。

     

    已知问题1: Unraid内部似乎加了些版本检查的限制,新版本的补丁无法新建队列配置文件,会出现Stale Configuration的提示。有个妥协的办法就是先在原始文件里面将阵列启动好,生成阵列配置文件之后,再替换补丁重启。除非换硬盘,一般阵列配置也不会重新配置。

     

    已知问题2: 某些r8125网卡在Unraid的共享目录拷贝速度跑不满280MB,只有140MB左右,可能跟主板设计或配置或桥接有关。有网友发现关掉Unraid网络配置的br0桥接,使用macvtap,可以跑满速度。推荐使用这种办法,虽然麻烦一些,但是速度确实不受影响了。 例如虚拟群晖,推荐第一个macvtap网卡使用群辉的MAC地址,第二个网卡随意MAC地址,参考本帖第三页  @benwwchen 网友的帖子。

     

    • Like 12
    • Thanks 4
    • Upvote 1
  5. 4 hours ago, VergilGao said:

     

    但是我做过测试,现在我就是有校验盘的情况下,SMB传文件还是能跑满千兆……

    麻烦看清楚我写的,好的7200转以上的NAS盘能支持220MB/S,减半也有110MB/S,能满足千兆很正常。 你要加了校验盘还能跑过200MB/s,那得用固态硬盘做存储和校验盘。如果弄个仓库盘, 2.5寸机械硬盘之类的,自身最高读写速度也就百兆左右,减半就难看了。另外,我重点说的是写速度,读速度应该还好。要把文件往Unraid的盘里面传,应该速度比较着急。最好还是用mover,眼不见为净。

  6. Unraid就是这个样子,加上校验盘后,写数据的时候会同时访问数据盘和校验盘,速度至少减半。所以校验盘最好是速度最快容量最大的盘,其他的数据盘最好也是类似的速度,要不就会被最慢的那个盘的速度拖累的。建议还是用NAS盘或者高速硬盘,本身有200MB/s的读写速度。

    如果不需要所有数据都保护,确实用不着校验盘,虽然安全,但是减速度。

  7. 校验盘一般都是阵列里面的机械硬盘互相保护,一般虚拟机和docker的文件都在缓存的固态硬盘上面。校验盘保护不了缓存盘的。 缓存盘要么用两个固态做Raid1做保护,要么就得用插件拷贝到阵列的机械盘里面去。

    或者不要缓存,所有的硬盘都放阵列,那倒是可以都保护起来。 这样没用过,不知道好不好弄。

  8. Unraid 里面没有iotop, Dynamix Cache Dirs只是缓存了目录结构,查看文件时只是列出目录的时候不会触发硬盘运行。

    FileActivity可能是唯一能用的了。这个是监控真正的文件读写的。 如果你的硬盘并不是写入文件导致启动,而是Read Smart信息之类的,那FileActivity抓不到。 建议可以看看系统Log。

    如果是Read Smart的原因,建议装回6.9.1版本。6.9.2版本休眠机制不一样。

  9. Unraid默认的网口管理模式是主备模式,如果管理口连上网线了,另外一个备用的不会启用的,除非主网口挂了。要换成别的模式才能两网口都能用。

    我以前试过,没一个模式好用的,后来我全部直通给软路由了。让软路由管理就变成交换机一样了,任何一个口都能用。 只留个USB网口做管理口。

  10. 这个似乎是6.9.2改了读取Smart的代码,导致休眠都不好用了。我也碰到类似问题,其他英文论坛也有老外碰到此类问题。总是有 read SMART /dev/xxx 会让休眠的硬盘启动。不过我的是10~20分钟之后才有这个read SMART的提示。你这个差了就1~2秒,症状不太一样。 估计还是有程序在用硬盘, 可以装个File Activity的插件看看有没有硬盘读写情况,或者装个System Stat的插件可以看整体读写情况。 

     

    我是完全没有文件读写,但是有一个read SMART就会唤醒硬盘,这个是Unraid调的, 没办法解决。

    后来退回到 6.9.1 版本之后能解决隔10几分钟read SMART的问题,现在都能休眠n个小时的样子,包括阵列盘和外置移动硬盘。