我有一个文件夹,/var/www
我正尝试将其移动到我的用户的主目录中。
我最初运行mv folder/ ~
,并收到权限被拒绝错误。我以为我已经正确设置了权限,但为了确保万无一失,我运行了sudo chown -R folder/ user
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
。