在Linux系统下,使用权限来保护资源的安全将是一种不错的选择,系统中每个文件的权限都有可读r、可写w和可执行x这三种权限,它们分别对应权限数值4、2 和1,系统为每个文件和目录都设有默认的权限
属主: 用户信息 文件数据创造者 属组: 用户组信息 给一个组赋予相应权限 其他用户: 不是属主 不属于属组成员的用户信息
系统用户分类超级管理员皇帝root uid: 0虚拟用户傀儡nobody uid: 1-999 centos7 特点: 不能登录系统 管理服务进程信息 没有家目录普通用户平民oldboy uid: 1000+ centos7一个用户组中可以只有一个用户,也可以一个用户可以属于多个用户组,还可以一个用户组中有多个用户
inode:文件索引信息,目录 特点: 1、存储着数据属性信息(文件类型、权限、硬链接、属主、属组、大小、时间)2、存储指向相应block指针信息 3、数据存储会占用一个inode 诞生过程:操作磁盘进行格式化–> 创建文件系统–> inode 查看方法:
[root@yu zy]# df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda3 9436672 60414 9376258 1% / devtmpfs 121762 374 121388 1% /dev tmpfs 124487 1 124486 1% /dev/shm tmpfs 124487 706 123781 1% /run tmpfs 124487 16 124471 1% /sys/fs/cgroup /dev/sda1 524288 326 523962 1% /boot tmpfs 124487 1 124486 1% /run/user/0block:文件数据信息,内容 特点:1、存储文件数据真实内容(文件) 2、存储目录下面文件名称(目录) 3、数据存储会占用多个block 诞生过程:操作磁盘进行格式化–> 创建文件系统–> block 查看方法:
[root@yu zy]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda3 18863104 1670704 17192400 9% / devtmpfs 487048 0 487048 0% /dev tmpfs 497948 0 497948 0% /dev/shm tmpfs 497948 7780 490168 2% /run tmpfs 497948 0 497948 0% /sys/fs/cgroup /dev/sda1 1038336 129608 908728 13% /boot tmpfs 99592 0 99592 0% /run/user/0xfs文件系统默认block=4k 根据应用场景而定: 假设1:调整大一些 都是大文件数据10G --> block 8k 节省IO, 提升数据存储/读取效率 假设2:调整小一些 都是小文件数据1K --> block 2K 提高磁盘存储利用率,,避免磁盘空间浪费
软链接:相当于文件数据快捷方式 特点:1、 软链接文件会指向到源文件 2、源文件删除链接文件失效 3、可以给目录创建软链接 如何操作:
[root@yu zy]# ln -s 源文件 链接文件作用:操作方便
硬链接:查看数据内容多个门/inode号码相同文件数据称为硬链接 特点:1、硬链接文件指向相同inode 2、源文件删除不会影响硬链接文件 3、只能给普通文件创建硬链接 如何操作:
[root@yu zy]# ln 源文件 链接文件作用:防止文件误删除
补:硬链接与cp备份的不同:cp命令不仅能防止文件误删除,也可以防止文件误修改
思考问题:目录的硬链接为什么是两个
[root@yu /]# ll 16777827 drwxr-xr-x. 2 root root 6 Oct 31 22:47 yu因为本体目录是一个,在目录中的隐藏文件 .
[root@yu yu]# ll -ai total 4 16777827 drwxr-xr-x. 2 root root 6 Oct 31 22:47 . 64 dr-xr-xr-x. 22 root root 4096 Oct 31 21:35 ..系统常用权限位: 9位权限位 实际是为12位
文件默认权限: 644(root) 目录默认权限: 755(root) 如何修改默认权限: umask: 0022 umask是奇数信息 文件默认权限: 666 - umask(033) = 63(+1)3(+1) == 644 文件做奇数运算位, 做完运算还需要在加1 目录默认权限: 777 - umask(033) = 744 umask是偶数信息 文件默认权限: 666 - umask(022) = 644 目录默认权限: 777 - umask(022) = 755 临时修改: 文件默认权限:需求 600 666 - umask(066) = 600 需求 611 666 - umask(055) = 61(+1)1(+1) = 622 目录默认权限: 需求 700 777 - umask(077) = 700 永久修改:
[root@yu zy]# vim /etc/profile if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then umask 002 else umask 022 fiayu:是管理员权限赋予的用户(用户需存在) all:进行权限统一集中管理(稍后解释) 最后部分:赋予普通用户权限信息,用逗号分割