Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
Samba服务为两种不同的操作系统架起了一座桥梁,使Linux系统和Windows系统之间能够实现互相通信,为广泛的Linux爱好者提供了极大方便。
安装Samba
sudo apt-get install samba-common smbclient samba
配置Samba
sudo vim /etc/samba/smb.conf
[xxx] //对外看到的共享文件名称 path = xxx //设置共享文件的路径 available = yes browseable = yes writable = yes valid users = xxx //指定可访问用户
添加登录用户和密码
sudo smbpasswd -a xxx //新加xxx用户名,根据提示输入两次密码即可
重启服务与重新加载
service smbd restart
service smbd reload
启动与停止samba服务
service smbd start
service smbd stop
可能会遇到防火墙问题
sudo apt-get install ufw //安装防火墙
sudo ufw disable //禁用防火墙
sudo ufw allow 455 //放行CIFS所用的端口
sudo ufw reload //重载
sudo ufw status //防火墙状态查询
Win下登录
win+r,输入Linux的ip地址和共享文件名称
附上配置时的一些参数说明:
1 comment 注释说明 2 path 共享资源的完整路径名称 3 browseable 是/否 在浏览资源中显示共享目录,若为否则必须指定共享路径才能存取 4 printable 是/否 允许打印 5 hide dot ftles 是/否 隐藏隐藏文件 6 public 是/否 公开共享,若为否则进行身份验证(只有当security = share 时此项才起作用) 7 guest ok 是/否 公开共享,若为否则进行身份验证(只有当security = share 时此项才起作用) 8 read only 是/否 以只读方式共享当与writable发生冲突时也writable为准 9 writable 是/否 不以只读方式共享当与read only发生冲突时,无视read only 10 vaild users 设定只有此名单内的用户才能访问共享资源(拒绝优先)(用户名/@组名) 11 invalid users 设定只有此名单内的用户不能访问共享资源(拒绝优先)(用户名/@组名) 12 read list 设定此名单内的成员为只读(用户名/@组名) 13 write list 若设定为只读时,则只有此设定的名单内的成员才可作写入动作(用户名/@组名) 14 create mask 建立文件时所给的权限 15 directory mask 建立目录时所给的权限 16 force group 指定存取资源时须以此设定的群组使用者进入才能存取(用户名/@组名) 17 force user 指定存取资源时须以此设定的使用者进入才能存取(用户名/@组名) 18 allow hosts 设定只有此网段/IP的用户才能访问共享资源 19 deny hosts 设定只有此网段/IP的用户不能访问共享资源