當前位置: 首頁>>技術教程>>正文


在 virtualbox 中,如何自動掛載文件夾並從 root 更改所有權

, , ,

問題描述

這是我第一次使用 virtualbox 和 ubuntu (14.04),我使用的是 Windows 7 操作係統。

我正在嘗試掛載一個共享文件夾,該文件夾包含我需要在 virtualbox 和 Windows 操作係統上訪問的文件。我已經使用安裝的 Guest Additions 中的 vboxsf 成功安裝了它們。

掛載我使用命令 sudo mount -t vboxsf <dir name in vbox> <directory in linux 例如我使用 sudo mount -t vboxsf Test /home/user/Test

我找到了幾種在啟動時自動掛載目錄的方法,例如使用 /etc/rc.local 方法( here ),您可以在其中修改將命令附加到它的所述文件(沒有 sudo )。或者通過使用 fstab 方法 ( here )。我個人更喜歡 rc.local 方法。

掛載後,它具有 dr-xr-xr-x 權限,但是一旦掛載,該目錄的所有權為 root,而 chown user /home/user/Test 無效。這意味著我不能以普通用戶身份創建或更改其中的文件。

在 VirtualBox 中,要共享的目錄未設置為隻讀。

有沒有辦法自動掛載共享文件夾並將所有權分配給我的非 root 用戶?

最佳方法

如果您安裝了來賓添加,請使用 VirtualBox 菜單:

Devices > Shared Folders…

添加路徑、名稱並啟用 “Auto-mount” 和 “Make permanent” 選項。

最後將您的用戶添加到組中:

sudo usermod -G vboxsf -a myusername

注銷並再次返回或重新啟動機器以完成該過程(感謝@Fo)。

根據 usermod man page ,組存儲在 /etc/group 中。

次佳方法

啊,寫一個問題然後馬上找到答案的詛咒。

我沒有使用 this link 中建議的完整命令

sudo mount -t vboxsf -o uid=$UID,gid=$GID share ~/host

因此,要在 Ubuntu 中通過 vboxsf 添加所有權並在 virtualbox 中自動掛載,請在 exit 0 行之前添加到 /etc/rc.local 文件,命令如下:

mount -t vboxsf -o uid=1000,gid=1000 <folder name given in VirtualBox> /home/<user>/where/ever/you/want

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/11991.html,未經允許,請勿轉載。