Linux必备运维实用工具,程序员都离不开它

308 阅读2分钟

6款常用比较实用的Linux工具,可用于环境的性能监测,和助于性能调优方面,希望对 Linux 运维人员有所帮助。

TOP工具

top是最常用的Linux性能监测工具之一。通过top工具可以监视进程和系统整体性能。
命令
说明
top
查看系统整体的CPU、内存资源消耗
top执行后输入1查看每个CPUcore资源使用情况
top执行后输入F,并选择P选项
查看线程执行过程中是否调度到其他CPU core
top -p $PID -H
查看某个进程内所有线程的CPU资源占用

Perf工具

Perf工具是非常强大的Linux性能分析工具,可以通过该工具获得进程内的调用情况、资源消耗情况并查找分析热点函数。
命令
说明
perf top
查看当前系统中的热点函数perf sched record --sleep 1 -p $PID记录进程在ls内的系统调用perf sched latency --sort max查看上一步记录的结果,以调度延迟排序

Numactl工具

numactl工具可用于查看当前服务器的NUMA节点配置、状态、可通过该工具将进程绑定到指定CPU core,由指定CPU core来运行对应进程。
命令
说明
numactl -H查看当前服务器的NUMA配置numactl -C 0-7 ./test将应用程序test绑定到0~7核运行numastat
查看当前的NUMA运行状态

ethtool工具

ethtool是一个Linux下功能强大的网络管理工具,目前几乎所有的网卡驱动程序都有对ethtool的支持,可以用于网卡状态/驱动版本信息查询、收发数据信息查询及能力配置,以及网卡工作模式/链路速度等查询配置。
命令
说明
ethX
查询ethx网口基本设置,其中x是对应网卡的编号,如eth0、eth1等ethtool-k查询网卡的Offload信息ethtool-K
修改网卡的Offload信息ethtool-c查询网卡聚合信息
ethtool-C修改网卡聚合信息ethtool-l
查看网卡队列数
ethtool-L设置网卡队列数

strace工具

strace是Linux环境下的程序调试工具,用来跟踪应用程序的系统调用情况。strace命令执行的结果解释按照调用顺序打印出所有的系统调用,包括函数名、参数列表以及返回值等。
命令
说明
-T
显示每一调用所消耗的时间
-tt
在输出中的每一行前加上时间信息,微秒级-p
跟踪指定的线程ID

iostat工具

iostat是调查磁盘IO问题使用最频繁的工具。它汇总了所有在线磁盘统计信息,为负载特征归纳,使用率和饱和度提供了指标。它可以由任何用户执行,统计信息直接来源于内核,因此这个工具的开销基本可以忽略不计。
命令
说明
-c显示CPU使用情况-d
显示磁盘使用情况-k以KB为单位显示-m以M为单位显示-p
显示磁盘单个的情况-t
显示时间戳-x显示详细信息