背景
某些开发需要同时用到Windows和Linux环境,多个机器切换比较麻烦,所以这里尝试想要搭建一个“以Windows为主要开发环境,以Linux作为辅助编译和执行环境,NAS作为代码存储和交互”的开发环境。
准备
一台Windows主机(Windows 10),一台Linux主机(Ubuntu18.04),一台NAS。
环境搭建
需要分为不同端说明。
Windows10端
1. 代码编辑器和编译器,因为Windows下的开发比较熟悉,编辑器和编译器也用的比较顺畅,具体使用什么编辑器和编译器因人而定,这边主要使用的是VS Code和VS Studio 2013。
2. SSH连接工具,用来连接到Linux服务器上,这里选择XShell,它有免费的版本,以下是连接到Ubuntu上的界面:
如果有需要在Linux下编译,就通过该界面进行操作。
3. 创建NAS访问目录(需要在NAS端配置SMB,见下面的内容),在如下的界面点击右键选择创建网络位置:
红色框中是已经创建好的,根据下图的指示一步步就可以创建网络位置:
Linux端
1. 首先为了Windows下能够通过SSH访问到Linux端,就需要在Linux端安装SSH服务器,默认情况下Ubuntu18.04是没有安装SSH服务器的,所以需要手动安装,安装命令如下:
sudo apt install openssh-server
安装完成之后还需要打开:
sudo /etc/init.d/ssh start
2. 其次就是需要使用到的编译器如GCC和其它工具等,这个需要根据实际使用情况安装。
3. 为了在Linux下访问到NFS,还需要安装NFS工具:
sudo apt install nfs-common nfs-kernel-server
之后就可以通过命令来挂载NFS(NAS端需要配置NFS,见下面内容):
mount -t nfs 10.0.0.13:/volume1/code /mnt
之后就可以访问对应到NAS上的数据(IP和目录要根据实际情况修改)。
目前还有一个问题,上述的mount只能在root权限下做,如果是在用户权限下做mount,之后无法进入mnt目录:
NAS端
NAS端主要是用作Windows和Linux端的数据存储中转站,需要保证Windows和Linux都可以正常访问。
这里使用的是群晖的NAS,不同品牌的NAS操作可能有差异,这里仅以群晖DS218Play型号的设备为例。
1. 打开SMB:
然后在Windows下就可以通过\\DataBase来访问了(DataBase是这边的NAS的名称,需要根据实际情况修改)。
2. 打开NFS:
下面是配置完成之后Windows和Linux下访问代码的图示:
后记
本次搭建的环境能够保证使用,但是关于成本,安全性,性能以及其它的问题,目前还没有考虑到。