军哥LNMP无法删除.user.ini文件

  • A+
所属分类:VPS

最近有朋友向3Z学堂反映使用军哥LNMP一键包时,删除虚拟主机后,发现网站目录下的东西没有自动删除,需要手动删除,这时会发现有个隐藏文件.user.ini无法手动删除,这是因为这个文件的权限被锁定了,删除前需要先解除锁定。

具体情况是当你使用lnmp vhost del删除虚拟主机后,再输入rm -rf命令删除网站目录出现rm: cannot remove `www.3zschool.com/.user.ini': Operation not permitted,这个时候需要输入以下这个命令:

chattr -i /home/wwwroot/www.3zschool.com/.user.ini (记得把www.3zschool.com换成你自己的网站),然后再输入删除指令就可以了。

chattr命令:有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了。chattr命令的作用很大,通过chattr命令修改属性能够提高系统的安全性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var目录。lsattr命令是显示chattr命令设置的文件属性。

语法 chattr [-RV] [-+=AacDdijsSu] [-v version] 文件或目录

参数  描述

-R  递归处理所有的文件及子目录。

-V  详细显示修改内容,并打印输出。

–   失效属性。

+   激活属性。

=   指定属性。

A   Atime,告诉系统不要修改对这个文件的最后访问时间。

S   Sync,一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘。

a   Append Only,系统只允许在这个文件之后追加数据,不允许任何进程覆盖或截断这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立和修改文件,而不允许删除任何文件。

i   Immutable,系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。

D   检查压缩文件中的错误。

d   No dump,在进行文件系统备份时,dump程序将忽略这个文件。

C   Compress,系统以透明的方式压缩这个文件。从这个文件读取时,返回的是解压之后的数据;而向这个文件中写入数据时,数据首先被压缩之后才写入磁盘。

s   Secure Delete,让系统在删除这个文件时,使用0填充文件所在的区域。

u   Undelete,当一个应用程序请求删除这个文件,系统会保留其数据块以便以后能够恢复删除这个文件。

例子

用chattr命令防止系统中某个关键文件被修改:

# chattr +i /etc/resolv.conf

用lsattr查询文件属性:

# lsattr /etc/resolv.conf

----i-------- /etc/resolv.conf #显示如上

让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件:

# chattr +a /var/log/messages

PS:要说明的是大家不要以为这个是军哥LNMP的bug,其实这是用来防跨目录访问的,希望能够帮助到大家~

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: