我将一些文件从数据 DVD 复制到/home/emma
(ext4),所有文件都是只读。
所有文件都是这样的:
emma@emma-W54-55SU1-SUW:~$ stat cd/Drivers/Drivers_List.rtf
File: ‘cd/Drivers/Drivers_List.rtf’
Size: 28120 Blocks: 56 IO Block: 4096 regular file
Device: 801h/2049d Inode: 656521 Links: 1
Access: (0400/-r--------) Uid: ( 1000/ emma) Gid: ( 1000/ emma)
Access: 2014-01-17 05:34:46.000000000 +0000
Modify: 2014-01-17 05:34:46.000000000 +0000
Change: 2015-02-01 23:11:04.226865424 +0000
Birth: -
当我尝试删除它们时,rm: cannot remove ‘cd/Drivers/Drivers_List.rtf’: Permission denied
即使我是所有者,我也会得到。更改模式777
也不起作用。唯一有效的方法是使用 root 身份删除它们sudo
。
我以为只有一个i
属性使文件无法被其所有者删除,那么这是怎么回事呢?
我使用的是 Xubuntu 14.10。
各种命令的结果:
(请注意:我自己创建了目录cd
,然后将目录Drivers
从 DVD 复制到其中。)
emma@emma-W54-55SU1-SUW:~$ ls -dlh cd
drwxrwxr-x 3 emma emma 4.0K Feb 3 01:44 cd
emma@emma-W54-55SU1-SUW:~$ ls -dlh cd/Drivers
dr-x------ 11 emma emma 4.0K Feb 3 02:15 cd/Drivers
emma@emma-W54-55SU1-SUW:~$ ls -l cd/Drivers/Drivers_List.rtf
-r-------- 1 emma emma 28120 Jan 17 2014 cd/Drivers/Drivers_List.rtf
emma@emma-W54-55SU1-SUW:~$ rm cd/Drivers/Drivers_List.rtf
rm: cannot remove ‘cd/Drivers/Drivers_List.rtf’: Permission denied
emma@emma-W54-55SU1-SUW:~$ chmod 660 cd/Drivers/Drivers_List.rtf
emma@emma-W54-55SU1-SUW:~$ ls -l cd/Drivers/Drivers_List.rtf
-rw-rw---- 1 emma emma 28120 Jan 17 2014 cd/Drivers/Drivers_List.rtf
emma@emma-W54-55SU1-SUW:~$ rm cd/Drivers/Drivers_List.rtf
rm: cannot remove ‘cd/Drivers/Drivers_List.rtf’: Permission denied
emma@emma-W54-55SU1-SUW:~$ chmod 777 cd/Drivers/Drivers_List.rtf
emma@emma-W54-55SU1-SUW:~$ ls -l cd/Drivers/Drivers_List.rtf
-rwxrwxrwx 1 emma emma 28120 Jan 17 2014 cd/Drivers/Drivers_List.rtf
emma@emma-W54-55SU1-SUW:~$ rm cd/Drivers/Drivers_List.rtf
rm: cannot remove ‘cd/Drivers/Drivers_List.rtf’: Permission denied
emma@emma-W54-55SU1-SUW:~$ lsattr cd/Drivers/Drivers_List.rtf
-------------e-- cd/Drivers/Drivers_List.rtf
emma@emma-W54-55SU1-SUW:~$ ls -alh cd/Drivers
total 48K
dr-x------ 11 emma emma 4.0K Feb 3 02:15 .
drwxrwxr-x 3 emma emma 4.0K Feb 3 01:44 ..
dr-x------ 7 emma emma 4.0K Jan 14 2014 01Chipset
dr-x------ 3 emma emma 4.0K Jan 14 2014 02Video
dr-x------ 9 emma emma 4.0K Jan 14 2014 03Lan
dr-x------ 9 emma emma 4.0K Jan 14 2014 04CReader
dr-x------ 3 emma emma 4.0K Jan 17 2014 05Touchpad
dr-x------ 3 emma emma 4.0K Jan 14 2014 06Airplane
dr-x------ 2 emma emma 4.0K Jan 17 2014 07Hotkey
dr-x------ 12 emma emma 4.0K Jan 14 2014 08IME
dr-x------ 7 emma emma 4.0K Jan 14 2014 09Audio
-r-------- 1 emma emma 162 Feb 24 2012 ~$ivers_List.rtf
(我已经删除了cd/Drivers/Drivers_List.rtf
使用sudo
作为测试。)
答案1
我相信某些附加信息对于某个答案是必要的,但我怀疑这个问题只是与权限相关。我猜测您可能不小心复制了符号链接而不是真正的文件,或者您试图删除整个目录但尚未重置其中所有文件的权限。
首先,当您统计文件时,它会给出“cd/Drivers/Drivers_List.rtf”路径,该路径似乎与您在命令中引用的目录不同。您能否确认您复制了文件而不是创建符号链接?提供这三个命令的结果对于了解发生的情况非常有用:
ls -alhd /home/emma/cd
ls -alhd /home/emma/Drivers
ls -alh /home/emma/Drivers
其次,请尝试执行以下操作,看看是否可以从集合中删除单个文件:
chmod 660 "/home/emma/Drivers/Drivers_List.rtf"
rm "/home/emma/Drivers/Drivers_List.rtf"
让我们知道情况如何,并提供您收到的任何错误!
答案2
当您使用 ext4 文件系统时,这些文件可能启用了不可变属性。您应该使用 lsattr 检查它。前任:
antonio@PC1:~/antonio/borrar$ lsattr undelete
-u--i--------e-- undelete
答案3
尝试做:
sudo rm path/to/file
如果你做不到那就试试
sudo rm -r path/to/file
答案4
我正要回答的问题是您正在尝试删除您具有写入权限的目录内的只读文件。
尝试使用 chmod -R 700 /home/emma/cd 递归重置文件夹的权限
它将来自您在 MC 内复制保留权限时的情况。