我的設定

我的設定

我的設定

在此輸入影像描述

我想設定一個 Ubuntu VM 作為開發的 Web 伺服器。

原因

我希望有一個盡可能接近實際生產環境的開發環境。

問題

以上設定失敗。當我導航到時,我不斷收到“找不到文件”的訊息http://project1.localhost:8888

我嘗試過的

我確實使用添加www-data到群組中vboxsf

sudo adduser www-data vboxsf

在嘗試以下任何操作之前。

  1. 如前所述,我嘗試了上述設定。網頁上找不到文件錯誤。
  2. 我嘗試了上面的設置,但符號鏈接從/var/virtual/project1/media/sf_WebApps/project1。網頁上找不到文件錯誤。
  3. 我試圖 chown/media/sf_WebAppsroot:vboxsfwww-data:vboxsf。不可能。
  4. 我嘗試將 chmod 更改/media/sf_WebApps為 755。
  5. 我複製了一份/media/sf_WebApps/project1並將其放在裡面/var/virtual。這有效,但這不是我想要的。 為什麼不?因為我想輕鬆地使用我的主機程式(例如 github mac 應用程式和 sublime 文字編輯器)來對程式碼庫進行更改,並在瀏覽器上訪問時看到它的反映。

答案1

答案已找到這裡來自伺服器故障

基本上,您需要以另一個使用者的身分安裝(已安裝的)共用資料夾。

類型

mount -t vboxsf SHARE_NAME -o rw,dmode=777,gid=GROUP_ID,uid=USER_ID /path/on/guest

在這種情況下,它將是

mount -t vboxsf WebApps -o rw,dmode=777,gid=GROUP_ID,uid=USER_ID /var/virtual/some_folder_name

如果您希望每次開啟來賓作業系統時都執行此安裝,請在 /etc/init/SOMETHING.conf 上建立文件,內容如下:

description     "SOME DESCRIPTION"

start on starting

task
exec mount -t vboxsf WebApps -o rw,dmode=777,gid=GROUP_ID,uid=USER_ID /var/virtual/some_folder_name

找出您的 uid 或 gid

 id -u username
 id -g username

故障排除:

始終記住首先創建掛載點。

請務必記住首先安裝 GuestAdditions。您可以參考http://docs-v1.vagrantup.com/v1/docs/base_boxes.html在安裝來賓新增項目下。

sudo apt-get install linux-headers-$(uname -r) build-essential
sudo apt-get install dkms -y

sudo mount /dev/cdrom /media/cdrom
sudo sh /media/cdrom/VBoxLinuxAdditions.run

答案2

  1. 編輯/etc/group
  2. 找到包含“vboxsf”的行
  3. 在冒號後新增帳戶(如 www-data)。如果需要新增多個帳戶,可以用逗號分隔
  4. 重新登入或重新啟動

答案3

我做了類似於@KimStacks解決方案的事情,但無法/etc/init/SOMETHING.conf在Ubuntu 18.04 LTS上工作,即使我改變了start on startingstart on startup喜歡堆疊溢位範例

我發現這些步驟比較容易:

  • 建立一個永久安裝點(使用此位置而不是/media安裝一次):

    sudo mkdir /some/location
    
  • 取得uid和gidwww-data

    id www-data
    
  • 編輯 crontab 檔案:

    sudo crontab -e
    
  • 新增@reboot一行使其在啟動時運行(將USER_ID和替換GROUP_ID為先前步驟中的 uid 和 gid):

    @reboot mount -t vboxsf VirtualBoxFolderShareName /some/location -o uid=USER_ID,gid=GROUP_ID
    

相關內容