时间:2023-03-16来源:系统屋作者:zhijie
Linux系统删除文件的时候有一些注意事项,如果没有注意到这些细节,就算你拥有某个文件的w权限,你也无法删除文件。下面就来具体演示一下删除文件的场景,给大家介绍为什么Linux系统拥有w权限却无法删除文件。
场景模拟:
root 用户
[root@mode-6 ~]# mkdir /oldboy/
[root@mode-6 /]# ll /oldboy/ -d
drwxr-xr-x 2 root root 4096 Nov 27 15:46 /oldboy/
[root@mode-6 ~]# cd /oldboy/
[root@mode-6 oldboy]# vim test1.sh
echo ‘My name Is ZhangLiang.’
[root@mode-6 oldboy]# ll
total 4
-rw-r--r-- 1 root root 30 Nov 27 15:44 test1.sh
普通用户
[oldboy@mode-6 oldboy]$ cat test1.sh
echo ‘My name Is ZhangLiang.’
[oldboy@mode-6 oldboy]$ echo “12312” 》》 test1.sh
-bash: test1.sh: Permission denied # 权限不足
[oldboy@mode-6 oldboy]$ 。/test1.sh
-bash: 。/test1.sh: Permission denied# 权限不足
root 用户
[root@mode-6 oldboy]# chmod 747 test1.sh
[root@mode-6 oldboy]# ll
total 4
-rwxr--rwx 1 root root 30 Nov 27 15:44 test1.sh
这是在使用其他用户进行 rwx操作都可以成功执行。但是进行删除操作时却失败
[oldboy@mode-6 oldboy]$ rm -f test1.sh
rm: cannot remove `test1.sh‘: Permission denied # 权限不足
其中文件名称保存在上级目录的block 中,所以能否对文件进行删除,是看上级目录是否有相应的 w 权限。
[root@mode-6 /]# ll /oldboy/ -d
drwxr-xr-x 2 root root 4096 Nov 27 15:46 /oldboy/# 其他用户没有 w 权限。所以不能删除
[root@mode-6 /]# chmod 757 。/oldboy/# root 用户
[root@mode-6 /]# ll /oldboy/ -d
drwxr-xrwx 2 root root 4096 Nov 27 15:46 /oldboy/ # 权限已修改
[oldboy@mode-6 oldboy]$ rm -f test1.sh # 普通用户 可以成功删除了
###############################
###############################
###############################
对于目录来说 rwx
其中r :代表读取目录中的内容
w:删除、修改 目录里面文件名的权限 【必须配合 x 执行才可以】
x:代表能否进入到目录里面去
通过上面的演示,你是否清楚为什么Linux系统拥有w权限却无法删除文件了呢?看了本文的介绍,下次删除文件的时候就可以避免同样的问题了。
2023-03-15
如何修改Linux系统Shell脚本输出文字的颜色2023-03-15
Linux系统如何删除gnome panel上的图标?2023-03-14
Linux如何用Xsnow命令让桌面显示下雪特效sl命令是Linux系统中的一个趣味命令集,很多人都是在使用ls命令的时候,错把ls命令输入成为sl命令。使用sl命令,还可以让Linux系统的桌面上跑火车,具体的方法如下:...
2023-03-14
Linux系统中如果发现/home目录下剩余空间不足,可以使用du和df命令来对找到大文件,并且对它们进行删除,从而腾出足够的空间。那么如何用du和df命令清除大文件呢?...
2023-03-14