1. 监控与管理概述
Linux系统监控与管理是确保服务器稳定运行的重要措施,包括系统资源监控、进程管理、磁盘管理、网络管理等多个方面。通过有效的监控与管理,可以及时发现和解决问题,提高系统的可靠性和可用性。更多学习教程www.fgedu.net.cn
1. 及时发现系统异常
2. 预防系统故障
3. 优化系统性能
4. 提高服务可用性
5. 降低运维成本
6. 满足合规要求
2. 系统监控工具
Linux提供了多种系统监控工具,用于监控系统资源使用情况和系统状态。
1. top:实时监控系统资源使用情况
2. htop:增强版top,提供更友好的界面
3. vmstat:监控虚拟内存统计信息
4. iostat:监控磁盘I/O统计信息
5. netstat:监控网络连接和统计信息
6. ss:更高效的网络状态查看工具
7. free:查看内存使用情况
8. df:查看磁盘空间使用情况
9. ps:查看进程状态
10. sar:系统活动报告工具
$ top
top – 12:00:00 up 1 day, 2:30, 1 user, load average: 0.10, 0.05, 0.01
Tasks: 150 total, 1 running, 149 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.2 us, 0.1 sy, 0.0 ni, 99.6 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st
MiB Mem : 16384.0 total, 14235.0 free, 1200.0 used, 949.0 buff/cache
MiB Swap: 4096.0 total, 4096.0 free, 0.0 used. 15184.0 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1234 root 20 0 100.0m 5.0m 3.0m S 0.0 0.0 0:00.01 sshd
5678 root 20 0 50.0m 2.0m 1.0m S 0.0 0.0 0:00.01 bash
3. 进程管理
进程管理是Linux系统管理的重要组成部分,包括查看进程状态、管理进程优先级和终止进程等,学习交流加群风哥微信: itpux-com。
# 查看所有进程
$ ps aux
# 查看进程树
$ pstree
# 查看特定进程
$ ps aux | grep process-name
# 终止进程
$ kill PID
$ kill -9 PID
# 调整进程优先级
$ nice -n 10 command
$ renice 10 PID
# 查看进程资源使用情况
$ pidstat -p PID
$ ps -ef | grep sshd
root 1234 1 0 10:00 ? 00:00:00 /usr/sbin/sshd -D
# 终止进程
$ kill 1234
# 强制终止进程
$ kill -9 1234
# 查看进程打开的文件
$ lsof -p PID
4. 磁盘监控与管理
磁盘监控与管理是确保系统存储正常运行的重要措施,包括磁盘空间监控、磁盘I/O监控和磁盘管理等。
# 查看磁盘空间
$ df -h
# 查看磁盘I/O
$ iostat -x 2
# 查看磁盘分区
$ lsblk
# 查看文件系统类型
$ blkid
# 检查磁盘错误
$ sudo smartctl -a /dev/sda
# 磁盘性能测试
$ dd if=/dev/zero of=/tmp/test bs=1M count=1024 oflag=direct
$ df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs 7.8G 0 7.8G 0% /dev/shm
tmpfs 7.8G 8.5M 7.8G 1% /run
tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/sda1 98G 6.2G 87G 7% /
tmpfs 1.6G 0 1.6G 0% /run/user/1000
# 查看磁盘I/O
$ iostat -x 2
Linux 5.15.0-88-generic (fgedu-server) 04/02/2026 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.25 0.00 0.15 0.00 0.00 99.60
device r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
loop0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sda 0.30 0.15 0.01 0.01 40.00 0.00 2.00 1.50 3.00 1.00 0.05
5. 网络监控与管理
网络监控与管理是确保系统网络连接正常的重要措施,包括网络连接监控、网络流量监控和网络配置管理等,学习交流加群风哥QQ113257174。
# 查看网络接口
$ ip addr
# 查看网络连接
$ netstat -tulpn
$ ss -tulpn
# 测试网络连通性
$ ping hostname
$ traceroute hostname
# 查看网络流量
$ iftop
$ nethogs
# 查看网络统计信息
$ netstat -s
$ ss -s
$ ip addr show eth0
2: eth0:
link/ether 00:11:22:33:44:55 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::1000:1000:1000:1000/64 scope link
valid_lft forever preferred_lft forever
# 查看网络连接
$ ss -tulpn
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(“sshd”,pid=1234,fd=3)
LISTEN 0 128 [::]:22 [::]:* users:(“sshd”,pid=1234,fd=4)
6. 内存监控与管理
内存监控与管理是确保系统内存使用合理的重要措施,包括内存使用监控、内存优化和内存管理等。
# 查看内存使用情况
$ free -h
# 查看内存详细信息
$ cat /proc/meminfo
# 查看进程内存使用情况
$ ps aux –sort=-%mem | head -10
# 查看内存映射
$ pmap PID
# 清理内存缓存
$ sudo sysctl -w vm.drop_caches=3
$ free -h
total used free shared buff/cache available
Mem: 16G 1.2G 14G 16M 512M 14G
Swap: 4.0G 0B 4.0G
# 查看进程内存使用情况
$ ps aux –sort=-%mem | head -5
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1234 0.0 0.1 100000 5000 ? Ss 10:00 0:00 sshd: root@pts/0
root 5678 0.0 0.0 50000 2000 pts/0 Ss 10:01 0:00 bash
7. 日志管理
日志管理是系统监控的重要组成部分,包括系统日志、应用日志和安全日志的收集、分析和管理,更多学习教程公众号风哥教程itpux_com。
# 查看系统日志
$ journalctl
$ tail -f /var/log/syslog
# 查看安全日志
$ tail -f /var/log/auth.log
# 查看应用日志
$ tail -f /var/log/apache2/error.log
# 日志轮转配置
$ sudo vim /etc/logrotate.conf
# 日志分析工具
$ sudo apt install -y logwatch
$ sudo logwatch –mailto admin@fgedu.net.cn –detail high
$ journalctl -n 100
— Logs begin at Sun 2026-04-02 10:00:00 CST, end at Sun 2026-04-02 12:00:00 CST.
Apr 02 10:00:00 fgedu-server systemd[1]: Started System Logging Service.
Apr 02 10:00:00 fgedu-server systemd[1]: Started OpenBSD Secure Shell server.
Apr 02 10:00:00 fgedu-server systemd[1]: Started Network Manager.
# 查看安全日志
$ tail -f /var/log/auth.log
Apr 02 12:00:00 fgedu-server sshd[1234]: Accepted publickey for root from 192.168.1.200 port 22 ssh2: RSA SHA256:…
8. 自动化管理
自动化管理是提高系统管理效率的重要措施,包括脚本自动化、配置管理和任务调度等。
1. bash脚本:编写自定义管理脚本
2. Ansible:配置管理和自动化工具
3. Cron:任务调度器
4. Systemd:系统服务管理
5. Docker:容器化管理
# 编写自动化脚本
$ vim /scripts/monitor.sh
#!/bin/bash
# 监控系统资源使用情况
echo “System Resource Usage Report”
echo “—————————–”
date
echo “\nCPU Usage:”
top -bn1 | grep “Cpu(s)”
echo “\nMemory Usage:”
free -h
echo “\nDisk Usage:”
df -h
echo “\nNetwork Connections:”
netstat -tulpn | wc -l
# 设置脚本权限
$ chmod +x /scripts/monitor.sh
$ crontab -e
# 每小时执行一次监控脚本
0 * * * * /scripts/monitor.sh >> /var/log/monitor.log
# 每天凌晨2点执行系统备份
0 2 * * * /scripts/backup.sh
# 查看Cron任务
$ crontab -l
9. 告警系统
告警系统是监控体系的重要组成部分,用于及时通知系统异常和故障。
1. Nagios:企业级监控和告警系统
2. Zabbix:企业级监控解决方案
3. Prometheus + Alertmanager:现代化监控和告警系统
4. Grafana:数据可视化和告警
# 配置简单告警脚本
$ vim /scripts/alert.sh
#!/bin/bash
# 磁盘空间告警
THRESHOLD=90
df -h | grep -v tmpfs | grep -v devtmpfs | while read line; do
usage=$(echo $line | awk ‘{print $5}’ | sed ‘s/%//’)
mount=$(echo $line | awk ‘{print $6}’)
if [ $usage -ge $THRESHOLD ]; then
echo “ALERT: Disk usage on $mount is $usage%”
# 发送邮件告警
echo “Disk usage on $mount is $usage%” | mail -s “Disk Space Alert” admin@fgedu.net.cn
fi
done
10. 最佳实践
Linux系统监控与管理的最佳实践包括建立完善的监控体系、定期检查系统状态和及时处理异常等方面,author:www.itpux.com。
– 建立完善的监控体系,包括实时监控和历史数据分析
– 定期检查系统资源使用情况,及时发现异常
– 实施自动化管理,提高管理效率
– 配置合理的告警机制,及时通知系统异常
– 定期备份系统和数据,确保数据安全
– 优化系统配置,提高系统性能
– 定期更新系统和应用程序,修复安全漏洞
– 建立系统管理文档,记录系统配置和维护过程
– 培训系统管理员的监控和管理技能
– 制定灾难恢复计划,确保业务连续性
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
