Centos7x搭建samba服务器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7x搭建samba服务器相关的知识,希望对你有一定的参考价值。
1.简介
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBios over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
2.环境
操作系统:Red Hat Enterprise Linux Server release 7.2 (Maipo)
IP:10.0.1.16
安装包:samba-4.6.4
3.部署
3.1 下载samba-latest.tar.zip文件
到官网http://www.samba.org下载最新版的samba源码包(目前最新版本是samba-4.6.4)3.2 安装
A. 安装依赖包和编译环境
yum install gnutls-devel python python-devel python-lib* libacl-devel openldap-devel -y
yum install gcc icc ICL cc -y
B.用filezilla或者winscp把samba-latest.tar.zip上传到/usr/local目录下,然后解压
tar -zvxf samba-latest.tar.zip
解压后会多了一个samba-4.6.4目录,然后进入samba-4.6.4目录
cd samba-4.6.4
B. 运行./configure脚本侦测作业环境
C. 编译安装
make && make install
3.3 配置samba
默认是没有smb.conf这个配置文件的,需要从安装包samba-4.6.4/packaging/LSB/下复制smb.conf到/usr/local/samba/etc下,使用如下命令
cp packaging/LSB/smb.conf /usr/local/samba/etc/
3.3.1 配置共享目录
vim /usr/local/samba/etc/smb.conf
默认共享home目录,也可以按照对应格式自定义共享目录,但是共享目录要存在,例如
[pub] 共享的路径
security=user 需要密码认证
valid users = test 可认证的用户
path = /homes/test 共享的目录
writable = yes 可写
browsable=yes 可读
3.3.2 创建samba用户
samba所使用的用户,必须是系统用户,并且需要加入到samba用户中。例如:
#创建系统本地用户
useradd test
passwd test
密码设置为test
#创建samba用户
pdbedit -a -u test #添加一个samba用户
pdbedit -x -u test #删除一个samba用户
pdbedit -L #查看samba用户
3.3.3 启动samba
/usr/local/samba/sbin/smbd
netstat -anutp | grep smbd #查看是否启动
3.3.4 创建自定义服务开机启动
vim /lib/systemd/system/smb.service
添加
[Unit]
Description=samba
After=syslog.target network.target nmb.service winbind.service
[Service]
Type=forking
ExecStart=/usr/local/samba/sbin/smbd start
ExecReload=/usr/local/samba/sbin/smb_restart.sh
ExecStop=/usr/local/samba/sbin/smb_stop.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target
注:为避免格式问题,请手动输入
3.3.5 创建smb_restart.sh,smb_stop.sh脚本
cd /usr/local/samba/sbin/
vim smb_restart.sh
添加
pid=`cat /usr/local/samba/var/run/smbd.pid`
kill $pid
/usr/local/samba/sbin/smbd
vim smb_stop.sh
添加
pid=`cat /usr/local/samba/var/run/smbd.pid`
kill $pid
注:为避免格式问题,请手动输入
4.测试
启动smb服务
#systemctl start smb
#systemctl restart smb
A. Linux客户端测试
先挂载共享目录
mount -t cifs //10.0.1.16/test /mnt -o username=test
如果出现如下报错:
请执行命令:yum install cifs* -y
查看挂载是否成功
df -h
开机自动挂载
vim /etc/fstab
添加
//10.0.1.16/test /mnt cifs username=test,password=test,dir_mode=0777,file_mode=0777 0 0
#chmod 700 /etc/fstab
注意:红色区域是连起来一行
B. Windows客户端测试
开始-->运行-->输入//10.0.1.16/test
以上是关于Centos7x搭建samba服务器的主要内容,如果未能解决你的问题,请参考以下文章