我想在面板中以数字形式显示读/写速度。
我知道可以使用系统负载指示器显示图表,也可以使用系统监视器指示器显示数字。我还发现曾经有一个错误,它会在面板上将硬盘读写速度显示为数字这里。尽管如此,我还是不知道如何复制这种功能。
关于系统监视器指示器,我知道我可以向其添加自定义命令。但是,我找不到可以添加的命令。理想情况下这是可能的,但我忽略了它。
答案1
介绍
正如评论中指出的那样,我编写了一个自定义指示器来显示磁盘 i/o 使用情况。它允许在面板中显示总使用情况,并在指示器菜单中显示每个设备的信息。它仅提供有关已安装设备的 i/o 使用情况的信息,并在设备安装/卸载时调整其信息。面板文本可以打开或关闭,基本设置可以通过~/.diskstat_indicator.json
文件控制。
用法
该指示器可以像任何其他应用程序一样通过 Unity Dash 或直接通过命令行 (diskstat_indicator
命令) 调用来启动。要在登录时启动指示器,可以将/usr/share/applications/diskstat_indicator.desktop
文件副本放入目录中~/.config/autostart/
。
由于读写总数不断变化的速度会影响面板中文本的长度,因此它会不断地来回移动其他指示器。这很快就会变得很烦人,这就是为什么我在菜单中添加了一个选项来禁用/启用面板文本。总信息仍然可以通过菜单看到。请注意,信息字段是不可选择的菜单项,因为没有与该菜单项关联的操作。它将来可能会有所作为,但这个指标的主要功能是显示数据,而不是作为面向行动的指标。
样本~/.diskstat_indicator.json
:
{
"show_panel_text": true,
"timeout": 1.5
}
安装
该指标可以从我的个人 PPA 中获取。使用以下步骤添加 PPA 并安装指标:
sudo add-apt-repository ppa:1047481448-2/sergkolo
sudo apt-get update
sudo apt-get install diskstat-indicator
源代码也可以在项目的GitHub 存储库。
技术细节、讨论和进一步步骤
指示器的工作方式很简单:它读取/proc/diskstats
文件,使用 交叉检查设备/proc/mounts
,然后仅提取文件中提到的设备的信息/proc/mounts
。这本质上与iotop
或iostat
程序的行为相同。在我的测试中,数据通常与 一致iotop
,尽管略有差异。
需要指出的是,这绝不是一个高质量的工具。它的目的只是快速了解磁盘 I/O 的情况;用户应该能够查看并说“好的,I/O 使用率相当高,所以显然发生了一些事情”。每个用户的工作流程都不同,因此它可能适合也可能不适合高级用户。如果您需要更详细的信息,例如每个进程的 I/O 活动,那么您可能需要软件包iotop
。
您可能会发现与此工具结合使用的其他有用指标是U盘指示灯,可用于观察磁盘空间使用情况以及挂载/卸载分区。