Linux之samba服务器的搭建与详解

Linux之samba服务器

首先介绍一下samba的由来
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。
原本SMB协议是windows和windows(网上邻居)之间分享资源的一种协议。
Linux找到微软,也想把该协议用在window和Linux的文件共享上,可微软没有同意,于是Linux通过逆向方法实现了SMB协议,为了与SMB区分并将其取名为SAMBA协议。
下面开始samba服务器的安装及使用吧

1.samba服务器的安装
在终端输入sudo apt-get install samba进行安装

sudo apt-get install samba

2.启动samba服务器
一般来说,安装好samba后就会自动running,通常情况下启动samba需要启动两个服务,一个是smbd,另一个是nmbd,命令分别是

sudo /etc/init.d/smbd restart    //启动smbd服务
sudo /etc/init.d/nmbd restart    //启动nmbd服务

3.配置samba
samba的配置文件在 /etc/samba下的smb.conf中,不同的Linux版本配置文件位置可能不同,可以通过网上查找得到。
需要配置的是共享哪个目录,以及这个目录的访问权限
首先进入配置文件所在位置

cd /etc/samba/

输入ls查看目录内容
Linux之samba服务器的搭建与详解
可以看到有三个,分别是gdbcommands、smb.conf和tls(bak_smb.conf是我自己添加的),其中smb.conf就是我们需要修改的配置文件,为了避免修改错误,所以最好备份一下

cp smb.conf bak_smb.conf

接着通过vi编辑器或gedit,编辑smb.conf,在最后添加我们自己的配置(如果使用的是vi编辑器,可以在命令行模式下按G直接将光标定位到最后一行,然后按i编辑即可)
在smb.conf最后添加如下代码(注意:是writable不是writeable,没有e,然后前面是退格键Tab)

[linux_share]
        comment = My share
        path = /home/linux/lab
        writable = yes
        browseable = yes

解释一下各行的意思
[linux_share]:在配置文件中,如果想要加入一个新功能,就用方括号,然后里面写上名称,这里将共享文件功能命名为linux_share
comment:commen表示标题(随便写)
path:表示共享目录,这里我是设置在home的linux用户下的lab文件夹下(如果没有这个文件夹一定要去创建哦,否则最后没法操作)
writable = yes:表示可写
browseable = yes:表示可浏览


4.配置samba的用户权限
samba有自己的一套用户和密码,命令添加samba用户

sudo smbpasswd -a linux    //-a表示add,linux是虚拟机中已经有的用户名

5.重启samba服务

sudo /etc/init.d/smbd restart    //启动smbd服务
sudo /etc/init.d/nmbd restart    //启动nmbd服务

6.Windows下登录samba
下面在windows下登录samba,在开始菜单中进入运行,输入\+ip
ip可以通过终端输入ifconfig得到
Linux之samba服务器的搭建与详解
点击确定后出现
Linux之samba服务器的搭建与详解
可以发现该网络驱动的名字就是第三步配置中方括号里的名字,信息提示是comment的内容此时双击进去就可以看到共享目录下的文件了
Linux之samba服务器的搭建与详解
可以看到和我Linux本地的目录是同样的
Linux之samba服务器的搭建与详解
现在就可以在Windows下查看Linux下共享目录中的文件了,当然也可以用Windows的方式新建修改文件了。


7.映射网络驱动器
为了更好的体验共享文件的功能,这里也可以像Windows一下,将共享文件目录作为一个盘符,加在Windows下。
操作如下:
在此电脑中找到映射网络驱动器,点击“映射网络驱动器”
Linux之samba服务器的搭建与详解
然后按照以下输入
Linux之samba服务器的搭建与详解
随便选择一个盘符(我事先选择了Z盘),后面加上linux_share(你自己在第三步设置的功能名称),点击确定,会发现多了一个Z盘,
Linux之samba服务器的搭建与详解
双击新添加的盘,即可像操作Windows下的文件一样操作Linux下的文件了。

Linux之samba服务器的搭建与详解
PS:今天刚学,趁热打铁,如有不恰当的地方,还望大佬们评论区指出。

上一篇:centos7 samba安装教程


下一篇:Linux之SAMBA文件共享服务器