linux在root用户下无法使用chattr的解决办法
最近在学习linux操作系统的时候,想用chattr来修改某一个文件的权限时,突然爆出了以下这个错误:
bash /usr/bin/chattr permission denied
考虑到可能是普通用户权限不够,我又切换到了root用户。按理说root用户的权限是最高的了,结果还是爆出上面那个错误。
查阅了国内的相关博客,发现没有解决这一问题的,于是FQ在外网上找到了解决办法。
以下是链接
# chattr -l -bash: /usr/bin/chattr: Permission denied # chattr -i chattr -bash: /usr/bin/chattr: Permission denied # chmod +x chattr chmod: changing permissions of `chattr': Operation not permitted
为了恢复chattr的功能,解决办法如下:
# cp /usr/bin/chattr /usr/bin/chattr2 # chmod 755 /usr/bin/chattr2 # chattr2 -i /usr/bin/chattr # chmod 755 /usr/bin/chattr # ls -la /usr/bin/chattr
# lsattr /usr/bin/chattr
-rwxr-xr-x 1 root root 9664 2010-08-17 01:29 /usr/bin/chattr
-----------------e- /usr/bin/chattr
大致思路是:复制chattr的副本chattr2,用chmod来修改chattr2的权限(号码为755)。然后反过来使用chattr2打开chattr的权限,再用chmod修改。最后chattr就能使用了。
通过这个问题的解决,让我体会对一句话有了深刻的体会:inux一切皆文件
补充关于权限:i和a的说明
i:不可修改权限 例:chattr u+i filename 则filename文件就不可修改,无论任何人,如果需要修改需要先删除i权限,用chattr -i filename就可以了。查看文件是否设置了i权限用lsattr filename。
a:只追加权限, 对于日志系统很好用,这个权限让目标文件只能追加,不能删除,而且不能通过编辑器追加。可以使用chattr +a设置追加权限。
作者:Ryanjie
出处:http://www.cnblogs.com/ryanjan/
本文版权归作者和博客园所有,欢迎转载。转载请在留言板处留言给我,且在文章标明原文链接,谢谢!
如果您觉得本篇博文对您有所收获,觉得我还算用心,请点击右下角的 [推荐],谢谢!