Linux系统文件的隐藏属性
linux系统的文件除了有普通rwx权限外还有一种隐藏权限,例如明明有权限删除某个文件却报错了。
或者仅能为某个文件追加内容而不能减少内容,遇到这种很‘奇怪’的文件,就要怀疑是文件被设置隐藏权限了。


实例:
写入111到test.txt文件
[root@localhost pub]# echo "" >> test.txt 成功删除test.txt文件,
[root@localhost pub]# rm test.txt
rm:是否删除普通文件 "test.txt"?y
[root@localhost pub]# ls 再次写入111到test.txt文件
[root@localhost pub]# echo "111" >> test.txt 添加仅允许追加的隐藏权限(无法删除或覆盖)
[root@localhost pub]# chattr +a test.txt 添加后查看隐藏属性的设置情况,在当前目录下执行命令lsattr
[root@localhost pub]# lsattr
-----a---------- ./test.txt 再次尝试删除该文件,提示不允许删除
[root@localhost pub]# rm -rf test.txt
rm: 无法删除"test.txt": 不允许的操作 向test.txt中添加内容222,并查看添加后的内容
[root@localhost pub]# echo "222" >> test.txt
[root@localhost pub]# cat test.txt
111
222 vim编辑test.txt,尝试删除文件提示
"test.txt" E212: 无法打开并写入文件
请按 ENTER 或其它命令继续 切换普通用户pentest,对test.txt继续添加文件,提示权限不够
[root@localhost pub]# su - pentest
上一次登录:五 9月 9 08:53:44 CST 2016pts/1 上
[pentest@localhost ~]$ cd /pub/
[pentest@localhost pub]$ echo "333" >> test.txt
-bash: test.txt: 权限不够
[pentest@localhost pub]$ 切回到root用户重新分配可写权限,此时需要注意重新给普通用户分配权限时要临时取消隐藏权限属性-a,
否则会报错“不允许的操作”,设置后chmod的可写权限后再次将-a属性附上。
[pentest@localhost pub]$ su - root
密码:
上一次登录:五 9月 9 08:54:11 CST 2016pts/1 上
[root@localhost ~]# ll /pub/test.txt
-rw-r--r--. 1 root root 8 9月 9 09:46 /pub/test.txt
[root@localhost ~]# chmod 646 /pub/test.txt
chmod: 更改"/pub/test.txt" 的权限: 不允许的操作
[root@localhost ~]# chattr -a /pub/test.txt
[root@localhost ~]# chmod 646 /pub/test.txt
[root@localhost ~]# ll /pub/test.txt
-rw-r--rw-. 1 root root 8 9月 9 09:46 /pub/test.txt
[root@localhost ~]#chattr +a /pub/test.txt 重新切换pentest,需要注意的是输出重定向的时候一定要用>>而不是>,
因为>>是在原有文本后面继续添加,符合-a隐藏属性的要求。而>则是清除原有内容后
再添加,这里面包含了删除的动作,所以会报错。
[root@localhost pub]# su - pentest
上一次登录:五 9月 9 09:52:20 CST 2016pts/1 上
[pentest@localhost ~]$ echo "333" > /pub/test.txt
-bash: /pub/test.txt: 不允许的操作
[pentest@localhost ~]$ echo "333" >> /pub/test.txt
[pentest@localhost ~]$ cat /pub/test.txt
111
222
333
[pentest@localhost ~]$
Linux系统文件的隐藏属性的更多相关文章
- linux系统文件说明
linux系统文件说明 bin 系统命令目录 dev 设备目录 home 用户的家(每个系统用户在home下都有一个自己家) root超级用户在根目录下 lib 系统库目录.so动态库文件 media ...
- Linux系统文件和目录管理
Linux系统文件和目录管理 相关命令的解析 1.pwd:显示用户当前的工作目录 2.ls: -a:显示所有文件,包括隐藏文件 -l:显示文件的详细信息 3.设备文件统一存放在/dev 设备文件 块设 ...
- 误删除 linux 系统文件了?这个方法教你解决
转载于互联网并适当的修改 误删除linux系统文件了?不用急,本文将给你一个恢复linux文件的方法,让你轻松应对运维中的各风险问题.方法总比问题多~ 说在前面的话 针对日常维护操作,难免会出现文件误 ...
- windows系统文件和linux系统文件
windows系统文件和linux系统文件 1.单用户操作系统和多用户操作系统 单用户操作系统:指一台计算机在同一时间 只能由一个用户 使用,一个用户独自享用系统的全部硬件和软件资源 Windows ...
- linux系统文件
关于linux系统文件命令 (1)Linux的文件系统目录配置要遵循FHS规范,规范定义的两级目录规范如下: /home 每个账号在该目录下都有一个文件夹,进行数据的管理 ...
- Linux系统文件与启动流程
Linux系统文件与启动流程 /etc初始化系统重要文件 /etc/sysconfig/network-scripts/ifcfg-eth0:网卡配置文件 /etc/resolv.conf:Linux ...
- linux文件的隐藏属性:chattr
1. 文件的隐藏属性 linux除了9个权限外,还有些隐藏属性, 使用chattr命令来设置. 使用方法: $ chattr +-=[ASacDdIijsTtu] + : 添加一个特殊參数 - : ...
- Linux系统文件权限管理(6)
Linux操作系统是多任务(Multi-tasks)多用户(Multi-users)分时操作系统,linux操作系统的用户就是让我们登录到linux的权限,每当我们使用用户名登录操作系统时,linux ...
- linux 系统文件类型、系统安装时间、系统启动时间、系统运行时间、设置及显示时间、系统时间和硬件时间
系统文件类型: 1) $mout 2) df -l:仅列出本地文件系统:-h (--human-readable):-T:文件系统类型 $df -lhf 3) file -s (--special-f ...
随机推荐
- Shell采集系统cpu 内存 磁盘 网络信息
cpu信息采集 cpu使用率 采集算法 通过/proc/stat文件采集并计算CPU总使用率或者单个核使用率.以cpu0为例,算法如下: 1. cat /proc/stat | grep ‘cpu0’ ...
- Jquery获取选中的checkbox的值
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"% ...
- 使用try-with-resources注意的问题
package coin; import java.io.FileInputStream; import java.io.ObjectInputStream; /** * 使用 try-with-re ...
- linux系统非ROOT用户80端口不能启动tomcat问题的变通办法——通过Iptables端口转发
2010-07-17 13:21:42 org.apache.tomcat.util.digester.SetPropertiesRule begin 警告: [SetPropertiesRule]{ ...
- Kafka的coordinator
(基于0.10版本) Group Management Protocol Kafka的coordiantor要做的事情就是group management,就是要对一个团队(或者叫组)的成员进行管理. ...
- eclipse编译项目jar,git管理代码
2015-3-10 settings.xml文件: <localRepository>C:\Users\xxx\.m2\repository</localRepository> ...
- mysql 函数,关键字,特性
## mysql 截取函数 left(),right(),substring(),substring_index()SELECT LEFT('www.baidu.com',3); # wwwSELEC ...
- MYSQL注入天书之order by后的injection
Background-9 order by后的injection 此处应介绍order by后的注入以及limit注入,我们结合less-46更容易讲解,(在less46中详细讲解)所以此处可根据l ...
- asp.net @reqister指令
@register指令通过声明将自定义 ASP.NET 服务器控件添加到页或用户控件中. 1.@register 指令有两种用法如下 <%@ Register tagprefix="t ...
- VirtualBox中开启Linux的SSH(CentOS)
http://my.oschina.net/pangyangyang/blog/177869 第一次干用SSH连接安装在VirtualBox上的Linux的事情,打算买个云空间用用的所以先拿个Cent ...