权限被拒绝 复制时出错?

权限被拒绝 复制时出错?

我正在尝试将文件从下载目录复制到桌面目录;但出现了权限被拒绝错误。目录和文件权限不限制我复制(目录权限:755,文件权限:- 664)。

sockets@ankit:~$ ls -ld D
Desktop/   Documents/ Downloads/ 
sockets@ankit:~$ ls -ld Downloads/ Desktop/ 
drwxr-xr-x 9 sockets sockets 4096 Jan  4 12:52 Desktop/
drwxr-xr-x 3 sockets sockets 4096 Jan 10 16:24 Downloads/
sockets@ankit:~$ ls -l Downloads/Ankit.pdf 
-rw-rw-r-- 1 sockets sockets 96170 Jan 10 16:24 Downloads/Ankit.pdf
sockets@ankit:~$ cp Downloads/Ankit.pdf Desktop/Ankit.pdf
cp: cannot create regular file `Desktop/Ankit.pdf': Permission denied

你知道我为什么会收到权限错误吗?我知道我可以使用 sudo 来复制文件。

----------编辑-1

sockets@ankit:/var/log$ df -i
Filesystem       Inodes  IUsed    IFree IUse% Mounted on
/dev/sda1       2501856 228878  2272978   10% /
udev             755379    510   754869    1% /dev
tmpfs            757578    431   757147    1% /run
none             757578      3   757575    1% /run/lock
none             757578      8   757570    1% /run/shm
/dev/sda6      27639808  37521 27602287    1% /home/mount

----------编辑2

sockets@ankit:~$ df -h | grep /dev/sd
/dev/sda1        38G  8.5G   28G  24% /
/dev/sda6       416G   87G  308G  22% /home/mount
/dev/sdc1        16G  2.1G   14G  14% /media/New Volume
sockets@ankit:~$ mount | grep /dev/sd
/dev/sda1 on / type ext4 (rw,errors=remount-ro)
/dev/sda6 on /home/mount type ext4 (rw)
/dev/sdc1 on /media/New Volume type vfat (rw,nosuid,nodev,uid=1000,gid=1000,shortname=mixed,dmask=0077,utf8=1,showexec,flush,uhelper=udisks)

答案1

以下是可能导致该问题的另一种情况

chris@chris-desktop:~$ sudo cp Downloads/Ankit.pdf Desktop/Ankit.pdf
[sudo] password for chris: 
chris@chris-desktop:~$ ls -l Desktop/Ankit.pdf 
-rw-r--r-- 1 root root 19769 Jan 11 05:52 Desktop/Ankit.pdf
chris@chris-desktop:~$ cp Downloads/Ankit.pdf Desktop/Ankit.pdf
cp: cannot create regular file `Desktop/Ankit.pdf': Permission denied

在这种情况下,我已经使用 sudo 在目标目录中创建了一个文件,因此该文件归 root 所有。该文件无法以用户身份通过​​常规 cp 命令覆盖,并导致“Permiision denied”错误。

答案2

好的,奇怪的是,使用 touch 创建文件后,它工作正常。我想知道是否存在某种文件系统错误,在这种情况下,我强烈建议您强制对文件系统进行 fsck 检查 - 很容易做到。保存所有打开的文件并在终端窗口中:

sudo touch /forcefsck
sudo reboot

机器重新启动后,它将测试根分区,然后正常启动到 Ubuntu。它可能会提示您修复文件系统的权限,或者告诉您已修复了哪些问题(如果有)。

相关内容