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 ...
随机推荐
- struts1 和 struts2中Action什么时候实例化
精帖1:http://blog.csdn.net/lfsf802/article/details/7277013 精帖1:http://blog.csdn.net/wmj2003/article/de ...
- 【BZOJ】【1037】【ZJOI2008】生日聚会party
DP orz iwtwiioi 这种题居然是DP……原来统计方案数是可以用动态规划来做的啊= =用一些变量来维护一些信息,保证方案可行性/合法性 人太弱实在是有些忧伤…… /************* ...
- C# Winform常见的Editor及其它经验
1.新建一个自定义Editor,继承自.NET自带的Editor,override某些方法,再附加到属性中: public class MyCollectionEditor : CollectionE ...
- Leetcode#103 Binary Tree Zigzag Level Order Traversal
原题地址 基本数据结构操作,二叉树的层次遍历. 代码: vector<vector<int> > zigzagLevelOrder(TreeNode *root) { vect ...
- [noip2010]关押罪犯 并查集
第一次看的时候想到了并查集,但是不知道怎么实现: 标解,f[i]表示i所属的集合,用f[i+n]表示i所属集合的补集,实现的很巧妙,可以当成一个使用并查集的巧妙应用: #include<iost ...
- c++ 遍历ini
inline void CDLG_SET1::EnumIniFile(LPCTSTR pFilePath, CString strKey) { TCHAR strAppNameTemp[];//所有A ...
- nginx+php+flight 构建RESTFul API
配置: Nginx: conf目录下nginx.conf配置文件. 第44行改为:root D:/wwwroot/www; 第45行改为:index index.html index.htm i ...
- 4-Highcharts 3D图之3D普通饼图
<!DOCTYPE> <html lang='en'> <head> <title>4-Highcharts 3D图之3D普通饼图</title& ...
- Drawing with GoogLeNet
Drawing with GoogLeNet In my previous post, I showed how you can use deep neural networks to generat ...
- Java对象初始化详解
在Java中,一个对象在可以被使用之前必须要被正确地初始化,这一点是Java规范规定的.本文试图对Java如何执行对象的初始化做一个详细深入地介绍(与对象初始化相同,类在被加载之后也是需要初始化的,本 ...