Files

在 Virtualbox VM 中,如何設置文件系統權限?

  • July 6, 2017

我有一個在我的 Windows PC 上執行的帶有 Arch Linux 的 virtualbox VM(不幸的是,我不得不使用它來工作)。我用它在我的帶有 Linux 環境的 Windows PC 上工作,作為 Cygwin 的替代品。

我已經設置了一個 Virtualbox 共享文件夾,它與我的 Linux VM 共享我的 C:\ 驅動器,但我似乎無法更改任何文件夾中的文件權限。這是一個問題,因為現在 git 認為我的所有文件權限都已更改。

» ll README.txt
-rwxrwx--- 1 root vboxsf 4.5K Oct 28 10:42 README.txt
» chmod 644 README.txt
» ll README.txt
-rwxrwx--- 1 root vboxsf 4.5K Oct 28 10:42 README.txt
» sudo chmod 644 README.txt
» ll README.txt
-rwxrwx--- 1 root vboxsf 4.5K Oct 28 10:42 README.txt
» git diff README.txt | cat
diff --git a/README.txt b/README.txt
old mode 100644
new mode 100755

我該如何解決?

該文件夾是使用 Windows 上的 VirtualBox Manager 中的 Automount 安裝的。

這將不起作用,因為您的主機映射到文件系統(即 Windows C: 驅動器,因此很可能是 NTFS)不太可能支持 Linux git 期望的所有權限位。

在類似的情況下,我通過 Samba 導出了一個 Linux 目錄,並在 Windows 和 Linux 中使用它沒有問題。然而,這有一個缺點,即當 VM 未執行時,您無法訪問數據。

對於Linux來說,掛載到宿主機上的文件系統是外機,因此它無法控制該系統中文件的權限。該控制權屬於主機。因此,您需要調整您可以控制的驅動器部分的權限。

我將我的 Virtual Box 連結到我的 Documents 文件夾的子目錄。這樣我就可以打開權限而不必擔心會損壞主機系統的作業系統文件。

引用自:https://unix.stackexchange.com/questions/164588