Htop - расширенный монитор процессов, написанный для GNU/Linux. Задуман он был для замены стандартной утилиты top. Htop, в отличии от top, показывает все процессы в системе. Также показывает время непрерывной работы, использование процессоров и памяти. Тоесть он более информативный, нежели стандартный top.
Утилита есть в портах. Выполним установку:
# cd /usr/ports/sysutils/htop && make install clean && rehash |
Однако во время установки наблюдаем такую ошибку:
*********************************************************** htop(1) requires linprocfs(5) to be mounted. If you don't have it mounted already, please add this line to /etc/fstab and run `mount linproc`: linproc /compat/linux/proc linprocfs rw 0 0 *********************************************************** *** Error code 1 Stop in /usr/ports/sysutils/htop. *** Error code 1 Stop in /usr/ports/sysutils/htop. |
Необходимо включить режим совместимости с Linux. Статья о этом уже есть, однако можно и повториться.
Добавим в rc.conf поддержку Linux:
# echo "linux_enable=YES" >> /etc/rc.conf |
Также добавим записи в loader.conf:
# echo "linux_load="yes"">> /boot/loader.conf # echo "linprocfs_load="yes"" >> /boot/loader.conf |
Чтобы не перезагружать систему, подгрузим соответствующие модуля:
# kldload /boot/kernel/linux.ko # kldload /boot/kernel/linprocfs.ko |
Ну и собственно установка самого эмулятора:
# cd /usr/ports/emulators/linux_base-fc4 && make install clean && rehash |
Подключаем псевдофайловую систему:
# echo "linproc /compat/linux/proc linprocfs rw 0 0" >> /etc/fstab # mount linproc |
После всех этих манипуляций повторно пытаемся установить htop:
# cd /usr/ports/sysutils/htop && make install clean && rehash |
Установка проходит без сучка и задоринки... Запускаем htop и знакомимся с его возможностями.
Теперь более подробно. По умолчанию экран разбит на две части: системная статистика в верхней, и в нижней - потребление ресурсов отдельными процессами. С помощью раздела Setup можно настроить, какие именно данные хотим получать. Нажмем "F2":
Для перемещения к нужной опции меню можно использовать клавиши со стрелками, затем нажать клавиши от "F1" до "F9" [см. подсказки в нижней строке], чтобы изменить внешний вид индикатора, добавить, удалить или переместить их в различные части экрана. Например, если необходимо изменить вид индикатора времени, выделите его стрелками, последовательными нажатиями "Enter" выбераем нужный вариант из доступных (Text/Текст, LED/ЖК-дисплей, Bar/Диаграмма и Graph/График) и затем "F10" для выхода. Аналогично можно изменить любую категорию индикаторов.
Помимо выбора различных индикаторов и их внешнего вида, можно упростить просмотр информации, выбрав другую цветовую схему. Отметим Colors в меню Setup и переместитесь к списку цветов, выберите схему и активируйте её нажатием пробела (должна появиться отметка X). Всё это, конечно, лишь косметика по сравнению с другими возможностями, но суть интерактивной природы Htop, которая, собственно, и помогает наблюдать за приложениями и процессами, а также управлять ими, заключается в сортировке вывода и управлении набором отображаемых параметров.
Меню Setup подскажет доступные варианты, которые можно выбрать для отображения:
Если какой-то столбец не нужен, его удаление сводится к тому, чтобы выделить его и нажать "F9". Не беспокойтесь - можно вернуть назад любой столбец, выбрав его в списке доступных (Available Columns) и нажав "F5". В зависимости от того, за чем наблюдаем, можно вывести все элементы, необходимые для решения конкретной задачи. Конечно, это поможет лишь в случае, если знаем, что означают все эти аббревиатуры, но обращение к man htop даст сравнительно мало информации. В этой ситуации man top предпочтительнее, и кроме того, многие из команд top будут также работать и в htop, но не все - так что экспериментируйте. Ctrl+W в top сохранит сделанные изменения, записав их в конфигурационный файл ~/.toprc, так что они не потеряются между сеансами работы и перезагрузками. В Htop это, похоже, не работает, а значит, изменения, сделанные в меню Setup (клавиша "F2") работают только в текущем сеансе и не сохраняются. При вызове Htop можно использовать, как и в Top, ключ d для изменения задержки (интервала обновления экрана). Попробуйте "htop d 1". Не моргайте, иначе всё пропустите ;).
Если по каким-нибудь причинам необходимо изменить приоритет некоторого приложения, Htop предоставляет функции nice/renice более удобным способом, чем Top. В последнем необходимо узнать идентификатор (PID) процесса/приложения, прежде чем использовать эти команды. В Htop прокрутим экран к желаемой цели и нажимаем F8 для понижения приоритета (т.е. увеличения значения nice, максимальное значение - 19). Это может выполнить и простой пользователь, но если вы хотите повысить приоритет (значение nice можно опустить до -20), необходимо работать с правами суперпользователя root, иначе не сможем установить значение nice ниже нуля.
Администраторам, да и обычным пользователям, часто нужно принудительно завершить какой-нибудь процесс или приложение. Запуск Htop в окне терминала избавит от головной боли. В примере я выделяю процесс mpd5 как кандидата на получение "серебряной пули", затем жму "F9" и получаю возможность "выбрать оружие":
Уничтожаете ли вы какое-нибудь приложение или задаёте приоритет с помощью nice/renice, очень полезной оказывается возможность фильтрации по пользователям. Жмем клавишу "U", и получаем список всех пользователей системы, с помощью которого можно сузить перечень отображаемых процессов.
По нажатию "F6" есть возможность отсортировать вывод по различным категориям, таким как Users/Пользователи, PID/Идентификаторы процесса, Priority/Приоритет. При этом ничего не фильтруется, а просто изменяется порядок списка. Можно совмещать эти два фильтра. Если сначала нажмем "U" для выбора пользователя, можно затем использовать "F6" для сортировки процессов заданного пользователя согласно категориям, таким как приоритет, потребление памяти и процессорного времени.
Используемые материалы:
Htop, a tip-top ncurses interactive tool
for system monitoring your desktop
Последние комментарии
11 недель 4 дня назад
35 недель 6 дней назад
2 года 36 недель назад
3 года 6 недель назад
3 года 29 недель назад
3 года 44 недели назад
3 года 45 недель назад
3 года 48 недель назад
4 года 7 недель назад
4 года 12 недель назад