apache是通过nobody用户启动的,通过apache的应用程序来删除root用户的文件肯定是不行的。
1.那么用root用户给我的文件"chmod 777 file "后,nobody就可以删除root用户的那个文件了么?
2.如果我是nobody用户创建了一个文件file2,那我用nobody用户来执行chmod 777 file2,这个命令会出错么(我现在是认为chmod这个命令只有root用户才可以执行)
Linux下Nobody 也可以删除用户,这个要根据具体文件的权限设置。
在linux下文件的权限包括三个部分,分别是登录用户、登录用户所在的组、其他用户。
你用ls -l命令就可以看的很清楚,比如:
ls -l /bin/ls
-rwxr-xr-x 1 root root 52828 6月 14 2010 /bin/ls
权限解释:
第一部分:rwx,登录用户的权限,可读、可写、可执行
第二部分:r-x,登录用户所在的组,可读、不可写、可执行
第三部分:r-x,登录用户所在的组,可读、不可写、可执行
另外,该文件属于root用户、root组
权限管理时:可读(r)=4、可写(w)=2、可执行(x)=1
所以chmod 777执行后,实际上是将读、写、修改赋予所有用户,因此你用nobody当然可以删掉。至于第二点,你是否可以使用chmod命令,建议你ls -l /bin/chmod命令看一下,如果第三部分中有可执行权限,那么你就可以使用chmod命令。
还有,如果file2文件是nobody创建的,且你有chmod的执行权限,那么当然可以针对file2执行chmod 777 file2
ls -l /bin/chmod后返回:
-rwxr-xr-x 1 root root 37312 Aug 15 2006 /bin/chmod
那么nobody chmod 自己的file2应该就可以了吧(现在关键是亲手测试条件不满足,所以只能理论上先找到解决办法..)
ls -l /bin/chmod后返回:
-rwxr-xr-x,最后一个x就是nobody用户可执行的权限,你可以执行。
关键是这个新文件是nobody用户创建的,难道nobody用户给自己创建的文件chmod 777也不行吗?
追答nobody不具有管理组权限的话,他也就不能给others用户权限了。
关键是这个新文件是nobody用户创建的,难道nobody用户给自己创建的文件chmod 777也不行吗?