天天看點

samba優化參數(轉)使用者背景管理通路Samba伺服器慢的一例(轉)

手頭的 mele3916CIE 已使用多年,過去充當高清播放機,效果還是不錯的,但現在已經是安卓當道了,網上内容線上播放已是目前主流,最近入手了小米小盒子,功能實在強大,已完全取代了播放器功能,3916可以退居二線了。

通過對3916進行固件改造,裝了個2t的紅盤把它變成了nas,ipkg安裝了常用軟體,包括samba、vsftpd、transmission、amuled等,分别進行網路上的芳鄰共享播放、FTP、PT下載下傳、電驢下載下傳等,使用小米小盒子通過wifi使用samba共享進行視訊播放,實際效果非常好。

一般認為通訊速度NFS=FTP>samba,samba效率很低,影響播放效果,實際上最初安裝後,确實速度慢,我使用的是150M的wifi,720P(碼速700K-1M/s)可以看但加載很慢,1080P(碼速1-4M/s)嚴重卡頓,但通過對其參數優化,已經較好解決。

下面是參數沒有優化時,我實際測量的大檔案拷貝時FTP和samba速度對比情況,其中1、2、3分别對應不同的網絡連接配接方式(wifi是150M通訊模式,通訊功率設定為25%,距離約8-10m,中間隔一堵牆):

1、pc <-wifi->  route <-wifi-> mele
                    ftp:        
                            mele -->  pc    1.3M
                              pc -->  mele    1.3M
                    samba:
                            mele -->  pc    1.3M
                              pc -->  mele    1.3M

                    2、pc <-lan->  route <-wifi-> mele
                    ftp:        
                            mele -->  pc    3.2M
                              pc -->  mele    1.7M
                    samba:
                            mele -->  pc    2.3M
                              pc -->  mele    1.3M

                    3、pc <-wifi->  route <-lan-> mele
                    ftp:        
                            mele -->  pc    4.2M
                              pc -->  mele    3.9M
                    samba:
                            mele -->  pc    2.1M
                              pc -->  mele    3.1M
在情況1時,使用小米小盒子wifi播放720P時加載速度慢,常有卡頓,1080P無法播放,FTP和samba速度都很慢。情況2和3時,FTP速度有較大提高,samba也有提高,其中在情況3時,使用小米播放低碼率1080P時基本流暢,但加載速度仍然較慢,拖動進度條時,要4-8s加載時間,高碼率片段會卡;高碼率的1080P不能流暢播放(理論上不超過大約10G大小影片的播放)。
通過對samba的配置檔案(/opt/etc/samba/smb.conf)優化,速度有了躍升,同樣在情況3下,速度提高到與FTP相同水準,在此情況下,主流1080P電影可非常流暢播放,加載速度在1-2s内,拖動進度條也可瞬時加載,速度也遠超過原播放器直接播放的水準,1080P高清影片基本通吃。
                    4、pc <-wifi->  route <-lan-> mele  參數優化後
                    ftp:        
                            mele -->  pc    4.2M
                              pc -->  mele    3.9M
                    samba:
                            mele -->  pc    4.1M
                              pc -->  mele    3.8M    
現在已經不需要把3916放置在電視機旁邊了,移到路由器處,用lan直接連到路由器,充當專職的nas進行PT和電驢下載下傳,用小米小盒子進行wifi播放,流暢度和友善性都超過3916直接播放了。

smb.conf優化後參數如下:

            [global]
            interfaces = 192.168.1.100
            workgroup = WORKGROUP

            server string = NAS
            guest account = root
            security = share
            load printers = no

            use sendfile=yes
            read size = 65536
            read prediction = yes
            ;socket options = TCP_NODELAY SO_RCVBUF=16384 SO_SNDBUF=16384
            write raw = yes
            read raw = yes
            max xmit=65535
            aio read size = 16384
            aio write size = 16384

            netbios name = Venus
            deadtime = 5

            dns proxy = no
            guest ok = yes
            guest only = no
            log file = /opt/var/samba/%m.log
            log level = 1
            max log size = 100
            encrypt passwords = yes

            ;time server = yes
            ;os level = 33
            ;local master = yes
            ;domain master = yes
            ;preferred master = yes

            ;display charset = UTF-8
            unix charset = UTF-8
            dos charset = GB2312

            [Mele]
            comment = Public
            path = /tmp/usbmounts
            public = yes
            browseable = yes
            writable = yes
           

使用者背景管理

passdb backend = tdbsam passdb backend即使用者背景。

有三種背景:smbpasswd、tdbsam和ldapsam。Sam即security account manager。

1. smbpasswd:該方式是使用smb工具smbpasswd給系統使用者(真實使用者或者虛拟使用者)設定一個Samba 密碼,用戶端就用此密碼通路Samba資源。smbpasswd在/etc/samba中,有時需要手工建立該檔案。

2. tdbsam:使用資料庫檔案建立使用者資料庫。資料庫檔案叫passdb.tdb,在/etc/samba中。passdb.tdb使用者資料庫可使用smbpasswd –a建立Samba使用者,要建立的Samba使用者必須先是系統使用者。也可使用pdbedit建立Samba賬戶。pdbedit參數很多,列出幾個主要的:pdbedit –a username:建立Samba賬戶。pdbedit –x username:删除Samba賬戶。pdbedit –L:列出Samba使用者清單,讀取passdb.tdb資料庫檔案。pdbedit –Lv:列出Samba使用者清單詳細資訊。pdbedit –c “[D]” –u username:暫停該Samba使用者賬号。pdbedit –c “[]” –u username:恢複該Samba使用者賬号。使用此項設定後,自己建裡smbpasswd和smbuser檔案,然後用smbpasswd建立系統已有使用者

3. ldapsam:基于LDAP賬戶管理方式驗證使用者。首先要建立LDAP服務,設定“passdb backend = ldapsam:ldap://LDAP Server”

通路Samba伺服器慢的一例(轉)

原文位址:作者Xiaoqiang.Wu

通路Samba共享的檔案很慢很慢的問題

由于公司新搬了位址,網絡全部重新搭建.但伺服器都是直接從舊位址搬到新位址,沒有作任何更改.

問題來了,公司同僚反映最近通路公共的共享的檔案夾速度非常慢,特别是第一次,差點就忍受不了了!

網上找了一下資料,發現有網友(沒找着那篇文章網址了)講是因為network 和 hosts檔案中的主機名不一樣.

查了一下自己的伺服器配置,果然兩個檔案的主機名不一樣,hosts中的主機名是預設的.

注:ubuntu的網絡配置檔案在/etc/network裡面,檢視主機名的指令是hostname

[[email protected] ~]# cat /etc/sysconfig/network 
NETWORKING=yes 
NETWORKING_IPV6=no 
HOSTNAME=server
[[email protected] ~]# cat /etc/hosts 
Do not remove the following line, or various programs 
that require network functionality will fail. 
127.0.0.1              localhost.localdomain localhost 
::1             localhost6.localdomain6 localhost6
           

将hosts檔案中的主機名也改成和network中的主機名一樣(如下),哇,那速度是相當地快!

[[email protected] ~]# cat /etc/hosts 
 Do not remove the following line, or various programs 
 that require network functionality will fail. 
127.0.0.1              localhost.localdomain localhost 
127.0.0.1               server 
::1             localhost6.localdomain6 localhost6
           

繼續閱讀