Linux:如何衡量每日/每月的网络流量?
发布时间:2020-12-13 18:15:22 所属栏目:Linux 来源:网络整理
导读:我需要保留 linux机器(CentOS 5)的每日网络流量统计数据. 有没有办法使用标准/本机工具或实用程序? 或者我是否必须下载特殊软件? 谢谢. 解决方法 Zypher对rrdtool(以及其他任何使用它作为后端 – MRTG,Cacti等)的说法可能都是正确的. RRDTool旨在成为“平
我需要保留
linux机器(CentOS 5)的每日网络流量统计数据.
有没有办法使用标准/本机工具或实用程序? 谢谢. 解决方法
Zypher对rrdtool(以及其他任何使用它作为后端 – MRTG,Cacti等)的说法可能都是正确的. RRDTool旨在成为“平均”历史趋势分析工具.它以越来越非坚定的增量平均和存储计数器,并且随着时间的推移逐渐增加.
但是,这可以通过适当地设置RRA来??配置.然而,我承认完全不知道如何配置这些,并且从来没有亲自运气使它们超出我的标准设置(15分钟,8小时,1周,1个月,1年).我建议考虑配置RRA以期待每日输入,并从netstat向其提供带宽计数器.您将获得一些非常好的历史数据并深入了解您的使用模式. 要回答您当前的问题,请确保您不要超过每日带宽限制;我建议每天为相关接口抓取netstat计数器.您可以将时间t的昨天流量与时间t的今天计数器进行比较,并找出已转移的数量.具有前一个值的平面文本文件存储的简单脚本可能就足够了.如果您检测到超出的带宽或在一天内监控它,则可以禁用该接口,如果您接近限制,则通知管理员. 要在OSX系统上获取输入字节,可以使用以下命令集: netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $7}' 相反,输出可以通过以下方式获得: netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $10}' 您可以将相关计数器弹出到存储在某处的平面文件中,并将其与以下项进行比较: #!/bin/bash set -e # exit if any error occurs previous_days_bytes_xferred=`cat $flatfile_storage` todays_bytes_xferred=`netstat -ib | grep -e "$INTERFACE" -m 1 | awk '{print $10}'` if [ $((todays_bytes_xferred - previous_days_bytes_xferred)) -gt $threshold ]; then DO SOME STUFF fi echo $todays_bytes_xferred > $flatfile_storage 只需调整netstat处理以匹配您的系统(因为我知道您没有运行OSX). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |