1.安装:
yum -y install samba samba-client samba-common数据库
2.启动:
systemctl start nmb.service
nmdb:
这个daemon是用来管理工做组、NetBIOS(Network Basic Input/Output System) name等解析工做。
主要利用UDP协议开启13七、138端口来负责解析任务。
systemctl start smb.service
smdb:
这个daemon是用来管理samba主机分享的目录、档案和打印机等。
主要利用TCP协议来传输数据,开发139端口。bash
3.主要配置文件:
/etc/samba/smb.conf:samba主配置文件,包含global配置和共享资源配置。服务器
[global] workgroup = MYGROUP server string = Samba Server Version %v log file = /var/log/samba/log.%m ###samba log日志 max log size = 50 security = user ## 配置user层级 passdb backend = tdbsam ## 使用TDB数据库格式 load printers = no ##打印服务 printing = bsd printcap name = /dev/null disable spoolss = yes ============================ Share Definitions ============================== ##[homes] comment = Home Directories browseable = no writable = yes valid users = %S valid users = MYDOMAIN\%S ##[printers] comment = All Printers path = /var/spool/samba browseable = no guest ok = no writable = no printable = yes [public] comment = 公共文件存放 path = /data/smbshare/public #read list = xxx create mask = 777 directory mask = 777 public = yes writeable = yes [rulefiles] comment = 公司制度文件 browseable = yes ##可被其余人浏览 create mask = 777 directory mask = 777 path = /data/smbshare/rulefiles ##共享的目录,Samba服务器共享出来的路径 read list = aaa,bbb write list = aaa,bbb valid users = aaa,bbb
修改配置完 /etc/samba/smb.conf从新检查一下语法:testparmdom
/etc/samba/lmhosts配置文件: 对应NetBIOS name的IP,lmhosts对应主机名是NetBIOS name。 相似/etc/hostside
4.建立共享目录设置权限,建立samba帐号和密码
创建系统帐号:测试
mkdir -p /data/smbshare/public useradd -G users smb1 useradd -G users smb2 useradd -G users smb3 echo 1234 | passwd --stdin smb1 echo 1234 | passwd --stdin smb2 echo 1234 | passwd --stdin smb3
samba使用 pdbedit命令将建立的系统帐号添加成Samba用户。早期使用smbpasswd命令,后使用TDB数据库,因此使用pdbedit命令管理samba用户数据。
使系统帐号添加成Samba用户:pdbedit -a -u smb1 pdbedit -a -u smb2 pdbedit -a -u smb3
列出当前Samba数据库中帐号与UID等详细信息:pdbedit -vL
日志
bash /root/smbuser.sh 用户名code
#!/bin/bash username=$1 passWD=`</dev/urandom tr -dc A-Za-z0-9 | head -c6` useradd $username -s /sbin/nologin 1>/dev/null 2>&1 echo -e "$passWD\n$passWD" | smbpasswd -a $username -s echo "用户名:$username 密码:$passWD" echo "$username $passWD" >> pass.file
5.Linux客户端安装:
yum -y install samba-client samba-common
挂载测试:/usr/bin/mount -t cifs //192.168.2.200/smb1 /mnt -o username=smb1,password=4321
df -hserver