更改權限後無法移動文件

更改權限後無法移動文件

我有一個資料夾,/var/www我正在嘗試將其移動到用戶的主目錄。

我最初運行mv folder/ ~,並收到權限被拒絕錯誤。我以為我已經正確設定了權限,但為了確保我運行的sudo chown -R folder/ user用戶是我目前的用戶。然後我跑去chmod -R u=rwx folder/寫和讀取權限給自己(或任何mv可能需要的權限)。然而,即使再次嘗試運行mv,我仍然缺乏權限。

什麼可能導致這種情況?

我重複上述過程的完整日誌:

webserver@testingweb:/var/www$ ls -la
total 12
drwxr-xr-x  3 root      root      4096 Mar 18 10:29 .
drwxr-xr-x 14 root      root      4096 Mar 18 10:13 ..
drwx------  4 webserver webserver 4096 Mar 18 10:44 website
webserver@testingweb:/var/www$ sudo chown -R webserver website/
webserver@testingweb:/var/www$ ls -la
total 12
drwxr-xr-x  3 root      root      4096 Mar 18 10:29 .
drwxr-xr-x 14 root      root      4096 Mar 18 10:13 ..
drwx------  4 webserver webserver 4096 Mar 18 10:44 website
webserver@testingweb:/var/www$ chmod -R 700 website/
webserver@testingweb:/var/www$ ls -la
total 12
drwxr-xr-x  3 root      root      4096 Mar 18 10:29 .
drwxr-xr-x 14 root      root      4096 Mar 18 10:13 ..
drwx------  4 webserver webserver 4096 Mar 18 10:44 website
webserver@testingweb:/var/www$ mv website/ ~
mv: cannot move 'website/' to '/home/webserver/website': Permission denied
webserver@testingweb:/var/www$

編輯:有趣的是,當我嘗試單獨移動子目錄和檔案時,它成功了,沒有任何問題:

webserver@testingweb:/var/www$ cd website/
webserver@testingweb:/var/www/website$ ls
git  reproot
webserver@testingweb:/var/www/website$ mv git/ ~/website/
webserver@testingweb:/var/www/website$ ls
reproot
webserver@testingweb:/var/www/website$ mv reproot/ ~/website/
webserver@testingweb:/var/www/website$ ls
webserver@testingweb:/var/www/website$ 

答案1

您擁有 的寫入權限/var/www/website,但沒有 的寫入權限/var/www。為了移動/var/www/website到任何地方,您需要寫入權限/var/www

相關內容