Centos7x搭建samba服务器
admin
2023-03-21 12:21:42
0

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

Centos7x搭建samba服务器 

默认共享home目录,也可以按照对应格式自定义共享目录,但是共享目录要存在,例如

[pub]共享的路径

        comment = share to public 描述

        path = /share/time 共享路径

        valid users = test 访问共享文件夹的用户

        write list = test  访问共享文件夹的用户组

        printable = no    不允许打印

        create mask = 0755 创建文件的权限

        directory mask = 0755 创建目录的权限

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客户端测试

创建挂载点

mkdir /mnt/samba

赋予用户写权限

# setfacl -m u:test:rwx /share/time/     

先挂载共享目录

mount -t cifs //10.0.1.16/pub  /mnt/samba  -o username=test

如果出现如下报错:

Centos7x搭建samba服务器 

请执行命令:yum install cifs* -y

查看挂载是否成功

df -h

Centos7x搭建samba服务器 

开机自动挂载

vim /etc/fstab

添加

//10.0.1.16/pub /mnt /mnt/samba cifs  credentials=/etc/samba/test.passwd  0 0

vi /etc/samba/zhi.passwd         ##防止密码泄露,所以另建文件

username=zhi

password=abcdef

#chmod 600 /etc/samba/test.passwd          ##设置该密码文件权限

#umount /mnt/samba                     ##卸载

B. Windows客户端测试

开始-->运行-->输入//10.0.1.16/pub


相关内容

热门资讯

AI开源公开信签署企业增至50... IT之家 7 月 26 日消息,英伟达、微软、IBM、Meta 等 25 家美国科技企业本周(7 月...
南阳快手短视频代运营企业的服务... 在短视频平台快速发展的背景下,企业通过快手等渠道进行内容运营已成为常见的市场动作。对于希望借助短视频...
普通人该如何跟上科技发展的步伐 这个被称作科技的词汇, 听起来既有宏大之感, 又颇为遥远, 好似仅仅归属于在实验室里专心致志钻研的科...
原创 王... 菲尔兹奖名单一出,邓煜和王虹两位华人数学家共同获奖,本应是一件令人振奋的喜讯。然而,王虹那段仅3分1...
《万物》杂志首个阅读空间亮相正... 26日,由国内知名的青少年家庭科普期刊《万物》杂志与广州正佳自然科学探索中心联合打造的阅读互动空间—...
从康复机器人到脑机接口 智能康... 天津北方网讯:对脑卒中患者来说,重新抬起手臂、迈出一步,往往需要持续的康复训练,逐步恢复运动功能;对...
原创 苹... 当苹果、谷歌、斯坦福、麻省理工都无法留住一位年轻的中国AI天才时,究竟是什么力量吸引他毅然回国?为何...
为什么新能源车供应链要本地化? 当前汽车产业变革加速,电动化成为核心发展方向。车企为了在激烈市场中站稳脚跟,必须优化生产结构。其中,...
携程罚单的真正影响,不是酒店变... 文 | 听风译码 7月25日,市场监管总局对携程开出51.79亿元天价罚单。 全网叫好。 但如果你...
自己管理自己,我国成功发射两颗... 7月24日消息,力箭一号遥十五运载火箭今日在东风商业航天创新试验区成功发射,以“一箭5星”方式将5颗...