前记
由于公司编译服务器上没有安装samba,所以需要搭建一个Linux虚拟机用于跳板,对本地提供samba服务,对编译服务器提供nfs服务,实现share文件夹内的内容本地与编译服务器共享,虽然挺简单的,但是一些细节还是容易出错,也为了下次减少上网搜索的时间,故记录一下。
虚拟机软件
刚开始时选择了virtualbox来作为windows上的虚拟机软件,但安装后发现最新的virtualbox 5.2版本在window7上没有安装上桥接模式的网卡驱动,而要实现本地与虚拟机,编译服务器与虚拟机都互通必须使用桥接模式。
上网查找了一段时间发现有说是需要手动重新安装这个驱动 –> VituralBox无法桥接问题解决办法。
但是这个方法在本地测试后并没有生效,故最终放弃选择vmware player来作为虚拟机软件。
从官网下载安装vmware player完成后,在控制面板/网络和Internet/网络连接会多出两张网卡VMnet1和VMnet8,一张是用于host only模式,一张是用于桥接模式,有了这两张虚拟网卡说明网卡驱动已经正常安装了。
创建虚拟机并安装Linux
在vmware选择新建虚拟机,在弹出的向导中的安装程序光盘镜像文件(ios)
选择下载好的ubuntu镜像文件,而后一直按下一步即可,当然在过程中如果觉得默认的资源大小不合适也可以重新配置分配。
在安装过程中,遇到了一个无法连接MKS:套接字连接尝试次数太多正在放弃
的问题.这是由于vmware的服务没有正常启动。
解决办法: 我的电脑 -> 右键 -> 管理 -> 服务和应用程序 -> 服务,确保下面红框中的服务都已经启动,否则右键手动启动。
虚拟机设置
在vmware/管理/虚拟机设置中将网络连接改为桥接模式,重启Linux。
如果重启后Ubuntu对应网卡的ip已经和本地windows的ip在同一个网段,说明已经配置成功。
还有安装后Ubuntu最好更换一下源,这样下载软件会更快一点: 修改Ubuntu源列表, 如果公司内部有专门的源也可以使用公司内部维护的源.
samba安装与配置
# 1.Ubuntu安装samba
sudo apt-get install samba
# 2.修改配置文件
sudo vi /etc/samba/smb.conf
# 在最后添加以下内容
[share]
path = /home/myname/share
valid users = myname
available = yes
browseable = yes
writable = yes
public = no
create mask = 0644
directory mask = 0755
# 3.创建Samba用户(登录samba共享目录时需要)
sudo smbpasswd -a myname
# 4.重启samba
sudo serivce smbd restart
在windows上的文件资源管理器里面,输入\\192.168.0.216\share
,IP为对应Ubuntu的IP,然后输入用户名(share)和密码后就可以访问了。
也可以把这个文件添加到此电脑的快捷访问列表里面,通过文件资源管理/此电脑/添加一个网络位置,然后在向导里面的Internet地址或网络地址(A)
下面填写上面那个地址(\\192.168.0.216\share
)即可。
nfs安装与配置
参考链接
服务器端
# 1.安装
sudo apt-get install nfs-kernel-server
# 2.修改配置文件
sudo vim /etc/exports
# 添加以下内容
/home/myname/share *(rw,sync,no_root_squash,no_subtree_check)
# 3.重启nfs服务
sudo /etc/init.d/nfs-kernel-server restart
客户端
# 1.检查客户端与服务端网络是否连接
ping 服务端IP
# 2.查看服务端的共享目录
showmount -e 192.168.0.216
Export list for 192.168.0.216:
/home/myname/share *
# 3.将该目录挂载到本地
mount 192.168.0.216:/home/myname/share /mnt
至此本地windows,跳板机和编译服务器就可以共享一个文件目录了。