ARM版本飞牛SMB传输问题修复

2026-03-19 23:28:40 0点赞 3收藏 0评论

兄弟,你是不是也被ARM版飞牛smb传输速度折磨过?

习惯了迅雷下载,飞牛的迅雷如果没有会员,就会限制每天下载3个文件。又不喜欢手机找资源,那么就可能用到局域网的pc迅雷下载到飞牛。但PC往NAS传个文件,资源管理器直接卡死,或者速度永远卡在1.5MB/s爬不动!可能是测试版的arm飞牛还没控解决这个问题哦,别慌,今天这篇就是来救命的。

我用的OES(A311D),按照我的方法,把内网传输从1.5MB/s干到了50MB/s+。全程SSH操作,复制粘贴1分钟就能搞定,看完包会。

先查病因:你的SMB协议是不是NT1?

SSH连上你的飞牛,敲这行:

cat /etc/samba/smb.conf | grep "min protocol"

如果看到NT1,恭喜你,找到罪魁祸首了。这是1990年代的SMB 1.0协议,Windows 10/11默认不待见它,ARM平台处理起来更是直接摆烂卡死。

再看看网卡正不正常:

ethtool end0 | grep Speed

# 显示1000Mb/s就是正常的,硬件没坏

直接修改smb.conf(推荐,效果立竿见影)

先备份:

cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

然后直接覆盖:

nano /etc/samba/smb.conf

整份配置我帮你写好了,直接全选粘贴进去:

[global]

workgroup = WORKGROUP

server string = %h server (Samba TRIM)

security = user

# ========== 协议升级:扔掉NT1,上SMB3 ==========

client min protocol = SMB2

client max protocol = SMB3

server min protocol = SMB2

server max protocol = SMB3

# ========== 网络优化:缓冲区给足 ==========

socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=262144 SO_SNDBUF=262144

# ========== 关键:传输单元不能小 ==========

max xmit = 65536

# ========== 异步IO和零拷贝 ==========

aio read size = 16384

aio write size = 16384

use sendfile = yes

min receivefile size = 16384

# ========== 原始读写加速 ==========

read raw = yes

write raw = yes

large readwrite = yes

# ========== 多通道支持(网卡Bonding时用) ==========

server multi channel support = yes

# ========== VFS精简:去掉审计日志,减少IO ==========

vfs objects = trim_perms recycle

# ========== 回收站设置 ==========

recycle:keeptree = yes

recycle:versions = yes

# ========== Apple兼容(有Mac就留着) ==========

fruit:model = TimeCapsule

fruit:encoding = native

# ========== 宽链接支持 ==========

follow symlinks = yes

wide links = yes

unix extensions = no

# ========== 日志调低,别写太多 ==========

log level = 0

log file = /var/log/samba/log.%m

max log size = 1000

logging = syslog

# ========== 认证相关(保持默认) ==========

server role = standalone server

obey pam restrictions = yes

passdb backend = tdbsam

unix password sync = yes

passwd program = /usr/bin/passwd %u

passwd chat = Entersnewsspassword:* %nn Retypesnewsspassword:* %nn passwordsupdatedssuccessfully .

pam password change = yes

usershare allow guests = no

# ========== 包含用户自定义(这行别删) ==========

include = /etc/samba/smb.custom.conf

include = /etc/samba/users/%Y.share.conf

include = /etc/samba/users/%Y.timas.conf

ARM版本飞牛SMB传输问题修复



粘贴完保存,重启Samba:

systemctl restart smbd nmbd

# 或者

smbd restart

nmbd restart

好了,到此应该就大功告成了。实测无线信号弱的地方不低于15MB/s,信号好的地方百兆文件包秒传!有线的话稳定50MB/s+没问题。

ARM版本飞牛SMB传输问题修复

觉得麻烦的,后面就不用看了~~

验证改好了没敲这几行看看:

testparm -sv | grep -E "max xmit|protocol|socket|aio"

应该看到:

server max protocol = SMB3(不是NT1了)

max xmit = 65536(不是16644那个小可怜了)

socket options里有SO_RCVBUF=262144

再查当前连接:

sudo smbstatus -v | grep -E "Protocol|Dialect"

显示SMB3或者3.1.1就对了。

升级安全机制

飞牛大版本升级可能会重置系统分区,/etc/samba/smb.conf会被覆盖。创建检查脚本,升级后一键验证。

创建升级后检查脚本/root/check_smb.sh

#!/bin/bash

echo "=== 飞牛SMB配置检查 ==="

echo "协议版本:"

testparm -sv 2>/dev/null | grep -E "min protocol|max protocol" | head -4

echo ""

echo "传输单元:"

testparm -sv 2>/dev/null | grep "max xmit"

echo ""

echo "当前活动连接:"

sudo smbstatus -v 2>/dev/null | grep -E "Protocol|Dialect" | head -3

echo ""

echo "提示:如protocol为NT1或SMB1,需重新应用优化配置"

每次FnOS升级后执行:

sudo bash /root/check_smb.sh

如果看到NT1或16644,说明配置被重置了,把上面那份配置重新贴一遍,重启Samba即可。

总结:三步搞定

查协议:grep NT1看到就改

贴配置:上面那份全文覆盖smb.conf

重启验证:systemctl restart smbd,速度起飞

简单吧?再不受内网传输慢烦恼!

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章

值友5353088834

Ta还没有介绍自己

关注 打赏
最新文章 热门文章
3
扫一下,分享更方便,购买更轻松