首页 > 关于linux文件或文件夹删除遇到的疑问

关于linux文件或文件夹删除遇到的疑问

在/home/user1目录下有下面2个文件

dr-xr-xr-x 2 root root 4096 ju1 18 23:29 wendang1
drw-rw-r— 2 user1 user1 4096 jul 18 23:22 wendang

我用user1账号登陆到此目录

rm -rf wendang1 //删除成功
rm -rf wendang //提示 rm: cannot chdir from ‘.’ to ‘wendang’ : permission denied

第二个为什么无法删除呢?

问题2:
书上有一道练习题:
当一个一般档案权限为 -rwxrwxrwx 则表示这个档案的意义为何?
答案是:任何人皆可读取、修改戒编辑、可以执行,但不一定能删除。

但不一定能删除怎么理解?什么情况下不能删除,或者说如何才能100%删除成功?


"但不一定能删除", 可以这么理解:

chattr +i ./wendang  #当这样时,任何用户任何权限的都不能将其删除。

这时要删除这个文件,只有这样:

chattr -i ./wendang
rm -fr ./wendang

关于chattr,可以到这里看看:http://linux.51yip.com/search/chattr


user1 对 wendang 的父目录没有写的权限,因此无法删除 wendang 目录。
对文件的删除操作,实际上是对其父目录的写操作。

你看 -rwxrwxrwx 操作码里面,压根就没有表示 删除的权限。


删除一个目录时需要先删除其中的所有文件和子文件夹,加上-r参数就是为了这个目的,但因为wendang没有执行权限(x),所以无法进入该目录,也就无法删除其中的文件,所以报错。(目录的执行权限代表是否可以进入该目录)

【热门文章】
【热门文章】