群晖samba服务优化传输性能
- 作者帖子
- Up::1
现象: 使用samba传输时传输速度很慢,尤其是传输的文件数量很庞大时严重影响用户体验。
如下是一些优化调优:
1.以admin用户进入后台
# ssh admin@xxxx
#sudo su
2. 调整smb参数
# vim /etc/samba/smb.conf
在[global]下面添加如下参数
# Some other performace tuning options
#std#socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=131072 SO_SNDBUF=131072 SO_KEEPALIVE
socket options = TCP_NODELAY SO_RCVBUF=131072 SO_SNDBUF=131072 SO_KEEPALIVE IPTOS_THROUGHPUT
# disable links and symbol links
follow symlinks = no
wide links = no
# enable some read/write tuning
use sendfile = yes
read raw = yes
write raw = yes
aio read size = 16384
aio write size = 16384
write cache size = 262144
max xmit = 65536
large readwrite = yes
getwd cache = yes
# disable locking, because only 2 share can be written.
strict locking = no
fake oplocks = yes
oplocks = no# Performance specific for MacOS
min protocol = SMB2
vfs objects = fruit streams_xattr
fruit:metadata = stream
fruit:model = MacSamba
fruit:posix_rename = yes
fruit:veto_appledouble = no
fruit:wipe_intentionally_left_blank_rfork = yes
fruit:delete_empty_adfiles = yes
[参考]:https://www.samba.org/samba/docs/old/Samba3-HOWTO/speed.html
来说明一下,
follow symlinks ,对我来说不需要,Windows好象不支持这种符号连接,我也不需要在共享里有这个东西,所以关闭
wide links,同上不需要aio read/write size,是和异步读写有关的,设大一点比较好。参考手册说明大于65536将无效
oplocks和locking这两个决定samba是否对文件进行lock测试,如果一个用户以write方式打开了这个文件,那么其它用户就 不能再以write打开,这两个东西很费内存,也同样会降低samba的性能。 另外,我有很多个share,其中只有两个是所有人都可以写的,其它的都只有一个用户能写,对于后者,不需要打开这个,因为共享设计就是别人无法写。 那么就在global里面把这几个和lock有关的参数关掉,在那两个所有人可以写的share再打开。
3. 重启smb服务
/sbin/restart smbd
- 作者帖子
- 哎呀,回复话题必需登录。