当前位置: > Linux服务器 >

samba 共享服务器 安装 配置

时间:2014-05-04 23:37来源:linux.it.net.cn 作者:it

一,什么是samba

samba是一个工具套件,在Unix上实现SMB(Server Message Block)协议,或者称之为NETBIOS/LanManager协议。SMB协议通常是被windows系列用来实现磁盘和打印机共享。

简单的说,samba可以搭建一个共享服务器,windows用户可以共享linux的文件。

 

二,安装配置samba

1,安装

  1. yum install samba system-config-samba samba-client samba-common  

如果找不到包,请换epel源,我博客里面搜一下就行了。

2,配置

[root@samba etc]# mv /etc/samba/smb.conf /etc/samba/smb.conf_bak //备份
[root@samba etc]# vim /etc/samba/smb.conf  //添加以下内容
[global]
workgroup = SMBGROUP
netbios name=samba
server string = Samba Server
client  code  page=950
log file = /var/log/samba/%m.log
max disk size =1000
max open file =100
security = share
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd 
[homes]
comment = Private Directories
browseable = no
writable = yes
valid users = %S
create mode = 0755
directory mode = 0755
[public]
comment = Public
path = /var/www/public
create mode = 0777
directory mode = 0777
public = yes
writable = yes

 

参数说明:

[global]参数说明

1,workgroup 这是设置服务器所要加入的工作组的名称
2,netbios name 主机名,代替IP用,例如\\192.168.1.108\public可以换成\\smb-server\public
3,server string 这是设置服务器主机的说明信息
4,client code page 设置客户端访问Samba 服务器时所使用的字符编码表,950支持中文
5,log file 这一选项要求Samba服务器为每一个连接的机器使用一个单独的日志文件
6,max log size 指定日志文件的最大容量(以KB为单位),设置为0,表示没有限制。默认值为5000
7,max disk size 设置能够共享的最大磁盘空间,单位为MB,默认值为0,表示不作任何限制。
8,max open file 设置同一客户端最多能打开文件的数目,默认值为10000个。
9,security 设置Samba服务器的安全等级。默认情况下,使用user等级。

#Samba服务器一共有四种安全等级。
share: 使用此等级,用户不需要帐号及密码可以登陆Samba服务器。
user: 使用此等级,由提供服务的Samba服务器检查用户帐号及密码。
server: 使用此等级,检查帐号及密码的工作可指定另一台Samba服务器负责。
domain: 使用此等级,需要指定一台Windows NT/2000/XP服务器(通常为域控制器),以验证用户输入的帐号及密码。

10,encrypt passwords 是否采取密码加密的方式
11,smb passwd file 设置在Samba服务器上存放加密的密码文件的位置

[public],[homes]共享目录参数说明

1,comment 针对共享资源所作的说明、注释部分
2,browseable 设置用户是否可以看到此共享资源,默认值为yes
3,writable 设置共享的资源是否可以写入
4,create mode 设置文件的访问权限,默认值为0744。
5,directory mode 设置目录的访问权限,默认值为0755。
6,path 若共享资源是目录,则指定目录的位置;若为打印机,则指定打印机队列的位置。
7,read only 设置共享资源是否只读或可以写入,默认值为yes
8,Public 是否允许用户不使用帐号和密码便能访问此资源
9,avalible 设置是否启用此共享资源。默认值为yes。若将此参数设置为no,则不管其他参10,数设置为什么,所有人均不得使用此资源。
11,valid users 可访问的用户局限于用户自己。%S会被自动转换为登录帐号。

三,设置共享目录

[root@samba etc]# mkdir -p /var/www/public
[root@samba etc]# chmod -R  777 /var/www/public

 

[homes]我并没有指定path,可登录的linux用户都有一个自己的根目录。

四,samba密码文件设定,以及用户密码设置

查看复制打印?

[root@samba  etc]# cat /etc/passwd | mksmbpasswd.sh  >  /etc/samba/smbpasswd  

[root@samba  etc]# chmod  500  /etc/samba  

[root@samba  etc]# chmod  600  /etc/samba/smbpasswd  

[root@samba  etc]# smbpasswd -a zhangy  

将未加密的/etc/passwd文件转换成加密的smbpasswd文件。基于保密的原则,将/etc/samba目录的权限设为500,该文件的权限设为600,以避免他人取得密码文件。

zhangy这个用户是系统用户,本来有一个linux密码,但是连接samba的时候不能用,所以要用smbpasswd重新设置一下密码。

五,启动samba服务端,客户端连接

  1. [root@samba etc]# /etc/init.d/smb start  

客户端连接有【开始】=》【运行】=》【cmd】回车中输入:\\192.168.1.108\public就可以了。如果只输入\\192.168.1.108,这样默认进入个人用户目录需要输入用户和密码。

六,samba共享目录,映射windows盘符

下面用win7的机子,做的映射。security=user的情况下做的,也就是说要密码的。

【计算机】=》右键网络=》【映射网络驱动器(N)...】=》

win7 映射网络驱动器

win7 映射网络驱动器

其后在输入用户名和密码,如果是security=share下面这一步就可以省去。

win7映射samba输入密码

win7映射samba输入密码

看一下映射成功后的

win7 映射成功

win7 映射成功

(责任编辑:IT)
------分隔线----------------------------