在windows网络环境中,主机之间进行文件和打印机共享是通过微软公司自己的SMB/CIFS网络协议实现的。SMB(Server Message Block,服务消息块)和CIFS(Common Internet File System,通用互联网文件系统)协议是微软的私有协议,在Samba项目出现之前,并不能直接与Linux/UNIX系统进行通信。
Samba是著名的开源软件项目之一,它在Linux/UNIX系统中实现了微软的SMB/CIFS网络协议,从而使得跨平台的文件共享变得更加容易。在部署Windows、Linux/UNIX混合平台的企业环境时,选用Samba可以很好地解决不同系统之间的文件互访问题。
选择高下载量的镜像拉取 docker pull dperson/samba
关闭必要端口防火墙,执行下面命令
1 | sudo iptables -I INPUT -p tcp --dport 139 -j ACCEPT |
运行执行以下命令后,在window本机使用window+R调出运行窗口,输入 linux主机的IP回车,比如 \\192.168.2.156
即可看到分享的xugz_tp5文件目录。选中目录右键选择映射网络驱动器选择喜欢的盘,即可在计算机中找到。如此可实现先共享文件夹到本地盘。
1 | docker run -it -p 139:139 -p 445:445 --name smb -d --rm \ |
Samba在docker镜像地址中介绍了很多参数选项,简单记录上条命令用到的
1 | -u "<username;password>[;ID;group;GID]" |