在进行跨平台时,有时候需要将程序放在linux下面去编译运行,但是码代码还是是在windows上进行的,毕竟windows上拥有更多的编码辅助工具,因此就涉及到在windows平台下码了代码后,如何快速将代码到linux下进行编译运行,一个比较好的方法就是建立一块共享区域,在该区域上,windows和linux都能识别该区域中的文件,这样就达到目标了。一个比较常用的方法就是搭建Samba服务进行。本文转自 https://blog.csdn.net/young_kp/article/details/78984064 详细介绍如下:
一、安装Samba
下载安装Samba
Ubuntu终端输入sudo apt-get install samba
修改/etc/samba目录下的配置文件smb.conf
下面的操作在终端操作,并且需要root权限 sudo -i
修改文件
sudo vim /etc/samba/smb.conf
进入文件后,在global部分做如下添加操作
在文件末尾添加如下图内容
当输入完毕以后,按下 :wq 保存退出
注意: 上面增加的内容 关键字这些最好不要输错 comment path 这两项可以自己按自己的来 ,我因为把 yes 输成了yse 导致后面一大堆错误,所以出错以后 一定要记得回来看这个地方是否错误
创建Samba用户
sudo smbpasswd -a pc (接着会提示输入密码,自己输入就可以)
激活用户
smbpasswd -e pc
重启Samba服务
sudo /etc/init.d/samba restart
二、设置连接
1、在Ubuntu根目录home中建共享文件夹share,设置文件夹属性为:选中“共享此目录”“允许其他人来创建和删除这个文件夹里的文件(A)”“允许匿名登陆(对于没有账号的用户)(G)。将others用户权限改为可读可写和可以创建删除文件
然后在【Group】这个选项位置,在下拉菜单中选择 sudo,如果不选择这个的话,将会导致 在共享文件夹中,从windows系统下只能访问共享文件夹中的文件,而不能修改,同理,linux也不能修改windows用户在此文件夹下创建的文件,所以一定要注意。
这一步很重要,因为你如果没更改权限的话,那么windows访问此区域的时候就一定不会成功,所以如果在操作时遇到不允许改正、删除等操作的时候,一定记得回到此处进行修改。
2、在Ubuntu终端输入 ifconfig 查看IP地址
3、在Ubuntu终端root权限下输入ufw disable关闭Ubuntu防火墙
4、在Windows平台关闭防火墙
5、在Windows平台打开dos窗口,输入 ping 192.168.147.129(此处的IP地址即是第2部中查到的IP地址)
已发送=4,已接收=4”表示Windows和Ubuntu网络正常
6、在Windows平台打开映射网络驱动器,在文件夹一栏中输入\\192.168.147.129\share点完成
7、设置成功后,则会在Windows计算机根目录中网络位置出现一个名为“share”的盘符。至此,Windows7和Ubuntu16.02通过Samba服务共享设置成功。
双击盘符,就可以进入对应驱动器中查看内容了。
三、我在设置中遇到的问题
1、增加samba用户提示Failed to add entry for user
解决办法:
这是因为没有加相应的系统账号,只需增加相应的系统账号pc就可以了:
[root@ubuntu ~]# groupadd pc -g 6000
[root@ubuntu ~]# sudo useradd pc -u 6000 -g 6000 -s /sbin/nologin -d /dev/null
2、最后连接的时候会提示启用网络发现,如下图设置即可。
四、参考声明
本文参考如下文章:
<https://jingyan.baidu.com/album/b87fe19e63458052183568e3.html?picindex=12>
<https://www.cnblogs.com/zhaopengcheng/p/5481048.html>
<http://blog.csdn.net/minenamewj/article/details/17356703>