samba4的包在samba官网不是默认推荐的,我是去ubuntu官网下载的源码包
其实参照 http://wiki.samba.org/index.php/Samba4/HOWTO 安装就好了。
这次搭建一个samba4服务器带smbtorture工具的环境用了3天,简单说来是对该samba环境搭建不熟,实际上是面对问题时,思路不够明确,舍本逐末,耽误了太多时间。
首先,没有仔细查阅客户提供的bug说明,仅由经理口述的重现步骤进行配置,大约花费了一天时间不能连接开发板(客观原因是通过串口与开发板连接有乱码,导致无法登陆)。实际上通过查阅客户提供的步骤,直接通过网线连接PC和开发板就可以了,而且自己思路也不清晰,居然认为通过串口可以分配IP给开发板。
心得:以后遇到类似事情,有条件第一时间应该是与客户交流提供尽量详细的重现环境,同时自己也要先进行分析。
第二天花费的时间主要是samba4的安装,盲目的通过虚拟机apt-get命令安装,但这个命令并不能保证smbtorture这个工具,当想使用工具时发现对应安装包中并不能直接使用,后来使用源码包安装,但是也没有选择与客户相同的版本,导致输出结果与客户反映问题不同,后来在进行重新安装就发现包之间有很多冲突,而apt-get并不保证这点。
心得:以后测试环境应该尽量做到与客户相同,软件包也尽量选择源码包进行便后后安装。
第三天,重官网下载最新的包后,进行编译安装,在这期间由于的对编译命令的不熟,花费了太多时间,最后安装好,配置后,发现程序基本不能运行,个人过早下判断依然认为是自己软件包没有安装好,后来同事分析日志后发现是配置错误,修改后运行成功。而自己是参照工具书以及网络上一些简单的配置,直觉就任务配置不会错,但是恰恰是这漏掉了一些参数。
心得:要加强编译等一些常用且必备的技能,对于错误信息,第一时间要去分析,而不是主观判断,网上的一些资料和工具书也都有可能是简写或者有错误,不能彻底相信。
最后黏贴一下smbtorture测试要用的 smb.conf 网上说的比这简单,但是不能运行工具,重要是缺少一些权限限制。
官网地址:https://www.samba.org/ Samba 4.2.2 (gzipped)
版本说明:https://wiki.samba.org/index.php/Samba_4.x_Readme_First
samba 4 对比与samba 3.x 主要是增加了对 Active Directory Domain Controller (AD域)的支持。
Samba AD DC HOWTO : https://wiki.samba.org/index.php/Samba4/HOWTO
OS Requirements: https://wiki.samba.org/index.php/Samba_4/OS_Requirements
卸载原包
rpm -e samba samba-winbind-clients samba-common samba-winbind samba-client cifs-utils
rpm -e samba4-libs sssd ipa-client
安装包
rpm -ivh samba4-libs-4.0.0-66.el6_6.rc4.x86_64.rpm ipa-client-3.0.0-37.el6.x86_64.rpm \
sssd-1.9.2-129.el6.x86_64.rpm
rpm -ivh samba4-4.0.0-66.el6_6.rc4.x86_64.rpm \
samba4-common-4.0.0-66.el6_6.rc4.x86_64.rpm
rpm -ivh samba4-winbind-4.0.0-66.el6_6.rc4.x86_64.rpm \
samba4-winbind-clients-4.0.0-66.el6_6.rc4.x86_64.rpm
rpm -ivh samba4-client-4.0.0-66.el6_6.rc4.x86_64.rpm
附录:
由于后端更新到了4.0的samba,cifs-util是无法安装的,这个是客户端,可以暂时忽略,除非是在Linux服务端上运行samba的挂载才需要进行下面的安装处理
rpm -ivh samba-winbind-clients-3.6.9-164.el6.x86_64.rpm \ samba-winbind-3.6.9-164.el6.x86_64.rpm samba-common-3.6.9-164.el6.x86_64.rpm
rpm -ivh cifs-utils-4.8.1-19.el6.x86_64.rpm
server string = Star's 9100 Samba TEST Server
#log file = /var/log/samba/%m.log
#max log size = 16k
#security = share //samba4的最新版本中这个参数已经被废除,用下面的两行可以代替,不过会出现,登入需要输入用户密码的情况,随便输入即可。
security = user
map to guest = Bad User
#socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65535 SO_SNDBUF=65535
socket options = TCP_NODELAY IPTOS_LOWDELAY
max xmit = 65535
read size = 65535
#getwd cache = yes
interfaces = eth0
dns proxy = no
guest account = root
use sendfile = yes
use mmap = yes
large readwrite = yes
#strict sync = yes
#strict allocate = yes
min receivefile size = 1
[input]
comment = input
path = /mnt/share
guest ok = yes
public = yes
writable = yes
read only = no
create mode = 0777
directory mode = 0777
printable = no
[mnt]
comment = test ufsd over samba
path = /mnt
guest ok = yes
public = yes
writable = yes
read only = no
create mode = 0777
directory mode = 0777
printable = no