一、相关介绍
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。Samba是 SMB/CIFS网络协议的重新实现,它作为NFS的补充使得在Linux和Windows系统之间进行文件共享、打印更容易实现。本文介绍如何在Linux环境下搭建Samba服务器和怎样在Windows下访问Linux共享文件。
SAMBA套件:
(1)samba:这个套件主要包含了SAMBA的主要daemon档案(smbd及nmbd),SAMBA的文档(document),以及其它与SAMBA相关的logrotate设定文件及开机预设选项档案等。
(2)samba-common:这个套件主要提供了SAMBA得主要设定档(smb.conf),smb.conf语法检验的测试程序(testparm)等。
(3)samba-client:这个条件则提供了当Linux做为SAMBA Client端时,所需要的工具指令,例如挂载SAMBA档案格式的执行档smbmount等。
二、配置步骤
备注:以下是在非root用户下的配置,如果是在root用户下,把sudo 去掉即可。
1、安装和卸载samba命令:
sudo apt-get install samba samba-common
sudo apt-get install smbclient
sudo apt-get autoremove samba
2、建立samba访问目录,并且增加目录的权限
sudo mkdir /home/myshare
sudo chmod 777 /home/myshare
3、samba服务添加用户(我的ubuntu用户名为:xiaow)
sudo smbpasswd -a xiaow (输入访问Samba的密码),这个密码很重要,请大家记住。
4、配置smb.conf
sudo vi /etc/samba/smb.conf
在文件最后添加
[myshare ]
comment=This is samba dir
path=/home/myshare
create mask=0755
directory mask=0755
writeable=yes
valid users=xiaow
browseable=yes
path为你上面建立的共享目录/home/myshare,
valid users为你访问Samba的用户xiaow
其他条件写读和创建文件及文件夹的权限
5、启动、停止、重启Samba服务:
启动Samba服务器只需执行如下命令:
sudo /etc/init.d/samba start
关闭Samba服务器:
sudo /etc/init.d/samba stop
重启Samba服务
sudo /etc/init.d/smbd restart 或者 sudo service smbd restart
注:修改了smb.conf配置文件,需要重启Samba服务才生效 我这儿直接重启Samba服务器
6、ifconfig查看ip地址
注意:这里虚拟机里面的ubuntu一定要和windows主机能够相互ping通。我这儿虚拟机网络连接采用NAT模式才能ping通windows主机,如果可以ping通windows主机,则此步骤略过。
6.最后打开我的电脑,空白位置右键添加一个网络位置
输入 \\ip地址(linux)\myshare 按提示步骤输入用户名和密码。
然后会出现这个快捷方式,双击出现输入用户名和密码的提示框,我这里输入的是Ubuntu的用户名xiaow以及刚才要求大家记住的密码
然后我往myshare文件夹里面放入一个文件file.txt,在Linux下也可查看到。
如此,Linux下Samba服务器的搭建以及配置圆满完成。