尽管权限和组正确,但仍无法写入目录

尽管权限和组正确,但仍无法写入目录

一直在与 wordpress 病毒作斗争,该病毒攻击并写入我的一个网站中的文件。我注意到一件奇怪的事情是,即使使用 root 用户,我也无法写入目录。目录是 755。尝试以相同的权限写入另一个目录有效。

root@console:/var/www/clients/client3/web22# whoami
root

root@console:/var/www/clients/client3/web22# groups root
root : root

root@console:/var/www/clients/client3/web22# ls -alh
total 29M
drwxr-xr-x 8 root  root    4.0K Sep 13 11:09 .
drwxr-xr-x 6 root  root    4.0K Oct  5 15:04 ..
drwxr-xr-x 2 web22 client3 4.0K Feb 18  2016 cgi-bin
drwxr-xr-x 2 root  root    4.0K Nov  2  2016 log
drwxr-x--x 7 web22 client3 4.0K Oct  5 14:54 web

root@console:/var/www/clients/client3/web22# touch test
touch: cannot touch ‘test’: Permission denied

root@console:/var/www/clients/client3/web22# mkdir test
mkdir: cannot create directory ‘test’: Permission denied

以下是具有相同权限、相同用户和相同机器的另一个文件夹:

root@console:/var/www/clients/client5/web24# ls -lah
total 32K
drwxr-xr-x 8 root  root    4.0K Oct  5 15:12 .
drwxr-xr-x 4 root  root    4.0K Mar 24  2016 ..
drwxr-xr-x 2 web24 client5 4.0K Feb 19  2016 cgi-bin
drwxr-xr-x 2 root  root    4.0K Nov  2  2016 log
drwxr-x--x 9 web24 client5 4.0K Mar 19  2016 web

root@console:/var/www/clients/client5/web24# touch test
root@console:/var/www/clients/client5/web24# rm test

为什么我无法向文件夹 /var/www/clients/client3/web22 写入任何内容,除了组和用户之外,还有什么可以拒绝写入目录?

编辑-添加必要的信息:

root@console:/var/www/clients/client3/web22# cat /proc/version
Linux version 3.16.0-4-amd64 ([email protected]) (gcc version 4.8.4 (Debian 4.8.4-1) ) #1 SMP Debian 3.16.36-1+deb8u1 (2016-09-03)

root@console:/var/www/clients/client3# lsattr
----i--------e-- ./web22
-------------e-- ./web13

root@console:/var/www/clients/client3# lsattr web22
-------------e-- web22/cgi-bin
-------------e-- web22/web
-------------e-- web22/log


root@console:/var/www/clients/client3# getfacl web22
# file: web22
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

root@console:/var/www/clients/client3# getfacl .
# file: .
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

答案1

属性列表中的i表示文件已被标记为“不可变”,因此您无法更改它。如果您愿意,可以使用以下命令将其删除chattr -i .

来自手册页chattr

具有“i”属性的文件无法修改:无法删除或重命名,无法创建指向此文件的链接,也无法向此文件写入任何数据。只有超级用户或拥有 CAP_LINUX_IMMUTABLE 功能的进程才能设置或清除此属性。

相关内容