简介
作为一个运维人员,很多时候需要知道服务器的实时情况,比如 Windows 系统的任务管理器,下面我描述的是基于 Linux 系统,你可能听说最流行的就是‘top’【基于终端的系统监视工具】。
top:实时程序可帮助显示所有正在运行的进程,并为你提供一些简单的重要性信息,还能为您能够杀死不需要的进程。但是"top"这样的命令行工具,很难监控服务器CPU的使用情况和内存的使用情况。
所以,今天给大家介绍几个逼格满满(替代方案)的其它命令行工具!
htop
htop 是Linux系统中的一个互动的进程查看器,一个文本模式的应用程序(在控制台或者X终端中),需要ncurses。与Linux传统的top相比,htop更加人性化。它可让用户交互式操作,支持颜色主题,可横向或纵向滚动浏览进程列表,并支持鼠标操作。
实际上,我个人更喜欢使用htop来监视系统资源和进程。它可以杀死进程,过滤它们,提供进程的树视图(按F5),以及其他一些特性。
安装:
sudo apt install htop
-C --no-color #使用一个单色的配色方案
-d --delay=DELAY #设置延迟更新时间,单位秒
-h --help #示htop 命令帮助信息
-u --user=USERNAME #只显示一个给定的用户的过程
-p --pid=PID,PID… #只显示给定的PIDs
-s --sort-key COLUMN #依此列来排序
-v –version #显示版本信息
交互式命令(INTERACTIVE COMMANDS)
上下键或PgUP, PgDn 选定想要的进程,左右键或Home, End 移动字段,当然也可以直接用鼠标选定进程;
Space #标记/取消标记一个进程。命令可以作用于多个进程,例如 "kill",将应用于所有已标记的进程
U #取消标记所有进程
s #选择某一进程,按s:用strace追踪进程的系统调用
l #显示进程打开的文件: 如果安装了lsof,按此键可以显示进程所打开的文件
I #倒转排序顺序,如果排序是正序的,则反转成倒序的,反之亦然
+, - When in tree view mode, expand or collapse subtree. When a subtree is collapsed a "+" sign shows to the left of the process name.
a (在有多处理器的机器上) #设置 CPU affinity: 标记一个进程允许使用哪些CPU
u #显示特定用户进程
M #按Memory 使用排序
P #按CPU 使用排序
T #按time+ 使用排序
F #跟踪进程: 如果排序顺序引起选定的进程在列表上到处移动,让选定条跟随该进程。这对监视一个进程非常有用:通过这种方式,你可以让一个进程在屏幕上一直可见。使用方向键会停止该功能。
K #显示/隐藏内核线程
H #显示/隐藏用户线程
Ctrl-L #刷新
Numbers #PID 查找: 输入PID,光标将移动到相应的进程上
atop
atop 是一款用于监控 Linux 系统资源与进程的工具,它以一定的频率记录系统的运行状态,所采集的数据包含系统资源 (CPU、内存、磁盘和网络) 使用情况和进程运行情况,并能以日志文件的方式保存在磁盘中,服务器出现问题后,我们可获取相应的 atop 日志文件进行分析。
安装
sudo apt install atop
nmon
nmon 是一种在 AIX 与各种 Linux 操作系统上广泛使用的监控与分析工具,它能在系统运行过程中实时地捕捉系统资源的使用情况,记录的信息比较全面,并且能输出结果到文件中,然后通过 nmon_analyzer 工具产生数据文件与图形化结果。
安装
sudo apt install nmon
# c
查看CPU相关信息
# m
查看内存相关信息
# d
查看磁盘相关信息
# n
查看网络相关信息
# t
查看相关进程信息
# h
查看帮助相关信息
# q
退出nmon
vtop
vtop 它是一个用 Node.js 编写的免费开源、简单而又强大的可扩展终端活动监控工具。它的设计目的是让用户轻松查看多进程应用(那些有主进程和子进程的应用,比如NGINX、Apache、Chrome等)的CPU使用情况,vtop还可以轻松查看一段时间内的峰值以及内存使用情况。
安装
sudo apt install nodejs
sudo apt install npm
sudo npm install -g vtop
# vtop
以下是vtop的键盘快捷键,按。
u #更新到最新版本的vtop.
k #或向上箭头可向上移动进程列表。
j #或向下箭头可向下移动进程列表。
g #将您移至进程列表的顶部。
G #将您带到列表的末尾。
dd #杀死该组中的所有进程(必须先选择进程名称)。
要改变配色方案,请使用--theme主题开关。你可以选择任何可用的主题,例如:
# vtop --theme wizard
要设置两次更新之间的间隔(以毫秒为单位),请使用--update-interval。在此示例中,20毫秒等于0.02秒:
# vtop --update-interval 20
你也可以使用--quit-after选项设置vtop在几秒钟后终止,如下所示:
# vtop --quit-after 5
要获得vtop帮助,请运行以下命令:
# vtop -h
vtop还有许多功能,包括检测服务器请求,日志文件等。
bashtop
bashtop 是一个 Linux 资源监视器,可以显示处理器、内存、磁盘、网络和进程的使用情况与状态。
特性:
-
易于使用,带有受游戏启发的菜单系统。
-
快速响应的 UI,带有 UP、DOWN 键可快速对进程进行选择。
-
可显示所选进程的详细统计信息。
-
可以过滤进程。
-
在排序选项之间轻松切换。
-
发送 SIGTERM、SIGKILL、SIGINT 选择进程。
-
带有用于更改所有配置文件选项的 UI 菜单。
-
网络使用情况的自动缩放图。
-
如果有新版本可用,则在菜单中显示消息。
安装
要成功安装Bashtop,请确保在系统中准备好以下依赖项。
-
Bash 4.4或更高版本
-
Git
-
GNU Coreutils
-
GNU sed、awk、grep和ps命令行工具。
-
lm-sensors-可选-(用于收集CPU温度统计)。
$ git clone https://github.com/aristocratos/bashtop.git
$ cd bashtop
$ sudo make install
#卸载Bashtop
$ sudo make uninstall
gtop
GTOP 是一个终端系统监控仪表盘。
安装
sudo apt install nodejs
sudo apt install npm
sudo npm install -g gtop
p: Process Id
c: CPU usage
m: Memory usage
glances
glances 是一款用于 Linux、BSD 的开源命令行系统监视工具,它使用 Python 语言开发,能够监视 CPU、负载、内存、磁盘 I/O、网络流量、文件系统、系统温度等信息。
安装
sudo apt install glances