linux的文件属性
文件属性
67603664 -rw-r--r-- 1 root root 225 Dec 4 14:56 test.log
inode 文件类型 权限 硬链接数 属主 属组 文件大小 文件修改时间 文件名或者目录名(不属于属性)
- inode: 索引节点
- 文件类型: d 目录 - 普通文件 i 表示软连接 b 表示块设备和其他外围设备 c 表示字符设备文件 s 便是socket文件 p 表示管道文件
- 权限: 属主 属组 其他 的权限 可读 可写 可执行
- 硬链接数: 总共有几个出口
- 文件修改时间
- 文件名或者目录名
通过stat可以查看文件详细信息
[root@test1 ~]# stat a.log File: ‘a.log’ Size: 12 Blocks: 8 IO Block: 4096 regular file Device: 802h/2050d Inode: 67603682 Links: 2 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2018-12-06 13:34:46.790355428 +0800 Modify: 2018-12-06 13:34:21.480355428 +0800 Change: 2019-01-03 12:17:08.494355428 +0800 Birth: -
文件权限
r 可读 w 可写 x可执行
文件权限
1.可读r:表示具有读取、浏览文件内容(block)的权限;
2.可写w:表示具有新增、修改文件内容的权限; w和r配合
①如果没有r配合,,vim编辑文件会提是无法编辑(但可以强制编辑),强制编辑后会导致源文件内容清空。但echo可以正常写入文件。
②如果没有w,可以通过vim进行强行编辑。但echo无法写入文件。
③特别提示:删除文件(修改主机名)或创建文件的权限是受父目录(上一级目录)的权限控制,和文件本身权限无关。
3.可执行x:表示执行文件的权限 ===》执行权限需要r的配合。
没有办法读取怎么能执行呢
这个文件本身能够执行(命令或脚本)。
但root用户只要有x的权限才能执行
普通用户同时还需要具备r权限才能执行
linux可执行文件:*.sh *.py *.perl等
目录权限
对于目录来说
r 权限只能读取或查看目录中的内容 r权限需要和x权限配合 (目录里面的内容文件,但是无法查看文件的属性信息)
w 是否可以在目录下面创建文件 w权限需要和x权限配合
x 是否可以进入文件 (目录 对目录里面的内容进行删除创建修改文件名)
x表示具有进入文件的权限
对于目录来说X是必须的,用它来访问目录下面文件的inode信息。
特殊权限
[root@test]# ls -ld /usr/bin/passwd /tmp/ /usr/bin/locate drwxrwxrwt. 4 root root 4096 May 18 15:03 /tmp/ -rwx--s--x. 1 root slocate 38464 Mar 12 2015 /usr/bin/locate -rwsr-xr-x. 1 root root 30768 Nov 24 2015 /usr/bin/passwd suid 运行某一个命令的时候相当于这个用户的所有者运行(root) /usr/bin/passwd 这个文件 passwd修改 /etc/shadow 普通用户没有权限 普通用户可以修改/etc/shadow里面的内容所以有suid 如何给一个命令添加上suid chmod u+s /bin/rm suid 很危险 t粘滞位 使自己的文件只有自己能处理(除了root) /tmp下
suid 4000 权限字符s (S表示位置上没有x权限) 用户位上的x为设置
授权方法 chmod 4755 /bin/rm或chmod u+s /bin/rm
sgid 2000 权限字符s (S),用户组位上x位上设置。
授权方法 chmod 2755 oldboy.txt或chmod g+s test
粘滞位 1000 权限字符t(T),其他用户的x位上设置
授权方法 chmod 1777 /tmp或chmod o+t /tmp
如果对应位有x则字符权限表现为小写,否则表现为大写
linux高级优化场景 tmp目录常常是木马第一手跳板地点。
文件系统的属性
chattr 改变文件的属性
+i 锁定文件不被摧毁修改 可以锁目录 目录不可被摧毁 不会被修改
chattr=change attr(属性)
-i 去掉
+a 只能追加
lsattr 查看文件系统的属性
chattr
常见命令参数
A:即Atime,告诉系统不要修改对这个文件的最后访问时间。 S:即Sync,一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘。 a:即Append Only,系统只允许在这个文件之后追加数据,不允许任何进程覆盖或截断这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立和修改文件,而不允许删除任何文件。 b:不更新文件或目录的最后存取时间。 c:将文件或目录压缩后存放。 d:当dump程序执行时,该文件或目录不会被dump备份。 D:检查压缩文件中的错误。 i:即Immutable,系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。 s:彻底删除文件,不可恢复,因为是从磁盘上删除,然后用0填充文件所在区域。 u:当一个应用程序请求删除这个文件,系统会保留其数据块以便以后能够恢复删除这个文件,用来防止意外删除文件或目录。 t:文件系统支持尾部合并(tail-merging)。 X:可以直接访问压缩文件的内容。