Linux是运维工程师的核心战场,90%的服务器跑的都是Linux。下面从运维角度,梳理Linux必须掌握的知识体系。
一、Linux运维学什么?
1. 基础操作(第1-2周)
| | |
|---|
| 文件目录 | ls、cd、pwd、mkdir、rm、cp、mv、find | |
| 权限管理 | chmod、chown、chgrp、useradd、passwd | |
| 文本处理 | cat、less、head、tail、grep、sed、awk、vim | |
| 压缩打包 | | |
2. 系统管理(第3-4周)
| | |
|---|
| 进程管理 | ps、top、htop、kill、pkill、jobs、nohup | |
| 系统监控 | free(内存)、df/du(磁盘)、uptime(负载)、iostat(IO)、netstat/ss(网络) | |
| 计划任务 | | |
| 服务管理 | systemctl(CentOS7+)、service(旧版) | |
3. 网络管理(第5周)
| | |
|---|
| 网络配置 | ifconfig/ip addr、ping、traceroute、curl、wget | |
| 端口查看 | netstat -tunlp、ss -tunlp、lsof -i | |
| 防火墙 | | |
4. 软件包管理(贯穿全程)
| | |
|---|
| CentOS/RHEL | | |
| Ubuntu/Debian | | |
| 源码编译 | ./configure、make、make install | |
5. shell脚本(第2个月)
基础语法:变量、循环、判断
实战:写脚本批量备份、自动巡检、日志切割
能看懂别人的脚本,能自己写简单的
二、运维常用Linux命令(速查版)
查日志三件套
tail -f 文件 # 实时看日志
grep "错误" 文件 # 搜关键字
awk '{print $4}' # 取某一列
看系统状态
top # 看CPU、内存、负载
free -h # 看内存
df -h # 看磁盘
ps aux | grep 进程名 # 查进程
netstat -tunlp # 看端口
紧急处理
kill -9 PID # 杀不掉时用这个
systemctl restart 服务名 # 重启服务
rm -rf 文件 # 慎用!尤其是 rm -rf /
三、运维实战场景
场景1:网站打不开了,怎么办?
ping 域名 → 通不通?
curl -I 域名 → 返回什么状态码?
netstat -tunlp | grep 80 → 端口在不在?
tail -f 应用日志 → 报什么错?
df -h → 磁盘满了?
场景2:服务器负载高,谁在搞事?
top→ 看哪个进程CPU高
ps aux | grep 进程PID → 查具体信息
lsof -p PID → 看这个进程打开了哪些文件
判断:是业务高峰?是被人攻击?是日志没切?
场景3:定时备份数据库
# 写脚本 backup.sh
mysqldump -u用户名 -p密码 数据库名 > /备份路径/$(date +%Y%m%d).sql
tar -czf 备份文件.tar.gz /备份路径/*.sql
# 加定时任务
crontab -e
0 2 * * * /bin/bash /脚本路径/backup.sh # 每天凌晨2点跑
四、Linux运维学习路线
| | | |
|---|
| 基础操作 | | | |
| 系统管理 | | | |
| 网络+软件 | | | |
| Shell脚本 | | | |
| 实战项目 | | | |
五、学习资源推荐
书籍:
《鸟哥的Linux私房菜》(经典入门)
《Linux运维实战》(案例多)
练习:
常用文档:
man 命令(官方手册)
命令 --help(快速帮助)
一句话总结:
Linux运维就是会看、会查、会修、会写脚本。上手不难,但坑多,踩多了就熟了。