一. 文件基本权限(九个字节组成,分成三段)
rw- r-- r--
基本权限对root无限制。
1、对于文件来说,用户分为三类
u: --user 文件的所有者
g:--group 文件的所属组
o:--other 其他人
a:--all 所有
rw- r-- r--
u g o
|-------------|
a
2、权限的分类
r:--read 读权限
w:--write 写权限
x:--excute 执行权限
- : 无此权限
3、chmod —— 修改或者设置文件的权限的 change mode
1)数字权限 最常用的方式(*)
权限对应的数字
r -- 4
w -- 2
x -- 1
- -- 0
rw- r-- r-- : 644
[root@localhost ~]# ll aaa
-rw-r--r--. 1 root root 0 1月 8 17:00 aaa
[root@localhost ~]# chmod 777 aaa
[root@localhost ~]# ll aaa
-rwxrwxrwx. 1 root root 0 1月 8 17:00 aaa
2)字母表示
u g o a
(1)等值权限 =
[root@localhost ~]# chmod o=r aaa
[root@localhost ~]# ll aaa
-rwxrwxr--. 1 root root 0 1月 8 17:00 aaa
(2)增值权限 +
[root@localhost ~]# chmod 600 aaa
[root@localhost ~]# ll aaa
-rw-------. 1 root root 0 1月 8 17:00 aaa
[root@localhost ~]# chmod go+rw aaa
[root@localhost ~]# ll aaa
-rw-rw-rw-. 1 root root 0 1月 8 17:00 aaa
(3)取消权限 -
[root@localhost ~]# chmod g-rw aaa
[root@localhost ~]# ll aaa
-rw----rw-. 1 root root 0 1月 8 17:00 aaa
查看用户umask,修改用户umask,直接umask后跟数字即可。
[root@localhost ~]# umask
0022
[root@localhost ~]# su - Loyal
[Loyal@localhost ~]$ umask
0002
目录的最大权限777
文件的最大权限666
文件的默认权限: 文件的最大权限-umask
目录的默认权限:目录的最大权限-umask
4、文件的权限
r单独存在,可查看文件内容
w单独存在,看不到文件内容,但是可以强制修改文件内容,会覆盖原文件内容,单独存在,意义不大
x单独存在,毫无意义
文件的组合权限
rx权限:文件可读,可执行,不可修改
rw权限:可读,可写,不可执行
wx:不可读,不可执行,可以覆盖写
5、目录的权限
对于目录:
只有r权限时,可以读(有报错),不能写,也不能进入目录
只有w权限时,毫无意义
只有x权限时,只能进入,不能读,不能写
小结:
目录的rw权限:可以查看内容,不可以进入目录,不能删除目录或它里面的文件
目录的rx权限:可以查看内容,可以进入目录,不可以修改目录的内容
目录的wx权限:不可以查看目录内容,可以进入目录,可以删除目录下的文件,前提是你需要知道目录下有什么文件
二.文件系统
1.文件系统:磁盘上组织文件的方法,称为文件系统
文件系统是对存储空间的管理和分配,负责文件的存储并对存入的文件进行保护和检索的系统
2.文件系统结构
MBR 分区1 分区2 分区3 ...
block group 0 block group 1 ...
(super block,group descriptors table, block bitmap,inode bitmap,inode table,block table)
super block:超级块,不同的文件系统不相同,记录了该文件系统整体信息,包括inode/block总量,使用量,剩余量以及文件系统的格式、相关信息
inode:记录文件属性(文件大小、权限、时间、i节点编号等),但是不记录文件名。一个文件占用一个i节点,i节点记录数据的block编号。
3.文件存储方式
通过i节点指向磁盘中的数据块
4.ext2,ext3,ext4的 区别
ext2 是非日志文件系统
ext3 和ext4 都是日志文件系统
ext3 最大支持16TB的文件系统,最大支持2TB的单个文件,最多32000个
子目录,inode的大小为128字节
ext4 最大支持1EB的文件系统,最大支持16TB的单个文件,无限子目录
inode大小为256字节
5.文件的搜索过程
6.查看文件系统信息
#dumpe2fs -h /dev/sda1
Default mount options: user_xattr acl //默认挂载选项
Filesystem state: clean //说明该文件系统没有问题
Errors behavior: Continue //文件系统操作系统类型
Filesystem OS type: Linux
Inode count: 102400 //i节点数量
Block count: 409600 //数据块的数量
Reserved block count: 20480 //保留的块的数量
Free blocks: 361729 //空闲的块的数量
Free inodes: 102362 //空闲的i节点的数量
First block: 1
Block size: 1024 //块的大小(4KB)
......
Inode size: 128 //i节点的大小(单位是字节)
三.文件系统检测
fsck —— 检查和修复Linux文件系统错误的命令
e2fsck
何时用?
通常只有身为root,并且在文件系统出现问题的时候才使用。
[root@localhost ~]# fsck /dev/sda1
fsck from util-linux-ng 2.17.2
e2fsck 1.41.12 (17-May-2010)
/dev/sda1 is mounted.
e2fsck: 无法继续, 中止.
注意:要检测文件系统,需要先将要检测的设备或者是分区卸载才可以。
[root@localhost ~]# umount /dev/sda1
[root@localhost ~]# fsck /dev/sda1
fsck from util-linux-ng 2.17.2
e2fsck 1.41.12 (17-May-2010)
/dev/sda1: clean, 38/102400 files, 47871/409600 blocks
clean证明分区无问题
-a:自动修复检测过程中遇到的问题,不需要再交互
[root@localhost ~]# fsck -a /dev/sda1
fsck from util-linux-ng 2.17.2
/dev/sda1: clean, 38/102400 files, 47871/409600 blocks