Linux-学习路线
Linux-学习路线
🎯 学习目标
- 掌握 Linux 基础知识与命令操作,能够熟练在终端中完成文件管理、进程查看等常用操作。
- 理解 Linux 文件系统结构和权限机制,具备安全配置和用户管理能力。
- 学会使用 Shell 脚本进行自动化运维,提高工作效率。
- 掌握 Linux 系统监控、日志分析、服务部署等实际运维技能。
- 能够在阿里云 ECS 上部署和维护一个基础的 Web 应用环境(如 Nginx + PHP/MySQL)。
📚 核心重点(从浅入深)
阶段 | 主题 | 关键知识点 |
---|---|---|
第一阶段 | Linux 入门 | 命令行基础、文件目录操作、远程连接(SSH) |
第二阶段 | 系统管理 | 用户权限、文件权限、软件安装、服务管理 |
第三阶段 | Shell 编程 | 脚本编写、变量、条件判断、循环、函数 |
第四阶段 | 系统监控 | 进程管理、资源监控、日志查看、定时任务 |
第五阶段 | 实战部署 | 安装 Nginx/Apache、部署静态网站、数据库配置、防火墙设置 |
🧠 详细讲解
第一阶段:Linux 入门 🚀
✅ 学习目标
- 熟悉 Linux 终端界面
- 掌握基本命令(cd、ls、mkdir、touch、rm、cp、mv)
- 使用 SSH 登录远程服务器(如阿里云 ECS)
📌 案例:登录你的阿里云 ECS 并创建第一个文件夹
# 使用 ssh 登录你的 ECS 服务器(替换为你的公网IP)
ssh root@your_ecs_ip
# 创建一个名为 "myproject" 的文件夹
mkdir myproject
# 查看当前目录下的文件
ls -l
# 进入该目录
cd myproject
# 创建一个测试文件
touch test.txt
# 显示文件内容(目前为空)
cat test.txt
💡 注意事项:
- 初学时不要怕输错命令,Linux 是“多练多得”的系统。
- 所有命令都区分大小写,请注意输入格式。
第二阶段:系统管理 🔐
✅ 学习目标
- 管理用户和组(useradd、groupadd、passwd)
- 设置文件权限(chmod、chown)
- 安装和卸载软件包(yum/apt)
- 启动、停止服务(systemctl)
📌 案例:添加用户并限制其访问权限
# 添加一个新用户
useradd devuser
# 设置密码
passwd devuser
# 修改文件所有者
chown devuser:devuser /home/devuser/myproject
# 设置权限:只允许 devuser 读写
chmod 700 /home/devuser/myproject
🔧 实战建议:
- 在阿里云 ECS 中尝试搭建 FTP、NFS 或 Samba 服务,练习用户权限控制。
第三阶段:Shell 编程 🧩
✅ 学习目标
- 编写简单的 Bash 脚本
- 掌握变量、条件判断、循环、函数
- 使用脚本实现自动化备份、日志清理等功能
📌 案例:写一个自动备份脚本
#!/bin/bash
# 备份指定目录到 /backup
DATE=$(date +%Y%m%d)
BACKUP_DIR="/backup"
SOURCE_DIR="/var/www/html"
mkdir -p $BACKUP_DIR
tar -czf ${BACKUP_DIR}/backup_${DATE}.tar.gz $SOURCE_DIR
echo "备份已完成:${BACKUP_DIR}/backup_${DATE}.tar.gz"
📌 保存为 backup.sh,然后赋予执行权限:
chmod +x backup.sh
./backup.sh
🛠️ 技巧:
- 使用
set -x
可以调试脚本运行过程。 - 脚本开头加上
#!/bin/bash
表示这是一个 Bash 脚本。
第四阶段:系统监控 📊
✅ 学习目标
- 监控 CPU、内存、磁盘使用情况
- 查看系统日志(dmesg、journalctl、/var/log/)
- 使用 top、htop、iotop、vmstat 等工具
- 配置定时任务(crontab)
📌 案例:查看系统负载和内存使用
# 查看系统负载
uptime
# 查看内存使用情况
free -h
# 实时监控进程
top
# 更友好的 top 替代(需安装)
htop
# 查看磁盘空间
df -h
⏰ 定时任务案例:每天凌晨 2 点执行备份
# 编辑 crontab
crontab -e
# 添加如下一行
0 2 * * * /root/backup.sh >> /root/backup.log 2>&1
📊 建议实践:
- 使用
sar
或nmon
收集系统性能数据。 - 尝试部署 Prometheus + Node Exporter 来图形化监控。
第五阶段:实战部署 🛠️
✅ 学习目标
- 安装 LNMP(Linux + Nginx + MySQL + PHP)
- 部署静态网页或 WordPress 博客
- 配置防火墙(firewalld/iptables)
- 使用 systemctl 管理服务启动项
📌 案例:部署一个静态网站
# 安装 Nginx
sudo yum install nginx -y
# 启动 Nginx
sudo systemctl start nginx
# 设置开机自启
sudo systemctl enable nginx
# 编辑默认网站配置
sudo vi /etc/nginx/conf.d/default.conf
# 将 root /usr/share/nginx/html; 改为你自己的路径,例如:
# root /home/user/mywebsite;
# 重启 Nginx
sudo systemctl restart nginx
🌐 浏览器访问你的 ECS IP 地址即可看到页面
🔒 配置防火墙开放 80 端口(CentOS)
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --reload
🎯 学习建议 & 计划安排(适合你当前环境)
时间 | 学习内容 | 实践项目 |
---|---|---|
第1周 | Linux 基础命令 | 操作文件、创建用户、安装软件 |
第2周 | 文件权限与用户管理 | 配置不同用户访问权限 |
第3周 | Shell 脚本入门 | 写几个自动化脚本,如备份、清理日志 |
第4周 | 系统监控与日志 | 安装 htop,查看日志,设置定时任务 |
第5周 | 服务部署实战 | 安装 Nginx、PHP、MySQL,部署博客 |
第6周 | 高级进阶 | 自建 Git 仓库、配置 HTTPS、使用 Docker |
📚 推荐学习资源
类型 | 名称 | 描述 |
---|---|---|
书籍 | 《鸟哥的 Linux 私房菜》 | 经典教材,适合初学者 |
视频 | B站 Linux 教程合集 | 如 “狂神说”、“尚硅谷” |
工具 | VSCode + Remote-SSH 插件 | 方便 Windows 下连接 Linux 开发 |
社区 | CSDN、知乎、SegmentFault、掘金 | 查找问题解决方案 |
实战平台 | 阿里云实验平台、牛客网、LeetCode | 提供在线 Linux 环境练习 |
🎉 总结一句话:
“Linux 不是背出来的,是敲出来的!”
坚持每天动手实践,你就能逐步成为真正的 Linux 高手!
是否要我继续输出下一章?👉《Linux 基础命令详解》🔥