Answers:
Glances是一款免费软件(根据LGPL授权),可以通过文本界面监视GNU / Linux或BSD操作系统。Glances使用库libstatgrab从系统中检索信息,该信息是使用Python开发的。
打开一个终端(Ctrl+ Alt+ T)并运行以下命令:
在Ubuntu 16.04及更高sudo apt install glances
版本中,您可以键入,但版本2.3中存在此错误。其他:
简易脚本安装 一览
curl -L https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/install.sh | sudo /bin/bash
要么
wget -O- https://raw.githubusercontent.com/nicolargo/glancesautoinstall/master/install.sh | sudo /bin/bash
手动安装
sudo apt-get install python-pip build-essential python-dev lm-sensors
sudo pip install psutil logutils bottle batinfo https://bitbucket.org/gleb_zhulik/py3sensors/get/tip.tar.gz zeroconf netifaces pymdstat influxdb elasticsearch potsdb statsd pystache docker-py pysnmp pika py-cpuinfo bernhard
sudo pip install glances
要开始,glances
只需输入glances
终端。
一目了然,您会在页面中看到很多有关系统资源的信息:CPU,负载,内存,交换网络,磁盘I / O和进程,默认情况下,颜色代码表示:
GREEN : the statistic is “OK”
BLUE : the statistic is “CAREFUL” (to watch)
VIOLET : the statistic is “WARNING” (alert)
RED : the statistic is “CRITICAL” (critical)
当Glances运行时,可以按一些特殊键向其发出命令:
c: Sort processes by CPU%
m: Sort processes by MEM%
p: Sort processes by name
i: Sort processes by IO Rate
d: Show/hide disk I/O stats
f: Show/hide file system stats
n: Show/hide network stats
s: Show/hide sensors stats
b: Bit/s or Byte/s for network IO
w: Delete warning logs
x: Delete warning and critical logs
1: Global CPU or Per Core stats
h: Show/hide this help message
q: Quit (Esc and Ctrl-C also work)
l: Show/hide log messages
如果键入,glances --help
您将找到(-e
启用传感器模块(仅Linux))
glances -e
您可以在Glances配置文件中设置阈值,在GNU / Linux上,默认配置文件位于中/etc/glances/glances.conf
。
此监视工具的另一个有趣的功能是,您只需键入即可在服务器模式下启动它glances -s
,这将产生Glances服务器正在0.0.0.0:61209上运行的输出,现在您可以使用glances -c @从另一台计算机连接到它了服务器,其中@server是服务器的IP地址或主机名。
Glances使用XML / RPC服务器,并且可以由其他客户端软件使用。在服务器模式下,可以设置绑定地址(-B ADDRESS)和侦听TCP端口(-p PORT),默认绑定地址为0.0.0.0(Glances将在所有网络接口上侦听),TCP端口为61209。在客户端模式下,可以设置服务器的TCP端口(-p端口)。在客户端/服务器模式下,限制由服务器端设置。1.6版引入了用于访问服务器的可选密码(-P密码),如果在服务器上进行了设置,则也必须在客户端上使用该密码。
监控juju容器仅是举例,看起来像大图
在终端1中,Glances在服务器模式下运行;在终端2中,juju容器正在运行apt-get update
;在终端3中,glances -c 192.168.1.103
Glances连接到容器ip
内置的系统监视器使用情况图表证明,Glances本身似乎需要处于活动状态时的cpu使用期间出现峰值。如果图形是准确的-只需一眼便可以放弃系统上大约1/4的CPU。这对那些正在监视服务器上的CPU负载的人有效。
指标-SysMonitor
Indicator-SysMonitor可以做一些,但是效果很好。安装并运行后,它将在顶部面板上显示CPU和RAM使用情况。简单。
从这里下载
康基
我个人的最爱之一
在Screenlet中, 您可以在screenlets中找到一堆风格各异的CPU和RAM监视器-Ubuntu软件中心提供了所有软件包。
扫视
安装:
sudo apt-get install python-pip build-essential python-dev
sudo pip install Glances
sudo pip install PySensors
统计数据库
显示有关CPU,内存,进程等的信息。
IOSTAT
此命令行工具将显示有关CPU的统计信息,硬盘分区的I / O信息,网络文件系统(NFS)等。要安装iostat,请运行以下命令:
sudo apt-get install sysstat
要启动报告,请运行以下命令:
iostat
要仅检查CPU统计信息,请使用以下命令:
iostat -c
有关更多参数,请使用以下命令:
iostat --help
统计数据库
mpstat命令行实用程序将显示每个处理器的平均CPU使用率。要运行它,只需使用以下命令:
mpstat
有关每个处理器的CPU使用率,请使用以下命令:
mpstat -P ALL
赛达尔
Saidar还允许通过命令行监视系统设备的活动。
您可以使用以下命令进行安装:
sudo apt-get install saidar
要开始监视,请运行以下命令:
saidar -c -d 1
统计信息将每秒刷新一次。
克雷尔
GKrellM是具有各种主题的可自定义窗口小部件,可在您的桌面系统设备上显示信息(CPU,温度,内存,网络等)。
要安装GKrellM,请运行以下命令:
sudo apt-get install gkrellm
Monitorix
Monitorix是另一个具有基于Web的用户界面的应用程序,用于监视系统设备。
使用以下命令安装它:
sudo add-apt-repository ppa:upubuntu-com/ppa
sudo apt-get update
sudo apt-get install monitorix
通过以下URL启动Monitorix:
http://localhost/monitorix/
以下是监视Linux系统的工具
top
,free -m
,vmstat
,iostat
,iotop
,sar
,netstat
等没有来到附近这些Linux工具,当你正在调试一个问题。这些命令为您提供了服务器内部的清晰画面最佳
顶部是监视软件,列出所有进程的CPU / RAM使用情况,CPU / RAM总体使用情况等,并且大多数情况下默认情况下已安装
停止
htop就像top的扩展版本。它具有上面的所有功能,但您可以看到子进程并自定义所有内容的显示。它也有颜色。
iotop
iotop是专门用于监视硬盘I / O的设备,它列出了所有进程并显示其硬盘驱动器的读写使用情况。
您可能要尝试sysmon。尽管不像Glances那样花哨,但它非常简单易用。
如果您想变得肮脏并用python做一些脚本编写,那么以下是一些使用Python进行系统监视的基础知识,以帮助您入门。
您将需要一个名为的外部模块psutil
来监视大多数事情。使用外部模块安装程序而不是从源代码构建是最简单的。
注意:这些示例是用Python 2.7编写的
sudo apt-get install pip
sudo pip install psutil
现在我们已经安装了模块,我们可以开始编码了。
首先,创建一个名为的文件usage.py
。
gedit ~/usage.py
从导入开始 psutil
import psutil
然后,创建一个函数来监视CPU内核运行的百分比。
def cpu_perc():
cpu_perc = psutil.cpu_percent(interval=1, percpu=True)
for i in range(len(cpu_perc)):
print "CPU Core", str(i+1),":", str(cpu_perc[i]), "%"
让我们分解一下,对吧?
第一行cpu_num = psutil.cpu_percent(interval=1, percpu=True)
找到CPU内核运行的百分比,并将其分配给名为的列表cpu_perc
。
这个循环就在这里
for i in range(len(cpu_num)):
print "CPU Core", str(i+1),":", str(cpu_perc[i]), "%"
是一个for循环,可打印出每个CPU内核的当前百分比。
让我们添加RAM使用率。
创建一个名为的函数ram_perc
。
def ram_perc():
mem = psutil.virtual_memory()
mem_perc = mem.percent
print "RAM: ", mem_perc, "%"
psutil.virtual_memory
提供了一个数据集,其中包含有关计算机RAM的不同事实。
接下来,您可以添加有关网络的一些事实。
def net():
net = psutil.net_io_counters()
mbytes_sent = float(net.bytes_sent) / 1048576
mbytes_recv = float(net.bytes_recv) / 1048576
print "MB sent: ", mbytes_sent
print "MB received: ", mbytes_recv
由于psutil.net_io_counters()
仅以字节为单位提供了有关发送和接收的数据包的信息,因此需要进行一些转换。
要获取有关交换空间的一些信息,请添加此功能。
def swap_perc():
swap = psutil.swap_memory()
swap_perc = swap.percent
这很简单。
温度是很难做到的,因此您可能需要做一些自己的研究才能弄清楚什么将适用于您的硬件。您将必须显示某个文件的内容。
磁盘使用要比温度容易得多。您需要做的就是/
通过特定功能传递要监视的磁盘(即:)。
def disks():
if len(sys.argv) > 1:
for disk in range(1, len(sys.argv)):
tmp = psutil.disk_usage(sys.argv[disk])
print sys.argv[disk], "\n"
print "Megabytes total: ",
print str(float(tmp.total) / 1048576)
print "Megabytes used: ",
print str(float(tmp.used) / 1048576)
print "Megabytes free: ",
print str(float(tmp.free) / 1048576)
print "Percentage used: ",
print tmp.percent, "\n"
的原始输出psutil.disk_usage
是这样,
>>>psutil.disk_usage('/')
sdiskusage(total=21378641920, used=4809781248, free=15482871808, percent=22.5)
但你也可以只接收total
,used
,free
,或percent
。
完成的程序:(将上述功能组合在一起)
import psutil, os, sys
mem_perc = 0 #init var
swap_perc = 0 #init var
mbytes_sent = 0 #init var
mbytes_recv = 0 #init var
cpu_perc = 0 #init var
swap = 0 #init var
mem = 0 #init var
net = 0 #init var
def disp(degree):
global cpu_perc
global swap
global swap_perc
global mem
global mem_perc
global net
global mbytes_sent
global mbytes_recv
cpu_perc = psutil.cpu_percent(interval=1, percpu=True)
swap = psutil.swap_memory()
swap_perc = swap.percent
mem = psutil.virtual_memory()
mem_perc = mem.percent
net = psutil.net_io_counters()
mbytes_sent = float(net.bytes_sent) / 1048576
mbytes_recv = float(net.bytes_recv) / 1048576
os.system('clear') #clear the screen
print "-"*30
print "CPU"
print "-"*30
print "CPU Temperature: " , degree, "'C"
for i in range(len(cpu_perc)):
print "CPU Core", str(i+1),":", str(cpu_perc[i]), "%"
print "-"*30
print "MEMORY"
print "-"*30
print "RAM: ", mem_perc, "%"
print "Swap: ", swap_perc, "%"
print "-"*30
print "NETWORK"
print "-"*30
print "MB sent: ", mbytes_sent
print "MB received: ", mbytes_recv
print "-"*30
print "DISKS"
print "-"*30
if len(sys.argv) > 1:
for disk in range(1, len(sys.argv)):
tmp = psutil.disk_usage(sys.argv[disk])
print sys.argv[disk], "\n"
print "Megabytes total: ",
print str(float(tmp.total) / 1048576)
print "Megabytes used: ",
print str(float(tmp.used) / 1048576)
print "Megabytes free: ",
print str(float(tmp.free) / 1048576)
print "Percentage used: ",
print tmp.percent, "\n"
def main():
print("Press Ctrl+C to exit")
while True:
temp = open("/sys/class/thermal/thermal_zone0/temp").read().strip().lstrip('temperature :').rstrip(' C')
temp = float(temp) / 1000
disp(temp)
main()
该线路temp = open("/sys/class/thermal/thermal_zone0/temp").read().strip().lstrip('temperature :').rstrip(' C')
可能不适用于您的硬件配置。
从命令行运行该程序。从命令行将要监视的磁盘作为参数传递。
$ python usage.py /
Press Ctrl+C to exit
------------------------------
CPU
------------------------------
CPU Temperature: 39.0 'C
CPU Core 1 : 4.8 %
CPU Core 2 : 1.0 %
CPU Core 3 : 0.0 %
CPU Core 4 : 4.9 %
------------------------------
MEMORY
------------------------------
RAM: 33.6 %
Swap: 6.4 %
------------------------------
NETWORK
------------------------------
MB sent: 2.93382358551
MB received: 17.2131490707
------------------------------
DISKS
------------------------------
/
Megabytes total: 13952.484375
Megabytes used: 8542.6640625
Megabytes free: 4678.5703125
Percentage used: 61.2
/media/calvin/Data
Megabytes total: 326810.996094
Megabytes used: 57536.953125
Megabytes free: 269274.042969
Percentage used: 17.6
希望这可以帮助!如有任何疑问,请发表评论。
我建议http://conky.sourceforge.net/
非常容易配置,并且资源使用最少。
我喜欢使用conky
可以随意配置的:
您可以在Google上conky
找到787,000的匹配。每个人都有东西。
在显示屏顶部,注意“锁定屏幕:4分钟亮度:2074”。这些是由“ Indicator-Sysmonitor”生成的,它允许您使用bash脚本在系统托盘/应用程序指示器上显示。
有关设置“ Indicator-Sysmonitor”的教程,请参见:BASH能否在systray中显示为应用程序指示器?
检查eginnovations Linux监视工具- http://www.eginnovations.com/web/linux-server-monitoring.htm
基于Web的,易于安装,甚至支持Linux虚拟化。
就我而言,此链接的答案对我有很大帮助。
曾经是Windows用户?您可能需要等效于Windows Task Manager的Ubuntu,然后通过Ctrl + Alt + Del组合键将其打开。
Ubuntu具有内置的实用程序来监视或杀死系统运行的进程,其作用类似于“任务管理器”,即系统监视器。
默认情况下,Ctrl + Alt + Del快捷键用于在Ubuntu Unity桌面上弹出注销对话框。对于习惯于快速访问任务管理器的用户而言,它没有用。
要更改键的设置,请从Unity Dash打开键盘实用程序(或系统设置->键盘)。
在快捷方式选项卡->自定义快捷方式上,单击加号图标以添加快捷方式。输入名称“任务管理器”,然后命令gnome-system-monitor。
添加后,单击显示“禁用”的位置,然后按Ctrl + Alt + Delete。您将看到一个对话框,提示“快捷键…已用于注销”,单击“重新分配”,您就完成了!