第2章 第8.1课
Linux系统管理实战指南
大家好,今天我们来聊聊Linux系统管理的那些必备技能。就像管理一个实验室需要知道各种设备的状态一样,管理Linux系统也需要掌握这些基础命令。我会用实际的运维场景,带你逐步掌握这些核心技能。(´・_・`)
一、系统状态诊断:了解你的"实验设备"
实验室服务器检查案例:
# 1. 快速获取系统概况(调试环境用)
uname -a
# 输出:Linux lab-server 5.4.0-135-generic #152-Ubuntu SMP x86_64 GNU/Linux
# 2. 检查内存使用情况(排查程序异常)
free -h
# 输出:Mem: 16G total, 5.2G used, 9.8G free
# 3. 查看系统运行时间(判断是否需要重启)
uptime
# 输出:15:30:45 up 23 days,4:12,3 users
常用信息查看命令速查表:
命令 | 功能 | 适用场景 |
---|---|---|
date '+%F %T' |
精确时间 | 实验记录时间戳 |
who |
登录用户 | 排查异常登录 |
history | grep ssh |
命令历史 | 审计操作记录 |
df -h |
磁盘空间 | 存储告警检查 |
二、进程管理:实验室资源调度
Python程序监控示例:
# 1. 查找所有Python进程
ps -ef | grep python
# 2. 监控资源占用(带图形界面)
htop
# 3. 终止失控的实验程序
kill -9 $(pgrep -f "data_processing.py")
进程管理流程图:
graph TD
A[发现异常进程] --> B{处理方式}
B -->|观察| C[top/htop]
B -->|终止| D[kill/pkill]
B -->|优先级调整| E[nice/renice]
C --> F[记录资源占用]
D --> G[确认进程终止]
三、权限提升:安全执行管理操作
实验室设备配置场景:
# 1. 临时获取root权限安装软件
sudo apt install lab-equipment-driver
# 2. 切换用户调试权限问题
su - lab_assistant
exit# 返回原用户
# 3. 配置sudo免密(谨慎使用)
echo "$USER ALL=(ALL) NOPASSWD: /usr/bin/apt" | sudo tee /etc/sudoers.d/local-$USER
安全操作建议:
- 使用
sudo
替代直接root登录 - 定期检查
/var/log/auth.log
- 重要操作前使用
sudo -l
确认权限
四、网络信息查询:实验室域名管理
科研项目域名检查:
# 1. 查询课题组域名信息
whois research-lab.edu
# 2. 检查特殊端口注册情况
whois -p 443 research-lab.edu
# 3. 批量检查域名到期时间
for domain in lab{1..5}.edu; do whois $domain | grep 'Expiration'; done
域名状态解析:
# 域名状态检查脚本
import whois
def check_domain(domain):
try:
w = whois.whois(domain)
print(f"{domain}: {w.status}")
except Exception as e:
print(f"查询失败: {e}")
check_domain("example.edu")
五、系统维护:重启与关机策略
实验室设备维护流程:
# 1. 计划性重启(提前通知用户)
shutdown -r +30 "系统升级,30分钟后重启"
# 2. 紧急关机流程
wall "紧急电源维护,立即保存工作!"
sync; sync; sync
poweroff
# 3. 取消计划中的重启
shutdown -c
维护检查清单:
- 通知所有登录用户(
wall
) - 同步文件系统(
sync
) - 检查关键进程状态(
ps aux
) - 确认备份完成(
/backup/last_complete
)
结语:系统管理者的工具箱
- 日常运维组合技:
# 晨间检查脚本
#!/bin/bash
echo "=== 系统健康报告 ==="
date '+%F %T'
echo "\n=== 资源使用 ==="
free -h; df -h
echo "\n=== 异常进程 ==="
ps aux | awk '$3 > 50 || $4 > 50'
- 故障排查路径:
graph LR
A[问题现象] --> B{分类}
B -->|性能问题| C[top/vmstat]
B -->|权限问题| D[sudo/ls -l]
B -->|服务异常| E[systemctl/journalctl]
- 进阶学习建议:
- 掌握
journalctl
日志分析 - 学习
systemd
服务管理 - 实践
cron
定时任务
当你在深夜维护实验室服务器时,这些命令会成为你最可靠的伙伴。记住,好的系统管理员不是记住所有命令,而是知道如何快速找到解决方案。(`・ω・´)ゞ
# 快速参考便签
man 7 hier# 查看Linux目录结构
man syslog# 系统日志规范
apropos process# 查找进程相关命令
感谢浏览和学习,作者:鱼油YOU,转载请注明原文链接:https://www.cnblogs.com/OmegaYOU3/p/19021175,或者可以➕主播WX:OmegaAnimeman_desu;QQ:3819054512