將一個目錄掛載到另一個目錄,同時將原始目錄的 UID 對應到另一個目錄

將一個目錄掛載到另一個目錄,同時將原始目錄的 UID 對應到另一個目錄

我想將該目錄掛載/var/www/mysite到該目錄/home/daniel/mysite,但也將掛載檔案的使用者從原始使用者 ( www-data) 對應到我自己的使用者 ( daniel)。

這樣,/var/www/mysite/index.php用戶所在的文件www-data將出現在安裝的目錄中並由/home/daniel/mysite/index.php其擁有daniel- 或者,如果我/home/daniel/mysite/test.php使用自己的用戶創建文件,它將在該用戶下的原始目錄中創建www-data

是否可以?如果沒有,我有哪些替代方案可以使用 IDE 並仍然確保所有檔案都屬於 HTTP 伺服器的使用者?

答案1

最簡單的解決方案是在授予自己對 mysite 資料夾下所有內容的寫入存取權後,使用 ln -s 建立一個指向主磁碟機下的 mysite 資料夾的符號連結。

答案2

我最終使用 NFS 來解決我的難題。我用了本教程作為基礎,最終得到以下/etc/exports

/var/www/mysite localhost(rw,sync,no_subtree_check,all_squash,anonuid=33,anongid=33)

(全部在一行中;其中 33 是www-data​​ 的 UID 和 GID)

以及以下內容/etc/fstab

localhost:/var/www/mysite /home/daniel/mysite nfs4 defaults 0 0

當我瀏覽目錄時,它說每個文件都屬於www-data:www-data,但我可以創建和編輯文件,就好像它們屬於我自己的用戶一樣。

相關內容