首頁 > 軟體

Linux 父目錄許可權影響子目錄檔案操作

2020-06-16 17:23:46

下面顯示了tomcat在刪除owner是自己的文件時出錯了,提示Permission denied。這是因為使用者tomcat在該文件的父目錄許可權裡並沒有w的許可權.雖然tomcat是該文件的owner,但是刪除該文件也是對父目錄的修改,因此在使用者沒有父目錄的w許可權里,提示許可權不足

drwxr-xr-x  2 root  root  4096 Nov 21 21:02 tomcat
drwxr-xr-x. 13 root  root  4096 May 30 21:42 usr
drwxr-xr-x. 19 root  root  4096 Jul 15 02:29 var
[root@linuxidc ~]# touch /tomcat/xxx
[root@linuxidc ~]# chown tomcat:tomcat /tomcat/xxx 
[root@linuxidc ~]# ll /tomcat/xxx
-rw-r--r-- 1 tomcat tomcat 0 Nov 21 21:03 /tomcat/xxx
[root@linuxidc ~]# su - tomcat
[tomcat@linuxidc ~]$ rm -rf /tomcat/xxx 
rm: cannot remove `/tomcat/xxx': Permission denied
[tomcat@linuxidc ~]$

修改父目錄的許可權,將w的許可權給予使用者tomcat
[root@linuxidc tomcat]# chmod 757 /tomcat

從下圖中可見,使用者tomcat對於xxx文件的父目錄/tomcat有w的許可權,所以刪除成功了
drwxr-xrwx    2 root  root  4096 Nov 21 21:03 tomcat
drwxr-xr-x.  13 root  root  4096 May 30 21:42 usr
drwxr-xr-x.  19 root  root  4096 Jul 15 02:29 var
[root@linuxidc tomcat]# su - tomcat
[tomcat@linuxidc ~]$ rm /tomcat/xxx 
[tomcat@linuxidc ~]$ ll /tomcat/
total 0
[tomcat@linuxidc ~]$

也可以直接把父目錄的owner轉給tomcat,最快的方法,這裡還用了遞回,其實不用也可以
[root@linuxidc tomcat]# chown -R tomcat:tomcat /tomcat

本文永久更新連結地址http://www.linuxidc.com/Linux/2017-01/139424.htm


IT145.com E-mail:sddin#qq.com