Как можно показать скорость чтения / записи диска как число на панели?

Я хотел бы показать скорости чтения / записи на панели в виде чисел.

Я знаю, что можно показать график, используя индикатор загрузки системы, и что можно показать цифры, используя индикатор системного монитора. Я также обнаружил, что раньше здесь была ошибка, которая показывала скорость чтения / записи жесткого диска в виде числа на панели. Тем не менее, я не могу понять, как воспроизвести такую ​​функциональность.

Что касается индикатора системного монитора, я знаю, что могу добавлять в него собственные команды. Тем не менее, я не могу найти команду, которая может быть добавлена, которая работает. В идеале это возможно, и я упустил это.

1 ответ

Решение

Вступление

Как указано в комментариях, я написал собственный индикатор для отображения использования дискового ввода-вывода. Это позволяет отображать общее использование на панели, а также информацию по каждому устройству в меню индикатора. Он предоставляет информацию об использовании ввода-вывода только тех устройств, которые смонтированы, и адаптирует свою информацию, когда устройства монтируются / размонтируются. Текст на панели можно отключить, а основными настройками можно управлять с помощью ~/.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 и установить индикатор, выполните следующие шаги:

  1. sudo add-apt-repository ppa:1047481448-2/sergkolo
  2. sudo apt-get update
  3. sudo apt-get install diskstat-indicator

Исходный код также доступен в репозитории проекта GitHub.

Технические детали, обсуждение и дальнейшие шаги

Индикатор работает просто: он читает /proc/diskstats файл, перекрестные проверки устройств с /proc/mounts и извлекает информацию только для тех устройств, которые указаны в /proc/mounts файл. Это по сути то же самое поведение, что и iotop или же iostat программы. В моих тестах данные в целом согласуются с iotop хотя и с небольшими вариациями.

Следует отметить, что это ни в коем случае не качественный инструмент. Он предназначен только для быстрого понимания того, что происходит с дисковым вводом-выводом; там пользователь должен иметь возможность взглянуть и сказать: "Хорошо, использование ввода-вывода довольно высокое, так что явно что-то происходит". У каждого пользователя свой рабочий процесс, поэтому он может подходить или не подходить для опытных пользователей. Если вам нужна более подробная информация, такая как процесс ввода-вывода, то, вероятно, вы хотите iotop пакет программного обеспечения.

Другими индикаторами, которые могут оказаться полезными в сочетании с этим инструментом, является индикатор Udisks, который можно использовать для наблюдения за использованием дискового пространства и установки / демонтажа разделов.

Другие вопросы по тегам