在Ubuntu环境下做开发时,难免会遇到需要把程序共享给别人、或者自己备份一份的情况。用U盘拷贝当然可以,但如果频繁操作,来回插拔总归有点麻烦。有没有更好的方式?这里推荐一个非常实用的方案——使用Samba服务器来共享文件。
Samba本质上是一个免费软件,它在Linux和UNIX系统上实现了SMB协议,由服务器端和客户端程序共同构成。它的作用相当于在两种操作系统之间搭了一座桥,让Linux系统和Windows系统能够顺畅通信。通过Linux下的Samba服务,Windows主机可以直接访问Linux共享出来的目录,这对于跨平台开发来说简直不要太方便。
那么,具体该怎么操作?先从安装说起。
安装Samba
在Ubuntu中安装Samba非常简单,直接执行下面的命令即可:
sudo apt-get install samba smbfs smbclient system-config-samba
不过需要注意的是,如果你用的是Ubuntu 14.04版本,安装命令稍有不同:
sudo apt-get install samba samba-common system-config-samba python-glade2 gksu
简单解释一下这几个组件的作用:
- samba:Samba核心组件,提供文件共享服务。
- smbfs:支持SMB/CIFS协议的文件系统,方便挂载。
- smbclient:Samba客户端,用于访问其他机器共享的资源。
- system-config-samba:图形界面配置工具,对新手很友好。
图形界面配置Samba
安装完成后,可以通过图形化工具来配置,操作直观,不容易出错。
1)添加用户
首先需要添加一个Samba用户,这个用户必须是Linux系统已有的用户。配置界面会引导你完成用户名、密码等设置。





2)设置共享目录及其权限
然后指定要共享的文件夹,并设置访问权限(比如是否可写、是否允许匿名访问等)。这些都可以在图形界面里轻松完成。









测试使用
配置完成之后,总得验证一下好不好使。下面给出几个常用测试步骤。
1)网络连通性检查
Windows主机要访问Ubuntu的共享目录,前提是两台机器网络互通。可以用ping命令简单测试一下。比如在Ubuntu上ping Windows主机的IP地址:

2)获取Ubuntu的IP地址
在Ubuntu终端中输入ifconfig,就能看到当前IP地址。记下这个地址,后面要用。

3)在Windows中访问共享
在Windows主机上,按Win + R打开运行窗口,输入\\10.220.x.x\share(注意把IP换成你的Ubuntu实际IP,share是你设置的共享名),然后回车:

4)输入用户名和密码
系统会提示输入之前添加的Samba用户名和密码:

5)进入共享目录
认证成功后,就能看到共享文件夹里的内容了,跟访问本地磁盘一样。

映射网络驱动器
每次都要通过运行窗口输入路径访问,次数多了确实挺麻烦的。这里有个一劳永逸的办法——映射网络驱动器。
在Windows的“我的电脑”或“此电脑”中,右键选择“映射网络驱动器”,然后指定一个盘符,输入共享路径,勾选“登录时重新连接”,之后每次开机或打开我的电脑,都能直接看到这个共享目录,双击即可访问(前提是Ubuntu已经开机)。

如果哪天不想用了,也可以随时断开这个网络驱动器的连接。

遇到问题?重启服务试试
Samba服务偶尔也会出点小毛病,如果发现共享访问不了,先别急,重启一下服务往往就能解决:
sudo service smbd restart
以上就是Samba在Ubuntu下的安装、配置和使用流程。通过图形界面和映射驱动器,跨平台文件共享其实比你想象的要简单得多。
