源码编译安装samba

1、解压、编译、安装

#tar xzvf samba-3.6.9.tar.gz
#cd samba-3.6.9/source3
#./configure
#make
#make install


没用路径参数,因为默认是/usr/local/samba

2、配置smb.conf,比较关键的一步
默认情况下,samba软件包会被安装到目录/usr/local/samba/下,但是现在还不能启动它。

samba的进程在启动的时候需要一些库文件的支持,这些库文件就在/usr/local/samba/lib/目录下,需要把这个目录加入系统搜索库文件的路径中。

可以在/etc/ld.so.conf.d/目录里创建一个名为samba.conf的文件(文件名后缀必须为.conf,名称随意),这个文件的内容就是/usr/local/samba/lib/,最后执行ldconfig命令使之生效。

在 /etc/ld.so.conf.d/ 目录下创建 samba.conf 文件(文件只要以conf结尾即可),并输入所安装的 samba 库位置的绝对路径(/usr/local/samba/lib)即可;之后执行命令 #ldconfig 重新读取 /etc/ld.so.conf.d 目录下的配置文件。


ldconfig命令的用途,主要是在默认搜寻目录(/lib、/lib64和 /usr/lib)以及动态库配置目录 /etc/ld.so.conf内的文件,搜索出可共享的动态链接库(lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件。

注意:这一步必须要做,否则 smbd 不能启动。

#cp ./samba-3.6.9/examples/smb.conf.default /usr/local/samba/lib

注意拷完要改名为smb.conf ,  不然是无法识别的


安装目录下有很多smb.conf的例子,但/usr/local/samba/lib下却没有,所以必须copy.
也可以用链接的方法:
创建配置文件 

#mkdir  /usr/local/samba/etc 
#vim    /usr/local/samba/etc/smb.conf 
编辑完配置文件后,保存。 
#ln –s  /usr/local/samba/etc/smb.conf   /usr/local/samba/lib/smb.conf  

3、配置smb.conf
#vi smb.conf
修改的地方看你的情况
workgroup=mygroup
增加:
unix charset=utf8
dos charset=utf8
display charset=utf8
这三条设置的目的是指访问linux上的文件夹和文件时,显示汉字,要与Linux的语言设置保持一致。
#/usr/local/samba/bin/testparm 检查smb.conf配置语法是否错误和设置是否成功


4、增加smb用户
比如有一个用户名是kitty,那么:
/usr/local/samba/bin/smbpasswd -a kitty,就把kitty增加为smb用户了。


5、启动smb服务
#service iptables stop
#service network restart
#/usr/local/samba/sbin/smbd -D

#/usr/local/samba/sbin/nmbd -D

#netstat -tlunp | grep mbd

#netstat -tlunp | grep smbd

查看是否启动成功

启动完成,到Windows上输入服务器IP,如\\192.168.10.133\kitty。输入“kitty"和密码,就可以看到Linux上/home/kitty的文件夹内容了。


最后一步,需要做的就是把smb服务设为开机启动。
#vi /etc/rc.d/rc.local

加入

/usr/local/samba/sbin/smbd -D

/usr/local/samba/sbin/nmbd -D 

就可以了。

如果启动后修改了smb.conf,重复第5条操作就可以了,不用重启。

已标记关键词 清除标记
相关推荐
http://www.linuxidc.com/Linux/2014-12/110459.htm Samba-4.1.14服务器安装和配置 http://www.2cto.com/os/201408/327930.html 【Linux笔记】sambav4.1.9源码安装及基本使用说明 http://blog.sina.com.cn/s/blog_627617bf0101s4ps.html samba4.1.6源代码部署及配置 (2014-04-04 09:41:00)转载 2016/6/14 15:23 由于ubuntu14.04.4麒麟版本使用: sudo apt-get install samba安装samba是:V4.3.9 共享文件时ubuntu上的samba V4.3.9会出错(崩溃)。 所以直接使用源码安装来共享文件了(从win7来访问ubuntu14.04.4麒麟版本)。 标签: samba linux资源共享 smb 分类: Samba SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。 samba服务器搭建: 1.解压samba-4.1.6.tar.gz得到samba-4.1.6目录 tar -xvzf samba-4.1.6.tar.gz 2.进入samba-4.1.6目录,在该目录下输入: ./configure --prefix=/usr/local sudo ./configure --prefix=/usr/local/samba-4.1.6 make make install sudo make install 注意:4.x版本的samba的build system是基于python的,必须安装有python2.5版本以上。(python3.x系列的不行) 如果系统没有符合条件的python版本,可以运行samba-4.1.6目录下的install_with_python.sh,会自动帮你安装python。(./install_with_python.sh /usr/local) 3.创建一个文件夹,用来共享文件 mkdir -p /home/fzuir/share chmod 777 /home/fzuir/share 4.samba配置 将samba源码目录samba-4.1.6中的samba-4.1.6/examples/smb.conf.default复制到安装目录,一般是/usr/local/samba/etc/中 cp ~/samba-4.1.6/examples/smb.conf.default /usr/local/samba/etc/ 修改配置文件 sudo vim /usr/local/samba/smb.conf (1)修改samba服务器的安全模式,samba的安全模式有:(默认是user,不修改也可) share:用户访问Samba Server不需要提供用户名和口令, 安全性能较低。 user:Samba Server共享目录只能被授权的用户访问,由Samba Server负责检查账号和密码的正确性。账号和密码要在本Samba Server中建立。 server:依靠其他Windows NT/2000或Samba Server来验证用户的账号和密码,是一种代理验证。此种安全模式下,系统管理员可以把所有的Windows用户和口令集中到一个NT系统上,使用Windows NT进行Samba认证, 远程服务器可以自动认证全部用户和口令,如果认证失败,Samba将使用用户级安全模式作为替代的方式。 domain:域安全级别,使用主域控制器(PDC)来完成认证。 修改方法:在配置文件中查找security=user,把前面的注释#去掉。 (2)添加文件共享定义信息 修改方法:在配置文件末尾添加如下内容: [Share] comment=Shared Folder path=/home/fzuir/share #public=yes(允许匿名访问) writable=yes(可写) #readonly=yes(只读) valid users=fzuir (可访问用户名,组可用 @组名) create mask=0700 directory mask=0700 available=yes browseable=yes [rootroot] comment=rootroot Shared Folder path=/ #public=yes writable=yes #readonly=yes valid users=rootroot create mask=0700 directory mask=0700 available=yes browseable=yes (3)修改编码 在[global]段内添加如下三行: display charset=UTF-8 unix charset=UTF-8 dos charset=cp936 5.添加samba用户 添加fzuir这个网络访问账户,fzuir用户如果已存在则不用。 sudo useradd fzuir 上面只是新增了fzuir这个用户,却没有赋予本机登录密码,所以只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样。 现在在samba中添加这个帐号 sudo /usr/local/samba/bin/smbpasswd -a fzuir sudo /usr/local/samba-4.1.6/bin/smbpasswd -a fzuir cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ sudo /usr/local/samba-4.1.6/bin/smbpasswd -a rootroot Ignoring unknown parameter "display charset" New SMB password: Retype new SMB password: Added user rootroot. cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ 6.测试并启动samba sudo /usr/local/samba/bin/testparm cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ sudo /usr/local/samba-4.1.6/bin/testparm Load smb config files from /usr/local/samba-4.1.6/etc/smb.conf rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) Unknown parameter encountered: "display charset" Ignoring unknown parameter "display charset" Processing section "[homes]" Processing section "[printers]" Processing section "[rootroot]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions [global] dos charset = cp936 workgroup = MYGROUP server string = Samba Server server role = standalone server log file = /usr/local/samba/var/log.%m max log size = 50 dns proxy = No idmap config * : backend = tdb [homes] comment = Home Directories read only = No browseable = No [printers] comment = All Printers path = /usr/spool/samba printable = Yes print ok = Yes browseable = No [rootroot] comment = rootroot Shared Folder path = / valid users = rootroot read only = No create mask = 0700 directory mask = 0700 cm04@cm-System-Product-Name:/usr/local/samba-4.1.6/etc$ 重启samba: sudo /usr/local/samba/sbin/smbd restart sudo /usr/local/samba/sbin/nmbd restart sudo /usr/local/samba-4.1.6/sbin/smbd restart sudo /usr/local/samba-4.1.6/sbin/nmbd restart 7.在不同的系统之间访问samba (1)windows下:在文件管理器地址栏中输入\\samba服务器IP 即可以查看共享文件夹或者打印机。 \\192.168.0.8 (2)linux下: 方法1:使用smbclient 客户机以同样方式安装samba ①列出某个IP地址所提供的共享文件夹 sudo /usr/local/samba/bin/smbclient -L 192.168.0.1 -U username%password ②使用smbclient获取共享文件 sudo /usr/local/samba/bin/smbclient //192.168.0.1/Share -U username%password 执行成功后进入smbclient环境,出现命令提示符:smb:\> 这里可使用的命令有: ?:列出所有可用命令 cd:进入共享文件目录 del:删除某个文档 lcd:变换本机目录 ls:查看目前所在目录 dir:同ls get:下载单个文件 mget:下载多个文件 mput:上传多个文件 put:上传单个文件 rm:删除文件夹 exit:离开 方法2:使用mount进行挂载 可以使用mount挂载远程共享文件夹: sudo mount -o username=fzuir,password=123456 //192.168.0.1/Share /mnt/tmp
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页