我已经在 CentOS 5.5 服务器上设置了 Samba,它甚至连写入文本文件都慢得惊人,写入一个 8k 文件就需要 5-10 秒。我个人认为这是配置错误,但不能 100% 确定。我在服务器上运行 Apache、MySQL、tomcat 和 postfix,它们都运行得非常快。(这只是一个个人服务器,几乎没有流量)
这是我的配置:
[global]
workgroup = NONE
server string = Laptop server
preferred master = no
local master = no
domain master = no
security = user
passdb backend = tdbsam
show add printer wizard = no
load printers = no
smb ports = 445
hosts deny = ALL
hosts allow = 10.0.
log file = /var/log/samba/smbd.log
log level = 2
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
preserve case = yes
short preserve case = yes
unix extensions = no
我意识到日志级别很高,但只是提升它来尝试诊断,关闭时并没有什么区别。
我确实在日志中注意到,当我保存时它打开了很多文件(大约 50 个),我从 Mac 连接到它,但我也在工作中连接到类似的配置,而且速度非常快。
登录也很快。有什么建议吗?
答案1
服务器的网络适配器是否恰好是 Realtek(特别是 RTL8111/8168B)?我发现 Linux 上的 Realtek 卡与 Samba 一起使用时速度会非常慢。内核驱动程序源代码中有关于 Realtek 质量的评论,这让人大笑,这与内核评论不同。
从服务器字符串来看,系统似乎是笔记本电脑。这使得更换 NIC 变得相当困难,但您可以尝试使用无线或 USB 网络适配器进行测试。无线当然不是提供高性能文件的理想选择,但在测试中,我敢打赌,对于 8k 文件来说,它将超过 10 秒。