作为IT工程师,掌握Linux系统的日常维护和升级是必备技能。以下是一套全面的维护方案:
# 查看系统负载
uptime
top/htop
# 查看磁盘空间
df -h
du -sh /path/to/directory
# 查看内存使用情况
free -m
# 查看网络连接
netstat -tulnp
ss -tulnp
# 查看系统日志
journalctl -xe # systemd系统
tail -f /var/log/syslog # Debian/Ubuntu
tail -f /var/log/messages # CentOS/RHEL
# 检查特定服务日志
tail -f /var/log/nginx/error.log
tail -f /var/log/mysql/error.log
# 检查当前登录用户
who
w
# 检查用户登录历史
last
# 检查sudo权限用户
grep -Po '^sudo.+:\K.*$' /etc/group
# Debian/Ubuntu
sudo apt update
sudo apt upgrade
sudo apt autoremove
# CentOS/RHEL
sudo yum update
sudo yum clean all
# Fedora
sudo dnf upgrade
sudo dnf autoremove
# 对于长期运行的服务器,考虑使用无人值守更新
sudo apt install unattended-upgrades # Debian/Ubuntu
# 检查文件系统错误
sudo fsck /dev/sdX
# 清理临时文件
sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*
# 清理旧的内核包(释放/boot空间)
# Debian/Ubuntu
sudo apt autoremove --purge
# 查找并删除大文件
find / -type f -size +100M -exec ls -lh {} \;
# 使用tar备份
tar -czvf backup-$(date +%Y%m%d).tar.gz /path/to/backup
# 使用rsync同步备份
rsync -avz /source/path /backup/path
# 考虑设置cron定时备份
crontab -e
# 常规更新命令即可完成
sudo apt update && sudo apt upgrade
# Debian/Ubuntu
sudo do-release-upgrade
# CentOS/RHEL
sudo yum install preupgrade-assistant
sudo preupg
sudo yum upgrade
# Debian/Ubuntu
sudo apt install linux-image-generic
# CentOS/RHEL
sudo yum install kernel
变更管理:任何系统变更前先备份,并在非生产环境测试
文档记录:维护详细的变更日志,记录所有维护操作
监控设置:配置监控工具(如Prometheus, Nagios)实时监控系统状态
安全更新:优先应用安全更新,定期运行安全扫描
sudo apt install unattended-upgrades
sudo dpkg-reconfigure unattended-upgrades
维护窗口:在低峰期执行维护任务,提前通知相关用户
回滚计划:每次重大更新前准备回滚方案
通过定期执行这些维护任务,可以确保Linux系统保持最佳性能、安全性和稳定性。