在服务器的世界里书写代码与梦想,Linux下检查网络和磁盘高效使用详解

在服务器的世界里书写代码与梦想:Linux下网络与磁盘高效检查详解

引言

在服务器运维和开发中,网络畅通磁盘健康是系统稳定运行的基石。当服务出现延迟、文件无法写入或带宽异常时,熟练使用Linux自带工具进行快速诊断至关重要。本文将系统梳理网络与磁盘检查的核心命令与进阶技巧,助您成为服务器诊断高手。

一、网络诊断:从连通性到性能分析

1.1 基础网络命令:连通性检测

1.1.1 网络接口状态
# 经典工具(需安装net-tools)
ifconfig eth0          # 查看指定网卡信息
ifconfig -a            # 查看所有网卡

# 新工具(推荐)
ip addr show eth0       # 查看IP地址和MAC
ip link set eth0 up     # 启用网卡
1.1.2 连通性测试
命令用途示例
ping检测主机连通性ping -c 3 192.168.1.1
traceroute跟踪路由路径traceroute www.baidu.com
mtr结合ping和traceroute的诊断工具mtr --report www.google.com

1.2 端口与连接分析

1.2.1 端口状态查看
# 传统工具(需net-tools)
netstat -tunlp          # 查看所有TCP/UDP端口
netstat -anp | grep 80  # 查找80端口相关进程

# 新生代工具(推荐)
ss -tunlp               # 更高效的socket查看
ss -s                   # 统计socket使用情况
1.2.2 服务发现
nmap 192.168.1.0/24     # 扫描局域网内活跃主机
nmap -p 1-1000 192.168.1.100  # 扫描指定主机端口

1.3 实时网络监控

1.3.1 流量监控
nload eth0              # 实时显示上下行带宽
iftop -P                 # 显示实时流量及连接对端
1.3.2 抓包分析
tcpdump -i eth0 port 80 -n  # 抓取80端口的网络包
tcpdump -w capture.pcap    # 保存包到文件

1.4 DNS与路由诊断

dig @8.8.8.8 www.baidu.com  # 指定DNS服务器解析
nslookup example.com       # 简单DNS查询
route -n                   # 查看路由表

二、磁盘管理:从空间分配到故障修复

2.1 磁盘基础信息

2.1.1 空间查看
df -h                     # 查看磁盘挂载点空间
du -sh /var              # 查看目录大小
lsblk                    # 可视化磁盘结构
2.1.2 分区操作
fdisk -l                 # 查看磁盘分区
parted /dev/sda resizepart 1 10GB  # 调整分区大小

2.2 磁盘性能与健康

2.2.1 实时IO监控
iotop                      # 显示进程IO占用
dstat -d --top-io          # 综合IO统计
2.2.2 磁盘健康检查
smartctl -a /dev/sda       # 查看S.M.A.R.T信息
smartctl -t short /dev/sda # 执行短测试

2.3 故障处理与数据恢复

2.3.1 文件系统修复
fsck /dev/sda1            # 修复文件系统
e2fsck -f /dev/sda2       # 强制检查ext4分区
2.3.2 数据恢复
testdisk /dev/sda         # 分区恢复工具
photorec                 # 深层数据恢复

三、自动化脚本:提升运维效率

3.1 网络健康检查脚本

#!/bin/bash
PING_RESULT=$(ping -c 1 192.168.1.1 | grep "1 received" | wc -l)
if [ $PING_RESULT -eq 0 ]; then
  echo "Network down at $(date)" >> /var/log/network.log
  systemctl restart network
fi

3.2 磁盘预警脚本

#!/bin/bash
DISK_USED=$(df / | awk 'NR==2{print $5}' | cut -d'%' -f1)
if [ $DISK_USED -gt 90 ]; then
  echo "Disk full warning: $DISK_USED%" | mail -s "Alert" admin@example.com
fi

四、工具对比与推荐

4.1 网络工具对比

场景推荐工具优势
实时流量监控nload/iftop可视化界面,实时更新
抓包分析tcpdump/wireshark深度协议分析
端口查看ss性能优于netstat

4.2 磁盘工具对比

场景推荐工具优势
空间分析ncdu交互式目录大小查看
健康检查smartctl支持S.M.A.R.T标准
分区管理parted支持GPT分区,图形化交互

五、最佳实践建议

  1. 定期巡检

    • 每周运行smartctl检查磁盘健康
    • 每月用nmap扫描服务器开放端口
  2. 配置监控

    • 使用Prometheus+Grafana搭建可视化监控平台
    • 配置systemd服务自动重启异常服务
  3. 数据备份

    • 重要数据使用rsync+cron定期备份
    • 关键业务采用RAID+热备盘冗余方案

结语

服务器运维的本质是用确定性的工具应对不确定性的故障。掌握网络与磁盘的诊断技巧,不仅能快速定位问题,更能防患于未然。记住:优秀的工程师不是在解决故障,而是在阻止故障发生

你在服务器运维中遇到过哪些奇葩的网络/磁盘问题?是如何解决的?欢迎在评论区分享!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值