开发环境之-SAMBA

来源:互联网 发布:如何下载整个网站源码 编辑:程序博客网 时间:2024/05/08 22:03

windows与Linux通过Samba进行 映射

之前用的开发环境是用phpstorm自带的一个与本地linux虚拟机连接访问代码的功能,本质是将虚拟机的代码下载一份到本地,然后本地修改可以自动上传。但是这样会有个问题,折这个机制下,本地的修改是可以即时同步到虚拟机,但是虚拟机的修改不能即时同步到本地,需要手动点击下载。

也就是说,如果只有一个人开发,那这套环境是没问题的,因为一般不会去直接去修改虚拟机上的代码。 但是,涉及到多人开发时,使用putty等工具连接到虚拟机,然后git代码到虚拟机后,虚拟机上的代码是更新了,但是本地的代码并没有更新。如果这时候在本地按了保存代码ctrl+s,那么这份代码就会覆盖掉虚拟机的代码,这时候虚拟机的代码就有问题了,如果再粗心将虚拟机的代码push到远程代码库,那就会导致覆盖别人的代码。

所以需要映射。

  1. yum install -y samba

  2. vi /etc/samba/smb.conf

  3. 找到“MYGROUP”,改成“WORKGROUP”

  4. 到文档尾部加上
    [自定义名称]
    comment = Public Stuff
    path = 存放项目的目录 # 例如:/data/wwwroot
    public = yes
    writable = yes
    printable = no
    write list = +staff

  5. 保存并退出

  6. smbpasswd -a 自定义登录用户名称,如www
    输入登录密码:
    确认登录密码:

  7. 开启开机自启动
    chkconfig –add smb
    chkconfig add smb
    chkconfig –add nmb
    chkconfig add nmb
    手动启动
    smbd
    nmbd

  8. 到windows上,打开计算机,上面菜单栏找到“映射网络驱动器”

  9. \你的虚拟机ip\第4步的自定义名称

  10. 如果弹出登录凭据对话框,请输入第6步设置的用户和密码进行登录

  11. 成功会以普通硬盘驱动器一样进入到第4步设置的目录

  12. 使用PHP IDE 打开项目就行啦

  13. 可能还需要配置Xdebug远程断点调试?那等上面的都成功再说吧

注意事项:
1.path目录不要设置到项目的根目录,要设置存放项目目录的目录,因为在windows上连接打开的是你设置的目录,ide连接的时候,你就选择不到你的项目根目录了
2.这个可以设置多个目录进行连接,如果你还有其他目录需要用windows访问,比如要从windows上复制文件到虚拟机上,可以另外设置一个单独的目录,[名称]别重复就行
3.从windows上通过samba复制过去的文件,默认是有x权限的,比如一个file原来是644的权限,复制到虚拟机就会变成755(?),反正颜色会变绿
4.security=share就不用输入用户密码比较不安全,大家知道你的ip就可以连接你的了
5.smbpasswd 设置的用户可以不设置密码,提示输入密码的时候只要enter跳过就可以了,这个用户名要真实存在的linux user
6.记得关闭iptables 和 selinux
7.service nmb restart;service smb restart 重启服务是这两个命令
8.每次修改文件的时候都会把文件加上一个执行权限,很不方便,vim /etc/samba/smb.conf 把一下语句取消注释,再重启服务即可。
map archive = no
map hidden = no
map read only = no
map system = no
store dos attributes = yes

参考博客:http://blog.chinaunix.net/uid-23069658-id-3142052.html?page=2
0 0
原创粉丝点击