---
author: Ravi Saive
category: 技术
comments_data:
- date: '2017-04-30 13:08:29'
  message: 用 Django 是不是有点大啦,有个用 flask 写的类似的中文版工具,https://github.com/hypersport/sysinfo
  postip: 113.87.105.234
  username: qiansen [Firefox 53.0|GNU/Linux]
- date: '2017-05-01 18:07:54'
  message: 怎么在VPS上面用？
  postip: 60.255.136.100
  username: 龙尘飘 [Chrome 60.0|Windows 10]
- date: '2017-05-03 09:55:33'
  message: "当我在安装第6步$ cat requirements.txt&nbsp; &nbsp; ---&gt;$ pip install -r requirements.txt
    时就包错我，请问这是什么错呢？？<br />\r\n<br />\r\nException:<br />\r\nTraceback (most recent
    call last):<br />\r\n&nbsp;&nbsp;File &quot;/home/yang/pydash/pydashtest/local/lib/python2.7/site-packages/pip/basecommand.py&quot;,
    line 215, in main<br />\r\n&nbsp; &nbsp; status = self.run(options, args)<br />\r\n&nbsp;&nbsp;File
    &quot;/home/yang/pydash/pydashtest/local/lib/python2.7/site-packages/pip/commands/install.py&quot;,
    line 342, in run<br />\r\n&nbsp; &nbsp; prefix=options.prefix_path,<br />\r\n&nbsp;&nbsp;File
    &quot;/home/yang/pydash/pydashtest/local/lib/python2.7/site-packages/pip/req/req_set.py&quot;,
    line 784, in install<br />\r\n&nbsp; &nbsp; **kwargs<br />\r\n&nbsp;&nbsp;File
    &quot;/home/yang/pydash/pydashtest/local/lib/python2.7/site-packages/pip/req/req_install.py&quot;,
    line 851, in install<br />\r\n&nbsp; &nbsp; self.move_wheel_files(self.source_dir,
    root=root, prefix=prefix)<br />\r\n&nbsp;&nbsp;File &quot;/home/yang/pydash/pydashtest/local/lib/python2.7/site-packages/pip/req/req_install.py&quot;,
    line 1064, in move_wheel_files<br />\r\n&nbsp; &nbsp; isolated=self.isolated,<br
    />\r\n&nbsp;&nbsp;File &quot;/home/yang/pydash/pydashtest/local/lib/python2.7/site-packages/pip/wheel.py&quot;,
    line 345, in move_wheel_files<br />\r\n&nbsp; &nbsp; clobber(source, lib_dir,
    True)<br />\r\n&nbsp;&nbsp;File &quot;/home/yang/pydash/pydashtest/local/lib/python2.7/site-packages/pip/wheel.py&quot;,
    line 316, in clobber<br />\r\n&nbsp; &nbsp; ensure_dir(destdir)<br />\r\n&nbsp;&nbsp;File
    &quot;/home/yang/pydash/pydashtest/local/lib/python2.7/site-packages/pip/utils/__init__.py&quot;,
    line 83, in ensure_dir<br />\r\n&nbsp; &nbsp; os.makedirs(path)<br />\r\n&nbsp;&nbsp;File
    &quot;/home/yang/pydash/pydashtest/lib/python2.7/os.py&quot;, line 157, in makedirs<br
    />\r\n&nbsp; &nbsp; mkdir(name, mode)<br />\r\nOSError: [Errno 13] Permission
    denied: '/home/yang/pydash/pydashtest/lib/python2.7/site-packages/Django-1.6.8.dist-info'"
  postip: 113.105.85.173
  username: 独狼-霸主 [Chromium 58.0|Ubuntu]
- date: '2017-05-05 12:42:08'
  message: 本来还想Docker化一下，细细一想，干嘛看容器的数据啊噗
  postip: 27.205.105.209
  username: Svitter [Chrome 58.0|Mac 10.12]
- date: '2017-05-10 22:19:40'
  message: "提示代码：<br />\r\n<br />\r\nDataTables warning (table id = 'get_netstat'):
    Requested unknown parameter '2' from the data source for row 0<br />\r\n<br />\r\n内存使用曲线无内容！<br
    />\r\n<br />\r\n顺便问一下：局域网中的其他设备可以通过浏览器访问吗！（我的ubuntu server 的局域网web访问功能已设置完成，并能通过IP成功访问apache介绍网页。）"
  postip: 27.42.109.222
  username: 来自广东珠海的 Firefox 53.0|Ubuntu 用户
- date: '2017-05-10 22:22:02'
  message: 权限有问题！建议更改clone的pydash的权限后重试！
  postip: 27.42.109.222
  username: 来自广东珠海的 Firefox 53.0|Ubuntu 用户
count:
  commentnum: 6
  favtimes: 4
  likes: 0
  sharetimes: 0
  viewnum: 17288
date: '2017-04-30 07:09:00'
editorchoice: false
excerpt: pyDash 是一个轻量且基于 web 的 Linux 性能监测工具，它是用 Python 和 Django 加上 Chart.js 来写的。经测试，在下面这些主流
  Linux 发行版上可运行：CentOS、Fedora、Ubuntu、Debian、Raspbian 以及 Pidora 。
fromurl: http://www.tecmint.com/pydash-a-web-based-linux-performance-monitoring-tool/
id: 8462
islctt: true
largepic: /images/p/201704/29/231657dni4cqi6bz6cjjci.jpg
permalink: /article-8462-1.html
pic: /data/attachment/album/201704/29/231657dni4cqi6bz6cjjci.jpg.thumb.jpg
related: []
reviewer: ''
selector: ''
summary: pyDash 是一个轻量且基于 web 的 Linux 性能监测工具，它是用 Python 和 Django 加上 Chart.js 来写的。经测试，在下面这些主流
  Linux 发行版上可运行：CentOS、Fedora、Ubuntu、Debian、Raspbian 以及 Pidora 。
tags:
- pyDash
- 性能
- 监控
thumb: false
title: pyDash：一个基于 web 的 Linux 性能监测工具
titlepic: true
translator: ucasFL
updated: '2017-04-30 07:09:00'
---

`pyDash` 是一个轻量且[基于 web 的 Linux 性能监测工具](http://www.tecmint.com/command-line-tools-to-monitor-linux-performance/)，它是用 Python 和 [Django](http://www.tecmint.com/install-and-configure-django-web-framework-in-centos-debian-ubuntu/) 加上 Chart.js 来写的。经测试，在下面这些主流 Linux 发行版上可运行：CentOS、Fedora、Ubuntu、Debian、Raspbian 以及 Pidora 。


![](/data/attachment/album/201704/29/231657dni4cqi6bz6cjjci.jpg)


你可以使用这个工具来监视你的 Linux 个人电脑/服务器资源，比如 CPU、内存、网络统计，包括在线用户的进程以及更多。仪表盘完全由主要的 Python 发行版本所提供的 Python 库开发，因此它的依赖关系很少，你不需要安装许多包或库来运行它。


在这篇文章中，我将展示如何安装 `pyDash` 来监测 Linux 服务器性能。


### 如何在 Linux 系统下安装 pyDash


1、首先，像下面这样安装需要的软件包 `git` 和 `Python pip`：



```
-------------- 在 Debian/Ubuntu 上 --------------
$ sudo apt-get install git python-pip
-------------- 在 CentOS/RHEL 上 --------------
# yum install epel-release
# yum install git python-pip
-------------- 在 Fedora 22+ 上 --------------
# dnf install git python-pip

```

2、如果安装好了 git 和 Python pip，那么接下来，像下面这样安装 `virtualenv`，它有助于处理针对 Python 项目的依赖关系：



```
# pip install virtualenv
或
$ sudo pip install virtualenv

```

3、现在，像下面这样使用 `git` 命令，把 pyDash 仓库克隆到 home 目录中：



```
# git clone https://github.com/k3oni/pydash.git
# cd pydash

```

4、下一步，使用下面的 `virtualenv` 命令为项目创建一个叫做 `pydashtest` 虚拟环境：



```
$ virtualenv pydashtest #give a name for your virtual environment like pydashtest

```

![Create Virtual Environment](/data/attachment/album/201704/29/231707s638ynr9hzvtwn44.png)


*创建虚拟环境*


重要：请注意，上面的屏幕截图中，虚拟环境的 `bin` 目录被高亮显示，你的可能和这不一样，取决于你把 pyDash 目录克隆到什么位置。


5、创建好虚拟环境（`pydashtest`）以后，你需要在使用前像下面这样激活它：



```
$ source /home/aaronkilik/pydash/pydashtest/bin/activate

```

![Active Virtual Environment](/data/attachment/album/201704/29/231707mookakkzwvnvatk7.png)


*激活虚拟环境*


从上面的屏幕截图中，你可以注意到，提示字符串 1（`PS1`）已经发生改变，这表明虚拟环境已经被激活，而且可以开始使用。


6、现在，安装 pydash 项目 requirements；如何你好奇的话，可以使用 [cat 命令](http://www.tecmint.com/13-basic-cat-command-examples-in-linux/)查看 `requirements.txt` 的内容，然后像下面所示那样进行安装：



```
$ cat requirements.txt
$ pip install -r requirements.txt

```

7、现在，进入 `pydash` 目录，里面包含一个名为 `settings.py` 的文件，也可直接运行下面的命令打开这个文件，然后把 `SECRET_KEY` 改为一个特定值：



```
$ vi pydash/settings.py

```

![Set Secret Key](/data/attachment/album/201704/29/231708tmbm9i0dbzb9m9nv.png)


*设置密匙*


保存文件然后退出。


8、之后，运行下面的命令来创建一个项目数据库和安装 Django 的身份验证系统，并创建一个项目的超级用户：



```
$ python manage.py syncdb

```

根据你的情况回答下面的问题：



```
Would you like to create one now? (yes/no): yes
Username (leave blank to use 'root'): admin
Email address: aaronkilik@gmail.com
Password: ###########
Password (again): ############

```

![Create Project Database](/data/attachment/album/201704/29/231708c0e9z9ia094dv2vi.png)


*创建项目数据库*


9、这个时候，一切都设置好了，然后，运行下面的命令来启用 Django 开发服务器：



```
$ python manage.py runserver

```

10、接下来，打开你的 web 浏览器，输入网址：`http://127.0.0.1:8000/` 进入 web 控制台登录界面，输入你在第 8 步中创建数据库和安装 Django 身份验证系统时创建的超级用户名和密码，然后点击登录。


![pyDash Login Interface](/data/attachment/album/201704/29/231709uij8x6djip09e7xj.png)


*pyDash 登录界面*


11、登录到 pydash 主页面以后，你将会可以看到监测系统的基本信息，包括 CPU、内存和硬盘使用量以及系统平均负载。


向下滚动便可查看更多部分的信息。


![pyDash Server Performance Overview](/data/attachment/album/201704/29/231710v4wkqwjntxz04iin.png)


*pydash 服务器性能概述*


12、下一个屏幕截图显示的是一段 pydash 的跟踪界面，包括 IP 地址、互联网流量、硬盘读/写、在线用户以及 netstats 。


![pyDash Network Overview](/data/attachment/album/201704/29/231712ropz9wa050wcqeew.png)


*pyDash 网络概述*


13、下一个 pydash 主页面的截图显示了一部分系统中被监视的活跃进程。


![pyDash Active Linux Processes](/data/attachment/album/201704/29/231715k7biaimaikxskmom.png)


*pyDash 监视活跃 Linux 进程*


如果想了解更多信息，请在 GitHub 上查看 pydash：<https://github.com/k3oni/pydash>


这就是全部内容了。在这篇文章中，我们展示了在 Linux 中如何安装 pyDash 并测试它的主要特性。如果你有什么想法，可以通过下面的反馈部分联系我们；如果你知道任何有用或类似的工具，也可以在评论中告知我们。




---


作者简介：


我叫 Ravi Saive，是 TecMint 的原创作者，是一个喜欢在网上分享技巧和知识的计算机极客和 Linux Guru。我的大多数服务器都运行在 Linux 开源平台上。请关注我：[Twitter](http://www.tecmint.com/wp-content/uploads/2017/03/pyDash-Network-Overview.png)、[Facebook](https://www.facebook.com/ravi.saive) 以及 [Google+](https://plus.google.com/u/0/+RaviSaive) 。




---


via: <http://www.tecmint.com/pydash-a-web-based-linux-performance-monitoring-tool/>


作者：[Ravi Saive](http://www.tecmint.com/author/admin/)  译者：[ucasFL](https://github.com/ucasFL) 校对：[jasminepeng](https://github.com/jasminepeng)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出