Linux 运维必学(三)|零基础吃透Linux:文件权限+目录配置核心干货
玩Linux系统,文件权限和目录配置规范是入门必啃的核心基础。绝大多数文件访问报错、目录操作异常、权限拒绝问题,根源都出自这两块。
今天用一篇轻量化干货文,帮大家梳理纯核心知识点,零基础也能快速看懂、直接上手实操。一、Linux 核心权限体系:三类用户 + 三种权限
Linux 所有文件、目录的权限,统一遵循UGO 权限模型,将访问者分为三类,对应不同操作权限:u(user 所有者):文件/目录的创建者、归属主用户,拥有最高自主权限g(group 所属组):归属用户组内的所有成员,共享组权限o(others 其他用户):除所有者、所属组外的所有系统用户三类用户,分别对应r/w/x三种基础权限,作用于文件和目录时,含义完全不同,这是新手最容易踩坑的重点。1、r/w/x 对【文件】的作用
r(读):可读取文件内容、查看文件数据(如 cat、more 查看)w(写):可修改、编辑文件内容(如 vi/vim 编辑、echo 覆盖写入)x(执行):可运行该文件(脚本、二进制程序必须具备执行权限才能运行)2、重点!r/w/x 对【目录】的作用
目录的权限逻辑和文件完全不一样,尤其是x 权限,是核心中的核心,务必牢记:r(读):可查看目录内的文件列表(ls 罗列内容),但无法进入目录、无法读取文件详情w(写):可在目录内新增、删除、重命名文件/子目录x(执行/进入):目录的核心权限,拥有 x 权限才能 cd 进入目录、访问目录内的文件数据、执行目录内程序核心总结:目录只有 r 没有 x,只能看列表、无法使用内容;目录必须具备 x 权限,才能正常访问、操作内部文件。
二、Linux 关键文件属性与实操命令
日常运维中,所有权限查看、修改操作,都靠4个核心命令搞定,简洁好记、高频常用。1、ls:查看文件/目录属性与权限
核心用法:ls -l,可查看详细属性,包含文件类型、UGO 权限、所有者、所属组、大小、修改时间等完整信息,是排查权限问题的首选命令。2、chmod:修改权限(最常用)
专门修改文件/目录的 rwx 权限,支持数字模式(最常用)和符号模式两种修改方式,这里重点补充新手必学的数字权限原理与实操模板。① 数字权限换算原理
Linux 将 rwx 权限对应固定数值,通过数字组合精准配置权限:r=4、w=2、x=1,无权限为0。三类用户(u/g/o)分别计算数值,组合成三位权限数字。例:rwx = 4+2+1=7、rw-=4+2=6、r-x=4+1=5、r--=4、---=0② 运维高频标准权限(必记)
644(文件默认权限):所有者可读写,组和其他人仅可读,安全通用,适配绝大多数普通文件755(目录/程序权限):所有者可读写执行,组和其他人可读可执行,是目录、脚本、程序的标配权限700(私密权限):仅所有者拥有全部权限,他人无任何权限,适用于私密配置文件、个人目录③ 常用实操命令示例
修改文件权限为644:chmod 644 test.txt修改目录权限为755(包含内部所有文件):chmod -R 755 test_dir/符号模式新增执行权限:chmod +x test.sh(给所有用户添加执行权限)3、chown:修改文件/目录所有者
用于变更文件、目录的归属用户,可单独修改所有者,也可一键同时修改所有者和所属组,支持递归修改目录及内部所有文件。① 常用实操命令示例
仅修改所有者:chown user1 test.txt同时修改所有者和所属组:chown user1:group1 test.txt递归修改目录所有归属:chown -R user1:group1 test_dir/4、chgrp:修改文件/目录所属组
单独变更文件、目录的归属用户组,操作简洁,常配合 chown 完成权限归属微调,同样支持递归操作。① 常用实操命令示例
修改文件所属组:chgrp group1 test.txt递归修改目录所属组:chgrp -R group1 test_dir/
三、Linux 目录配置标准:FHS 与 LSB
Linux 所有发行版(CentOS、Ubuntu、Debian等)的目录结构不是随意设计的,遵循统一行业标准,保证系统目录规范统一、兼容性一致。1、FHS 文件系统层级标准
FHS(Filesystem Hierarchy Standard,文件系统层级标准)是所有 Linux 发行版通用的官方目录规范,也是Linux目录结构的核心底层准则。不管是CentOS、Ubuntu、Debian还是Rocky Linux,所有主流系统的目录布局、文件存放规则,全部遵循FHS标准,这也是不同Linux系统操作逻辑互通的核心原因。① FHS核心设计理念
FHS的核心目的是标准化、统一化。它明确界定Linux根目录下所有一级、二级目录的用途、存放文件类型,区分系统核心目录与用户自定义目录,避免文件杂乱存放,同时保障系统稳定性、软件兼容性和运维统一性。简单来说:FHS就是Linux系统的「文件收纳规则手册」,规定了每一类文件该放在哪个目录。② FHS核心层级划分
FHS将系统目录分为两大核心层级,分工明确,也是我们日常操作接触最多的目录:根层级目录(/ 根目录下一级):系统核心基础目录,存放系统启动、运行、修复必需的核心文件,缺一不可,禁止随意修改、删除。次级核心目录(/usr、/var):系统拓展目录,承载软件程序、用户数据、日志、缓存等日常运行数据,是运维高频操作目录。③ FHS重点目录功能详解(必考/常用)
这里梳理新手、运维、面试高频核心目录,精准对应FHS规范定义:/ 根目录:所有目录的顶层入口,Linux所有文件、目录都隶属于根目录,是整个文件系统的唯一根节点。/usr 目录(系统软件资源目录):FHS核心次级目录,全称 Unix System Resource。存放系统预装软件、二进制命令、程序库、帮助文档、用户程序等,相当于Windows的「Program Files」,系统绝大多数外部命令、软件都存放在此。/var 目录(动态数据目录):FHS核心次级目录,全称 Variable。专门存放动态、可变数据,包括系统日志、程序缓存、数据库文件、运行进程数据、邮件数据等,是系统运行过程中数据更新最频繁的目录。/etc 目录:系统全局配置目录,FHS规定所有系统服务、软件的配置文件默认存放于此,是运维修改配置的核心目录。/home 目录:普通用户家目录,所有用户的个人文件、数据、配置都存放在此,隔离不同用户的私有数据。/root 目录:超级管理员root的专属家目录,权限独立,普通用户无访问权限。/tmp 目录:系统临时文件目录,存放各类临时缓存、运行文件,系统会定期自动清理。④ FHS两大核心规范特性
静态与动态文件分离:FHS严格区分静态文件(固定不变的命令、程序、库文件,存放于/usr)和动态文件(实时变化的日志、缓存、进程数据,存放于/var),保障系统运行稳定。共享与私有文件分离:规范系统全局共享文件、用户私有文件的存放路径,实现多用户环境下的文件权限隔离与资源共享。2、LSB Linux 标准基础规范
LSB(Linux Standard Base,Linux标准基础)是基于 FHS 延伸的系统统一规范,也是 Linux 生态的兼容标准。核心区别:FHS 只负责规范「目录结构、文件存放位置」;而 LSB 覆盖范围更广,在 FHS 目录标准之上,统一了系统基础命令、系统运行环境、库文件版本、程序调用接口、启动脚本规范。核心作用:解决不同 Linux 发行版(CentOS、Ubuntu、Debian 等)的差异化问题,保证开发、运维的程序、脚本、命令可以跨发行版通用,实现一次编写、处处运行,大幅提升Linux系统的兼容性与通用性。3、目录树 & 绝对路径 / 相对路径
① 目录树:Linux 以根目录/为顶层起点,层层分支的倒置树状目录结构,是系统文件存储的基础框架
② 绝对路径:从根目录 / 开始的完整路径,唯一性强、定位精准,不受当前工作目录影响
③ 相对路径:基于当前所在目录的路径,写法简洁、操作高效,仅适用于当前目录层级
四、核心知识点极简复盘
权限模型:u所有者、g所属组、o其他用户,三类用户独立配置 rwx 权限核心区别:文件 x 是执行权限,目录 x 是进入和访问权限,为目录必备权限四大核心命令:ls -l 查看权限属性;chmod 配置rwx权限(644/755为高频权限);chown 改所有者;chgrp 改所属组,均支持递归操作目录目录规范:FHS 定义目录存放规则,LSB 统一系统兼容标准路径规则:绝对路径从 / 起始,相对路径基于当前目录,适配不同操作场景以上就是 Linux 文件权限与目录配置的全部核心内容,零基础入门、日常运维排查、面试基础考点全覆盖,建议收藏反复巩固!