windows實機 與 Vmware的linux虛機 實現samba等共享目錄方案

搭建PHP開發環境時, 若是是單一操做系統, 不管 純windows 開發仍是 純linux 都會有諸多不便。php

純windows: 開發環境與線上linux環境的不一致每每形成一些部署問題
純linux: 許多經常使用windows軟件沒法使用

 

因此一種常見的php開發環境搭建以下:python

搭建虛擬機, vmware下跑linux服務器版, window下secureCRT遠程管理該虛機。
windows實機與linux虛機間共享一個目錄, windows下的PHPStorm等IDE在該共享目錄下開發。
但在linux下運行該項目的web服務, 服務測試在windows下的瀏覽器中進行。

 

 

其中windows實機與linux虛機共享目錄的實現方法有多種。

一。利用Vmware自帶的共享目錄功能, 將window下的共享目錄 共享給linux虛機,這點可在虛擬機配置對話框中進行。linux

該策略會涉及兩方面問題。
第一點
    因爲系統環境的不一樣, 常常會碰到共享目錄在linux下沒法讀出,解決方案根據ubuntu仍是centos各有不一樣。
    ubuntu解決方案網上較多, centos解決方案請見 http://my.oschina.net/u/2400083/blog/474940。 
第二點
    因爲共享的是windows文件格式協議的目錄, 因此在虛擬中,該共享目錄不支持 權限設定 和 軟連接。 
    這點至關致命, 尤爲是碰到作相似於symfony框架項目的開發, 其中每每涉及到軟鏈接問題。 
    python開發就更不用說了, 處處都是軟鏈接。

 

二。利用Vmware自帶的映射虛擬磁盤功能,這點可在vmware菜單欄的文件選項卡下實施。web

該策略能夠把整個虛機的某個分區映射給windows實機, 可是
要求虛擬關機狀態下才能實施,因此這隻適合於特殊狀況了。

 

三。利用samba文件共享協議,該策略我比較推薦的方案ubuntu

概要的講就是在虛機中搭建smb服務, 共享某個目錄,而後在windows實機中映射網路驅動器到該共享目錄。

實施細節:
1.安裝samba服務
sudo yum install samba
sudo chkconfig smb on #設置smb服務開機啓動
sudo service smb start #啓動smb服務


2.建立共享目錄
mkdir /opt/share

3.建立帳號
sudo useradd sambashare  #系統帳號
sudo smbpasswd -a sambashare #加入到samba帳號

4.配置samba
cd /etc/samba
sudo cp smb.conf smb.conf.bak
sudo vim smb.conf
在配置文件最後追加以下幾行:
[share]
    comment = share directory for develop
    path = /opt/share
    valid users = sambashare
    public = no
    writable = yes 
    create mask = 0777
    directory mask = 0777

5.重啓smb服務
sudo service smb restart

6.關閉防火牆
## centos6.5下
service iptables stop
chkconfig iptables off
## centos7下
service firewalld stop
chkconfig firewalld off

7.關閉selinux
setenforce 0
## vi /etc/selinux/config
SELINUX=disabled

8.進入windows的資源管理器,選擇映射網絡驅動器,文件夾路徑爲: \\虛機ip\share

9.windows下cmd輸入命令 "net use", 查看共享信息

 

四。第四點是寫完文檔的最後又發現的一種不錯的方法,我的沒有嘗試過。vim

進入linux虛機,對共享目錄右鍵配置共享, 而後在windows實機中配置映射網絡驅動器鏈接該共享目錄。
相關文章
相關標籤/搜索