红帽 Linux 零基础完整学习笔记 6
基于rocky linux 9 的学习笔记目录一、命令行基础与数据流1. 管道符 |2. 输出重定向改变水流方向二、路径与文件管理1. 路径2. 基础命令增删改查3. 通配符模糊匹配的魔法三、进程与定时任务1. 进程终止 kill2. 周期性任务 crontab四、用户、组与权限核心重点1. 用户与组配置文件2. 密码安全 /etc/shadow3. 基础权限 rwx4. 特殊权限难点5. ACL 访问控制列表五、系统服务管理六、文件查找、归档与压缩1. 文件查找 find2. 归档与压缩七、网络文件传输1. scp(安全复制)2. rsync(增量同步 - 重点)八、软件包管理1. RPM (底层工具)2. 软件仓库 .repo文件九、文件系统与磁盘查看磁盘与挂载十、系统调优Tuned1. 调优模式2. 动态调优配置十一、SELinux强制访问控制1. 运行模式2. 永久修改与版本差异3. SELinux 上下文Context十二、实操排错排错一scp 报错排错二Web 访问失败十三、小结一、命令行基础与数据流1. 管道符 |是数据的流水线作用将前一个命令的标准输出传递给后一个命令作为输入。bash # 统计当前目录下有多少个文件 ls | wc -l # 在大量结果中精确查找 cat /etc/passwd | grep root当前目录下只有一个文件哦“命令一计算后传值给命令二继续运算。”命令不是孤立的数据像水流一样经过一道道“工序”处理。2. 输出重定向改变水流方向作用决定命令的结果是显示在屏幕上还是存进文件里。bash file.txt # 覆盖写入覆盖原有内容 file.txt # 追加写入保留原有内容加在末尾 2/dev/null # 错误重定向把报错丢进“黑洞”只留正确信息bash # 经典用法查找文件屏蔽烦人的“权限拒绝”报错 find / -name *.conf 2/dev/null这样就没有权限拒绝之类的报错了二、路径与文件管理1. 路径去哪里找文件bash pwd # 显示当前所在目录 cd / # 切换到根目录 cd ~ # 返回家目录2. 基础命令增删改查bash mkdir dir1 # 创建目录 touch file.txt # 创建空文件 cp file1 file2 # 复制兼具重命名功能 mv file1 file2 # 移动兼具重命名功能 rm file.txt # 删除文件 rm -r dir1 # 递归删除目录删目录必加 -r简单的基础命令就不一一实操了都很简单的。cp 和 mv 本质上都是复制加改名。把看似独立的命令打通了底层逻辑。3. 通配符模糊匹配的魔法bash # 反向排除示例 ls [^aK]* # 花括号迭代重点 echo {a,b}{1,2} # 输出a1 a2 b1 b2 mkdir dir{1..10}按顺序迭代a b 1 2在通配符前加‘尖尖’^用于排除特定首字母。底层逻辑Shell 先展开花括号再执行命令。例如 echo {a,b}{1,2}Shell 先算成 a1 a2 b1 b2再交给 echo打印。三、进程与定时任务1. 进程终止 killbash kill PID # 正常关闭优雅 kill -9 PID # 强制杀死暴力类比正常关闭与强制关机的区别。kill默认是通知进程‘你该走了’进程可以收拾行李保存数据kill -9是直接拔电源数据可能丢失。2. 周期性任务 crontabbash crontab -e格式分 时 日 月 周 命令bash 0 2 * * * backup.sh⚠️ 易错点必考周字段0 周日1-6 周一至周六。国外一周是从周日开始的四、用户、组与权限核心重点1. 用户与组配置文件用户文件bash cat /etc/passwd # 结构用户名:x:UID:GID:描述:家目录:Shell组文件bash cat /etc/group查看组文件UID/GID 规则0Root超级管理员1-999系统用户系统自带1000普通用户这套编号规则是Linux权限管理的底层逻辑。2. 密码安全 /etc/shadowbash cat /etc/shadow # 结构$加密算法$盐值$密文盐值防止相同密码生成相同密文。给密码加了点‘佐料’防止黑客撞库。密码有效期99999天 ≈ 永久生效。10万天差不多一辈子就是永不过期。3. 基础权限 rwxbash ls -l # -rwxr-x--- # 类型|所有者|所属组|其他人看我们唯一的文件我们所拥有的权限4. 特殊权限难点SGID 实现了新建文件自动继承父目录的所属组。Sticky bit 给目录上了把‘防误删锁’避免多用户环境下互相删文件。5. ACL 访问控制列表痛点传统权限只能针对 UGO用户、组、其他人太粗放。解决方案ACL 可以针对特定用户授权。bash setfacl -m u:alice:rwx file.txt # 设置ACL getfacl file.txt # 查看ACL给权限管理开了‘白名单’打破了‘一刀切’的粗放模式。五、系统服务管理systemctl命令集bash systemctl start sshd # 启动 systemctl stop sshd # 停止 systemctl restart sshd # 重启 systemctl reload sshd # 重载配置不中断服务 systemctl enable sshd # 开机自启 systemctl disable sshd # 取消自启 systemctl status sshd # 查看状态彻底禁用与停止服务的区别。stop是管现在disable是管以后开机是否启动。list-dependencies用于查看服务依赖启动 sshd 必须先启动 network。六、文件查找、归档与压缩1. 文件查找 findbash # 按名称 find / -name *.conf 2/dev/null # 按用户 find / -user alice # 按大小2M到4M之间 find / -size 2M -size -4Mfindvs locatelocate依赖数据库快但有延迟find实时查找慢但准。日常查找优先使用 find。”组合逻辑find的条件默认是 AND并且。2. 归档与压缩概念区分归档Tar把一堆文件装进一个袋子.tar体积不变。压缩Gzip/XZ把袋子抽真空体积变小。三种压缩算法对比bash tar -czvf archive.tar.gz dir/ # z gzip tar -cjvf archive.tar.bz2 dir/ # j bzip2 tar -cJvf archive.tar.xz dir/ # J xzxz 压缩率最高但吃 CPU 吃得厉害。参数记忆法create (创建)verbose (显示过程)file (指定文件名必须放最后)z/j/J (压缩算法)七、网络文件传输1. scp(安全复制)bash scp file.txt userserver:/path/ scp userserver:/path/file.txt ./2. rsync(增量同步 - 重点)bash rsync -avp dir/ userserver:/path/rsync仅复制差异部分增量scp是全量复制。传输大文件或备份时rsync效率极高。八、软件包管理1. RPM (底层工具)bash rpm -qa # 查询已安装 rpm -ivh pkg.rpm # 安装 rpm -e pkg # 卸载 rpm -e --nodeps pkg # 强制卸载忽略依赖看看我们已经安装的软件–nodeps是暴力卸载的保底手段用于解决依赖冲突但可能导致软件功能不全。2. 软件仓库 .repo文件bash vim /etc/yum.repos.d/custom.repo配置文件结构ini [name] nameDescription baseurlhttp://mirror.url/path enabled1 gpgcheck0 # 0关闭校验1开启校验仅以 .repo结尾的文件才会被系统识别。gpgcheck0是为了使用‘更好用’的软件个人环境但国企等正规企业严禁盗版必须使用正版gpgcheck1。九、文件系统与磁盘查看磁盘与挂载bash lsblk # 查看块设备及挂载点树状结构 df -h # 查看磁盘使用情况人类可读查看树状结构看的特别清楚挂载点机制目录作为挂载点与存储设备建立关联。把底层硬件‘嫁接’到目录树上让访问硬件像访问文件夹一样简单。十、系统调优Tuned1. 调优模式静态调优配置一次长期生效。动态调优根据系统负载自动调整适合电商峰值。2. 动态调优配置bash vim /etc/tuned/tuned-main.confini dynamic_tuning 1 # 1开启动态0关闭 update_interval 10 # 更新间隔秒动态调优的核心价值在于应对突发流量保障系统弹性。类比“面包厂改造家具设备根据业务环境适配生产线。”十一、SELinux强制访问控制1. 运行模式bash getenforce # 查看当前模式 setenforce 0 # 临时改为 Permissive setenforce 1 # 临时改为 Enforcing2. 永久修改与版本差异bash vim /etc/selinux/config SELINUXpermissive # 需要 reboot 重启生效⚠️ 重大变更RHEL 9红帽9已不再支持通过配置文件关闭SELinux只能依赖启动时添加内核参数 selinux0。3. SELinux 上下文Contextbash ls -Z file.txt ps -Z结构user:role:type:levelType类型才是SELinux的灵魂。它通过给进程和文件打标签实现白名单机制没被允许的统统拦截。防御逻辑即使 Web 服务如 Apache被入侵SELinux 也能阻止其访问系统文件控制“爆炸半径”。十二、实操排错排错一scp 报错现象执行 scp提示找不到文件。发现本地目录为空。解决bash touch test.txt # 先创建文件 scp test.txt userserver:/path/ 复盘命令操作的是“实体”目录为空或路径错误都会导致失败。排错二Web 访问失败现象浏览器访问 localhost失败。预期以为是 SELinux 拦截应报 403。排查bash systemctl status httpd # 发现 Apache 未运行解决bash systemctl start httpd 复盘服务层 安全层。如果服务本身没启动安全策略再宽松也无济于事。十三、小结Linux 不是一堆命令的堆砌而是一个逻辑严密、权限分明、注重效率的系统。图形界面是给新手用的命令行才是运维的核心壁垒。学习方法遇到不会的查资料才是常态别死磕。环境差异Ubuntu 和红帽命令有差异企业多用红帽系。