1. Linux自学路线规划
对于Linux初学者来说,第八天的学习应该已经完成了基础命令的入门阶段。这个阶段建议重点突破以下三个方向:
1.1 文件权限深度掌握
Linux文件系统的权限管理是核心基础,需要彻底理解以下概念:
- 权限三元组(rwx)在文件和目录上的不同含义
- 数字表示法(755/644等)与符号表示法(u+rx)的转换
- 特殊权限位(SUID/SGID/sticky bit)的作用场景
实操建议:
bash复制# 查看详细权限信息
ls -l /etc/passwd
# 递归修改目录权限
chmod -R 755 /webroot
# 设置SUID权限
chmod u+s /usr/bin/passwd
1.2 文本处理三剑客
grep/sed/awk这三个工具的组合使用可以解决90%的文本处理需求:
| 工具 | 适用场景 | 典型示例 |
|---|---|---|
| grep | 内容过滤 | `grep -E "error |
| sed | 流式编辑 | sed -i 's/old/new/g' file.txt |
| awk | 字段处理 | awk -F: '{print $1,$6}' /etc/passwd |
1.3 软件包管理实战
不同发行版的包管理工具对比:
- Debian/Ubuntu系:
bash复制# 查询软件包
apt-cache search nginx
# 安装特定版本
apt-get install nginx=1.18.0-0ubuntu1
- RHEL/CentOS系:
bash复制# 查看已安装包
rpm -qa | grep httpd
# 安装本地rpm包
yum localinstall package.rpm
2. 系统管理核心技能
2.1 进程管理进阶
ps aux输出的关键字段解析:
- %CPU:进程占用的CPU百分比
- VSZ:虚拟内存用量(KB)
- RSS:实际物理内存用量
- STAT:进程状态(S睡眠、R运行、Z僵尸等)
后台作业控制技巧:
bash复制# 将运行中进程转到后台
Ctrl+z → bg
# 查看所有作业
jobs -l
# 将后台作业调回前台
fg %1
2.2 磁盘管理实战
df和du命令的黄金组合:
bash复制# 查看磁盘使用情况(人类可读格式)
df -h
# 查找大文件(前10名)
du -ah /var | sort -rh | head -n 10
LVM基础操作流程:
- 创建物理卷:
pvcreate /dev/sdb1 - 创建卷组:
vgcreate vg_data /dev/sdb1 - 创建逻辑卷:
lvcreate -L 10G -n lv_mysql vg_data - 格式化并挂载:
mkfs.ext4 /dev/vg_data/lv_mysql
3. Shell脚本入门
3.1 基础语法要素
一个完整的脚本示例:
bash复制#!/bin/bash
# 注释:这是一个备份脚本
BACKUP_DIR="/backups"
LOG_FILE="/var/log/backup.log"
if [ ! -d "$BACKUP_DIR" ]; then
mkdir -p "$BACKUP_DIR"
fi
tar -czf "${BACKUP_DIR}/backup_$(date +%F).tar.gz" /home 2>> "$LOG_FILE"
3.2 实用脚本案例
系统监控脚本:
bash复制#!/bin/bash
# 获取系统负载
load=$(uptime | awk -F'[a-z]:' '{print $2}')
# 获取内存使用
mem=$(free -m | awk '/Mem/{printf "%.1f%%", $3/$2*100}')
# 获取磁盘空间
disk=$(df -h / | awk 'NR==2{print $5}')
echo "[$(date)] 系统监控报告:"
echo "- 负载: $load"
echo "- 内存: $mem"
echo "- 根分区: $disk"
4. 网络配置与管理
4.1 网络调试命令
netstat的替代方案:
bash复制# 查看监听端口
ss -tulnp
# 追踪网络路由
mtr 8.8.8.8
# 查看网络接口详情
ip -s link show eth0
4.2 防火墙配置
UFW基础操作:
bash复制# 允许SSH连接
ufw allow 22/tcp
# 限制特定IP访问
ufw allow from 192.168.1.100 to any port 3306
# 查看规则
ufw status numbered
5. 常见问题排查
5.1 性能问题定位
快速诊断流程:
top查看CPU占用free -m检查内存iostat -x 1分析磁盘IOiftop -n监控网络流量
5.2 登录问题处理
检查认证日志:
bash复制# 查看失败登录尝试
grep "Failed password" /var/log/auth.log
# 检查账户锁定状态
passwd -S username
6. 学习资源推荐
6.1 在线实验环境
- Linux容器实验室:
docker run -it --rm alpine sh - 交互式学习网站:overthewire.org/bandit
6.2 进阶学习路径
- 掌握正则表达式
- 学习Python/Perl等脚本语言
- 理解系统初始化流程(systemd/sysvinit)
- 研究内核参数调优
关键提示:每天学习后建议用
history命令回顾当天操作,将常用命令整理成备忘清单。遇到问题时,先尝试--help查看帮助,再查阅man手册(如man bash),最后再搜索解决方案。
