Samba的服务器程序可以实现以下主要功能:
◆文件及打印共享;
◆计算机名与IP的解悉;
◆WINS服务的支持;
◆用户权限设置(如果配合Linux的Quota还可以实现用户磁盘空间配额)。
Samba服务器有两个进程
1)smb进程用的是tcp的139和445号端口用于资源共享,
2)nmb进程用的是udp的137和138号端口用于名称解析
一.samba所需要的软件包
samba-common-3.0.33-3.14.el5.i386需要的工具和库文件,服务器客户机都需要
samba-3.0.33-3.14.el5.i386 主服务程序
samba-client-3.0.33-3.14.el5.i386 客户端工具
二,安装samba
先检测一下有没有安装
rpm -qa|grep samba
rpm安装: rpm -ivh samba-common-3.0.33-3.14.el5.i386
samba的主配置文件在/etc/samba/目录下
# ll
s-rw-r--r-- 1 root root 20 May 28 2009 lmhosts
-rw-r--r— 1 root root 3063 Aug 28 07:42 smb.conf 主配置文件
-rw-r--r-- 1 root root 97 May 28 2009 smbusers
Samba安装后,可以看见/etc/samba这样一个目录,里面存放着与Samba相关的一些文件,如lmhosts、smb.conf、smbpasswd等
三.查看安装的目录和文件
rpm -ql samba
rpm -ql samba-client
/etc/samba 配置文件存放主目录
/etc/samba/smb.conf 主配置文件
/etc/samba/smbpasswd samba帐户文件
/etc/samba/lmhosts 用户netbios解析的配置文件
/etc/pam.d/samba samba的PAM配置文件
/etc/rc.d/init.d/smb 启动脚本文件
/etc/samba/smbusers samba用户映射
/usr/bin/smbstatus 可以查看samba服务器的连接状态信息
/usr/sbin/nmbd samba应用程序
/usr/sbin/smbd samba应用程序
/usr/bin/smbclient samba客户端访问工具
/usr/bin/smbmount samba客户端挂载工具
四:samba服务器的控制
启动samba服务:
service smb start
查看后台运行的smbd和nmbd这两个进程:
ps -aux | grep [sm,nm]bd
五:应用
(1) 创建需要共享的目录
mkdir -p /var/share
cd /var/share
mkdir public training devel
chown root.net devel
chmod 775 devel
ls -ld devel
(2) 建立相关系统用户、组并添加samba用户
#添加普通员工账户
useradd chenxiang
useradd huajuan
passwd chenxiang 回车
passwd huajuan 回车
#添加技术组tech
groupadd tech
#添加项目组net
groupadd net
useradd -g tech chenxiang
useradd -g net -G net huajuan
smbpasswd -a chenxiang
smbpasswd -a huajuan
修改smb.conf配置文件,添加共享设置
vi /etc/samba/smb.conf
[global]
security = user //默认的是security=share表示匿名帐号也可以登陆 security=user表示要进行身份验证 security=samba表示要用本地帐号进行验证 security=server表示要用其它服务器进行验证
username map = /etc/samba/smbusers //开启帐户映射功能,设置虚拟帐户映射增加安全性
[public]
comment = public directory //目录解释
path = /var/share/public //目录路径
public = yes
read only = yes //只读
valid users = chenxiang,@tech #可以是用户名,也可以是组!
[training]
comment = technical information
path = /var/share/training
public = no
writeable = yes //可写
valid users = huajuan,@net #可以是用户名,也可以是组!
//开启帐户映射功能,设置虚拟帐户映射增加安全性
修改/etc/samba/smbusers文件
smb用户 = 虚拟用户
chenxiang = a1
huajuan = a2
.........................................................