启动与停止:

service smb start //启动Samba服务
service smb stop //停止Samba服务
service smb restart //重新启动Samba服务

或者设置脚本启动

/etc/rc.d/init.d/smb start //启动Samba服务
/etc/rc.d/init.d/smb stop //停止Samba服务
/etc/rc.d/init.d/smb restart //重新启动Samba服务

配置文件目录:/etc/samba/
smb.conf //主配置文件
“#”与”;”是注释符.

smb主配置文件两部分,全局设置(global settings)与共享定义(share definitions)

全局设置设置有关samba服务整体运行选项,在[global]后设置.
共享定义设置共享目录的选项,一般使用[共享文件名]

全局变量参数(在[global]后设置):

workgroup //设备域名或工作组名始,该名称会出现Windows的网上领居和Linux的网络服务器中.如:workgroup = XMOMT
server string //设置Samba服务器的简要说明,即备注里的内容,如:server string = XMOMT PBX File Server
interfaces //设置Samba服务器监听的网络接口(网卡).如:interfaces = 192.168.10.2/24 192.168.10.3/24
hosts allow //允许访问samba的IP范围或域名.如hosts allow =  mail.rivox.cn, 192.168.10. EXCEPT 192.168.10.33 127.
load printers //设置是否共享打印机.load printers = yes
printcap //设置打印机类型,有bsd cups sysv plp lprng aix hpux qnx等.如printcap = cups
guest account //设置来宾账号(guest),此账号必须在/etc/passwd文件中,如guest account = nobody
guest ok = yes //设置是否允许来宾访问Samba.(这里不是此特定的共享文件或文件夹)
log file //设定日志文件,例子为每个登陆的用户建立不同的日志文件log file = /var/log/samba/%m.log
max log size //日志大不,单位KB max log size = 50
netbios name //设置fileserver.xmomtlocal.com
wins support //设置是否支持WINS,WINS服务的主要作用是将NetBIOS名称转换成对应的IP地址,默认不支持.如:wins support = yes
wins proxy //设置wins代理
dns proxy //设置dns代理

安全级别的设置,属于全局设置

security //设置Samba服务器的安全级别,有share、user、server、domain、ads五种安全级.如:security = user
share: 不需要输入账号和密码就可以访问服务器的共享资源.
user: 需要输入有效的用户名与密码,验证后才能使用服务器的共享资源.
server: 需要输入用户名和密码,但密码验证需要别一台服务器负责.
domain: 需要输入用户名和密码,采用域控制对用户账户和密码进行验证.
ads: Samba需要加入到Windows活动目录中(directory)

server、domain、ads都需要指定口令服务器,使用参数:
passwd server = My_PDC_NAME [My_BDC_NAME]
passwd server = * //自动查找域控制器.

设置密码认证时,是否加密口令

encrypt passwords = yes //对用户密码以加密方式发送.Windows操作系统采用加密码方式密码,如果此参数设置为”no”,需要修改Windows注删表.可以在/usr/share/doc/samba-3.0.25b/registry/下载合适的注册表文件.

配置用户认证通过”用户文件”、”密码文件”来实现.通过下列参数来指定两个文件

smb passwd file = /etc/samba/smbpasswd //samba服务的密码文件.该文件在创建samba服务账号时,自动生成smbpasswd这个文件,
//使用linux命令smbpasswd来创建用户与密码:smbpasswd -a linux用户名,输入两次密码,即可创建用户.创建用户名必须是linux现有用户,但它的密码与linux登陆时密码不同.
//创建linux用户与用户组参考命令useradd,groupadd
username map = /etc/samba/smbusers //设置samba用户文件.该文件作用是将Windows和Linuxt系统中不同账号,映射为一个用户账号.
//格式:Linux账号 = 需要映射的Windows账号列表,列表中用户需要用空格分隔.

共享定义参数

[document] //共享目录名称,在客户显示的
comment = document //对共享目录的描述(客户端中的备注)
path = /opt/samba/document //共享目录在服务器的路径
valid users = smbadmin,@sambauser //设置访问服务器的有效用户/用户组,拒绝以外的用户/用户组访问(@表示用户组)
browseable = yes //允许浏览共享目录
read list = @sambauser //设置只读权限用户/用户组列表(@表示用户组)
write list = smbadmin,@sambaadmin //设置可写用户/用户组列表(@表示用户组)
create mask = 0775 //设置创建文件的权限模式(rwxrwxr-x).
directory mask = 0775 //设置创建目录的权限模式(rwxrwxr-x).
guest ok = no //是否允许来宾用户访问.

testparm 命令来检查smb.conf是否有语法错误,如果”Loaded services file OK.”则表示正常.

启动Samba生效配置
——————————————————————————————-

创建Linux用户组

# groupadd sambaadmin
# groupadd sambauser

创建Linux用户账号与目录

# mkdir -p /files/users/xmomt
# useradd -g sambaadmin -G sambauser -m -d /files/users/xmomt -s /bin/false xmomt

设置磁盘限额

# vi /etc/fstab //修改磁盘限额
LABEL=/                 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
sysfs                   /sys                    sysfs   defaults        0 0
/dev/hda5               /svn                    ext3    defaults        0 0
/dev/hda6               /files                 ext3    defaults,usrquota,grpquota        0 0
/dev/hda7               /usr                    ext3    defaults        0 0
LABEL=SWAP-hda3         swap                    swap    defaults        0 0

# touch /files/aquota.user //创建用户限额配置文件
# touch /files/aquota.group //创建用户组限额配置文件
# reboot //设置fstab后,重新加载文件系统,如果正在使用,只能重启电脑
# edquota -p sambauser
Disk quotas for group users (gid 501):
Filesystem                   blocks       soft       hard     inodes     soft     hard
/dev/sda6                        20       27000      30000          5        0        0

Filessystem:表示当前启用磁盘限额的文件系统名称
blocks:表示当前用户已使用块数量大小
soft:表示软限制(非强制性限制)磁盘空间大小,单位为KBytes
hard:表示硬限制(强制性限制)磁盘空间大小,单位为KBytes
inodes:表示当前用户已使用文件个数
soft:表示软限制(非强制性限制)文件个数
hard:表示硬限制(强制性限制)文件个数
“0″表示没有不限制,把想要设置的数值填入对应项保存退出

# quotaon -augv //开启磁盘限额
-a参数:开启在/ect/fstab文件里,有加入quota设置的分区的空间限制;
-g参数:开启群组的磁盘空间限制;
-u参数:开启用户的磁盘空间限制;
-v参数:显示指令指令执行过程。

附:quota-查看用户/组磁盘限额情况,repquota查看某个文件系统的磁盘限额,包括用户和组限额