Меню Рубрики

Установка htop для centos

✔ CentOS 7: Монитор процессов htop.

Опубликовано 2019-12-17 · Обновлено 2020-01-02

Содержание:

1. Описание программы.

htop — компьютерная программа, предназначенная для вывода на терминал списка запущенных процессов и информации о них (монитор процессов). Создана, как альтернатива программы top. Предоставляет пользователю текстовый интерфейс.

1.1. Назначение программы.

htop часто применяется в тех случаях, когда информации, получаемой от утилиты top, недостаточно, например, при поиске утечек памяти в процессах.

htop также используется как system monitor.

1.2. Возможности.

htop по умолчанию сортирует список процессов по величине, позволяющей оценить продолжительность времени выполнения процесса на ЦПУ (клавиша P) («CPU%»). Также сортировка возможна по размеру занятой процессом памяти (клавиша M) («MEM%»), по времени выполнения процесса в пространстве ядра и пространстве пользователя (клавиша T) («TIME+») и по любому отображаемому параметру процесса (клавиши ).

  • время, прошедшее с момента запуска ОС (uptime);
  • загруженность ОС (load average);
  • размеры страниц памяти, размещённых в ОЗУ («Mem»);
  • размеры страниц памяти, сохранённых в файл или на раздел подкачки («Swp»);
  • нагруженность всех процессоров («CPU») или каждого процессора/ядра по отдельности.

В отличие от утилиты top, htop:

  • по умолчанию показывает список всех процессов, запущенных в ОС;
  • позволяет выполнять вертикальную и горизонтальную прокрутку списка процессов (клавиши стрелок);
  • реализует диалог (клавиша S), позволяющий менять настройки без перезапуска программы, например, выбрать параметры процессов для показа, поменять цветовую схему;
  • позволяет отправлять сигнал одному или нескольким выбранным процессам без ввода pid (клавиша k);
  • также без ввода pid позволяет:
    • менять приоритет nice процесса для планировщика процессов (клавиши [ и ]) ;
    • выбирать процессоры/ядра, на которых процесс может выполняться (клавиша a);
    • менять приоритет операций ввода-вывода для планировщика ввода-вывода (клавиша i);
    • просматривать значения переменных окружения (клавишаe);
  • поддерживает мышь.

Также htop:

  • позволяет выбирать несколько процессов из списка:
    • клавиша пробел — выделение одного процесса;
    • клавиша c — выделение процесса и всех его дочерних процессов;
    • клавиша U — отменить выделение;
  • позволяет выполнять поиск по pid (клавиши цифр) или по имени процесса (клавиши / и \);
  • позволяет просматривать открытые процессом файлы (клавиша l);
  • позволяет следить за системными вызовами процесса (клавиша s);
  • позволяет следить за вызовами процессом библиотечных функций (клавиша s);
  • позволяет просматривать процессы, запущенные от имени одного пользователя (клавиша u);
  • может выводить процессы в виде дерева (клавиша t);
  • может показывать потоки процессов пользователя (клавиша H) и потоки ядра (клавиша K);
  • использует CSI коды для разукрашивания выводимого текста.

1.3. Значения цветов.

Цвет
по умолчанию
Синий low … потоков пользователя, у которых приоритет nice больше 0 (низкие приоритеты)
Зелёный normal … потоков пользователя, у которых приоритет nice меньше или равен 0 (нормальный и высокие приоритеты)
Красный kernel … потоков ядра ОС
Жёлтый irq … обработчиков аппаратных прерываний
Маджента soft-irq … обработчиков программных прерываний
Сине-зелёный steal и guest … виртуальных машин
Чёрный io-wait … ожидания завершения операций ввода-вывода
Зелёный
used = physicalkernel_binaryreservedbufferscachefree
Синий buffers
Жёлтый cache
  1. used — размер страниц памяти, находящихся в ОЗУ.
  2. physical — размер памяти, доступной на ОЗУ.
  3. kernel_binary — размер памяти, занятой исполняемым кодом ядра.
  4. reserved — размер зарезервированной памяти.
  5. buffers — размер памяти ядра, используемой для временного хранения raw данных, прочитанных с диска или предназначенных для записи на диск.
  6. cache — память ядра, находящаяся в ОЗУ и используемая для хранения содержимого файлов, прочитанных с диска.
  7. free — размер свободной памяти; сумма свободной памяти, размещенной по малым адресам (lowmem) и используемой ядром, и свободной памяти, размещённой по большим адресам (highmem) и доступной процессам пространства пользователя.

PID — идентификатор процесса.

USER — владелец процесса.

PRI — текущий приоритет (влияет на процессорное время, отводимое процессу, значение по умолчанию — 20; чем меньше приоритет, тем больше времени отводится процессу, следовательно он выполняется быстрее).

NI — величина изменения приоритета относительно значения PRI (клавиши F7, F8).

VIRT — общий объем виртуальной памяти, используемой процессом. Включает в себя: область кода (CODE), данные (DATA), разделяемые библиотеки (SHARED) и страницы, перемещенные в swap-область памяти. Если приложение потребовало от ядра выделить ему 100Мб памяти, а использует всего 5 Мб, данный столбец всё равно будет показывать цифру 100.

  • CODE — объем памяти, содержащий исполняемый код процесса.
  • DATA — объем памяти, занятой данными, используемыми процессом в ходе выполнения.
  • SWAP — объем памяти, используемой процессом, но перемещенной в swap-область.

RES — количество резидентной (не перемещаемой в swap) памяти в килобайтах. Если приложение потребовало от ядра выделить ему 100Мб памяти, а использует всего 5 Мб, то данный столбец покажет 5. Но здесь есть два ньюанса:

а) RES не показывает сколько данных было перемещено в swap,
б) часть RES-памяти может быть разделяемой.

SHR — количество разделяемой (shared) памяти программы в килобайтах, то есть памяти, которая может быть использована другими приложениями.

S — состояние процесса:
S — так называемое состояние сна;
R — состояние выполнения;
D — состояние ожидания.

CPU% — использование процессора в процентном отношении.

MEM% — использование процессом памяти в процентном отношении.

TIME+ — время работы процесса.

Command — указывает на команду, которой был запущен процесс.

Через настройки (F2) можно добавить еще некоторые полезные параметры:

  • IO RATE — Операции ввода\вывода. Чтение + запись. Если нужно отдельно на чтение и на запись, то можно добавить:
  • IO READ RATE и IO WRITE RATE.

Также на экран выводятся следующие параметры:

Load average — отражает число блокирующих процессов в очереди на исполнение в определенный временной интервал, а именно 1 минута, 5 минут и 15 минут, соответственно. Блокирующий процесс — это процесс, который ожидает ресурсов для продолжения работы.

Uptime — время работы системы.

2. Управление программой.

F1 — справка;
F2 — настройки;
F3 — поиск процесса;
F4 — сортировка списка процессов (от большего к меньшему или от меньшего к большему);
F5 — устанавливает древовидное отображение (корни — родительские процессы, а листья — дочерние) и наоборот;
F6 — открывает панель с выбором параметра сортировки процессов;
F7 — увеличить приоритет выполнения текущего процесса;
F8 — уменьшить приоритет выполнения текущего процесса;
F9 — убить процесс;
F10 — выйти из программы.

3. Установка программы.

Для установки программы из репозитория выполните команду:

4. Использование программы.

Для запуска программы выполните команду:

Чтобы изменить интервал обновления выхода htop, используйте опции командной строки htop -d x :

# htop -d 10 , где х упоминается в десятках секунд.

источник

linux-notes.org

Установка HTOP в RHEL, CentOS и Fedora Linux

Htop является интерактивным режимом реального времени и системой-мониторинга «процесс-зритель» который написанный для Linux. Он предназначен для замены программы top в Unix. Она показывает часто обновленный список процессов, запущенных на компьютере, как правило. В отличие от top, HTOP предоставляет полный список процессов, запущенных. Htop использует цвет и дает визуальную информацию о процессоре, своп и состояние памяти.

Сравнение между Htop и top

— В «Htop» вы можете прокручивать список по вертикали и горизонтали, чтобы увидеть все процессы и все командные строки.
— В «top» возможна задержка для каждого неназначенной нажатой клавиши (особенно раздражает, когда несколько ключей управляющие последовательности вызывают аварии).
— ‘HTOP’ стартует быстрее (‘top’, кажется, собирать данные в течение некоторого времени перед отображением).
— В «Htop» вам не нужно набирать номер процесса, чтобы убить процесс, в ‘top’ вы должны знать его.
— В «Htop» вам не нужно набирать номер процесса или значение приоритета для изменить приоритет процесса, в «top» вы делаете это.
— ‘HTOP «поддерживает работу мыши.
— ‘top’ старше, следовательно, больше привыкли к нему.

Установка HTOP на RHEL / CentOS 5.x/6.x/7.x, Fedora 12/13/14/15/16/17/18/19/20

На RHEL, CentOS, инструмент HTOP не доступен в репозитории yum по умолчанию. Таким образом, мы подключим репозиторий RPMForge.

Узнать какая разрядность ОС можно выполнив команду:

После включения хранилище RPMForge установить HTOP можно выполнив yum команду:

Установка Htop из исходного кода

Если вы предпочитаете устанавливать Htop от соусе, загрузить исходный код и скомпилировать его:

Как использовать Htop команду

После установки, просто введите HTOP в терминале, чтобы запустить его, и обратите внимание на большой текстовый режим график в верхней части дисплея:

Нажмите «F2», чтобы увидеть меню настройки HTOP :

Если вы хотите увидеть список процессов в виде древо процессов то используйте «F5» или «Т»

Измените выход интервала обновления

Чтобы изменить интервал обновления выхода Htop, используйте D-опции командной строки. «htop -d x». Где х упоминается в thenths секунд.

Функциональные клавиши Htop

На этом подошла тема «Установка HTOP в RHEL, CentOS и Fedora Linux» к завершению.

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

источник

Начальная настройка CentOS 7

Автор: ITSeason · Опубликовано 23.07.2019 · Обновлено 01.08.2019

Введение

В настоящей статье будет рассмотрен процесс минимальной первоначальной настройки сервера на операционной системе CentOS 7. CentOS — это Linux дистрибутив основанный на Red Hat Enterprise Linux. Как и сам RHEL CentOS известен своей стабильностью и длительным сроком поддержки, который равен 10 годам. Используется преимущественно в серверах. Настраивать мы будем CentOS установленный в минимальном варианте. Рассмотрим процесс минимальной защиты SSH подключения, настройку межсетевого экрана, отключение SELinux, установку некоторых полезных программ и подключим репозиторий EPEL.

Подключение репозитория EPEL

Репозиторий EPEL (Extra Packages for Enterprise Linux) создан участниками проекта Fedora, содержит достаточно новые версии популярных программ. Пакеты EPEL чаще всего основаны на их аналогах в Fedora. Репозиторий EPEL это в первую очередь дополнительные пакеты для Red Hat Enterprise Linux, но по мимо RHEL поддерживает так же CentOS, Scientific Linux и Oracle Linux. Он включен в репозиторий Extras, который подключен по умолчанию, поэтому установить EPEL не составит никакого труда. Делается это через yum одной командой:

Установка программ

Установка nano

Nano — текстовый консольный редактор для UNIX-подобных операционных систем, распространяемый под лицензией GNU GPL. Первый выпуск состоялся еще в 2000 году. Достаточно удобен в использовании. Устанавливается из base репозитория.

Что бы открыть текстовый файл в nano нужно выполнить команду вида:

nano /путь к файлу/название файла

Если такой файл существует — откроется его содержимое, если нет — создастся новый файл.

Консольный текстовый редактор nano

Для сохранения изменений необходимо нажать комбинацию клавиш Ctrl+O, для выхода из редактора — Ctrl+X, для поиска по файлу — Ctrl+W. В принципе все команды прописаны в нижней части файла.

Установка Midnight Commander

Midnight Commander — файловый менеджер поддерживающий не только UNIX-подобные операционные системы, но и Microsoft Windows и Mac OS X. Первый выпуск состоялся в 1998 году. С помощью Midnight Commander очень удобно осуществлять навигацию по файловой системе, создавать/удалять каталоги, редактировать файлы и многое другое. Имеет встроенный редактор файлов. Устанавливается из base репозитория.

Установка Midnight Commander

Для того, что бы открыть Midnight Commander нужно ввести команду:

При удаленном SSH подключении к серверу навигацию по Midnight Commander можно выполнять с помощью мыши.

Установка net-tools

Net-tools — набор утилит и инструментов для работы с сетью в операционных системах семейства Linux. В CentOS 7 по умолчанию он отсутствует. Устанавливается из base репозитория.

После установки пакета net-tools станут доступны такие команды как netstat и ifconfig.

Установка htop

Htop — это программа для отображения в терминале информации о запущенных процессах. Является альтернативой программы top, которая доступна по умолчанию. Htop имеет более понятный и удобный интерфейс по сравнению с top. Устанавливается из репозитория EPEL.

Для запуска htop необходимо ввести команду:

При удаленном подключении доступно управление мышью. Клавишей F9 можно завершить выбранный процесс. Для выхода необходимо нажать F10.

Настройка Firewall

В CentOS 7 для управления брандмауэром используется инструмент FirewallD. Он выступает в качестве внешнего интерфейса межсетевого экрана Netfilter, встроенного в ядро Linux с версии 2.4. FirewallD предоставляет функционал межсетевого экрана с поддержкой сетевых зон, которые определяют уровень доверия для сетевого соединения или интерфейса. Поддерживает применение конфигурации без перезагрузки межсетевого экрана. При необходимости FirewallD можно отключить и использовать в качестве утилиты настройки брандмауэра Iptables. Но сегодня речь пойдет именно о стандартном инструменте — FirewallD.

В FirewallD существует 9 предустановленных зон:

  1. Drop — Все входящие соединения сбрасываются без ответа, возможны только исходящие соединения.
  2. Block — Все входящие соединения блокируются, отправителю пакета отправляется сообщение о блокировке. Возможны только исходящие соединения.
  3. Public — Для использования в общественных местах. Разрешены отдельные входящие соединения. По умолчанию это ssh и dhcpv6-client. После установки используется как зона по умолчанию и является единственной активной зоной.
  4. External — Для использования во внешних сетях с активированным режимом маскарадинга. Разрешены отдельные входящие соединения. По умолчанию это только ssh.
  5. Internal — Для использования во внутренних сетях. Разрешены отдельные входящие соединения. По умолчанию это ssh, dhclient, samba-client и mdns.
  6. Dmz — Демилитаризованная зона. Для компьютеров с ограниченным доступом к внутренней сети. Разрешены отдельные входящие соединения. По умолчанию это только ssh.
  7. Work — Для использования в рабочей среде. Разрешены отдельные входящие соединения. По умолчанию это ssh и dhcpv6-client.
  8. Home — Для использования в домашних сетях. Разрешены отдельные входящие соединения. По умолчанию это ssh, dhclient, samba-client и mdns.
  9. Trusted — Для использования в доверенной сети. Разрешены все соединения.

Команды FirewallD

  • Изменение зоны по умолчанию:

firewall-cmd —set-default-zone=наименование зоны

Интерфейсы, которые относятся к зоне по умолчанию, будут отнесены к новой зоне, которая будет определять ограничения для новых сетевых соединений. На активные соединения эта команда не распространяется.

  • Вывод активных зон и интерфейсов относящихся к данным зонам:
  • Получение списка всех поддерживаемых сервисов:
  • Добавление временного разрешающего правила для сервиса в указанной зоне:

firewall-cmd —zone=public —add-service=http

Данное правило разрешает http трафик. Вместо http можно указать наименование любого другого сервиса. Такое правило применяется незамедлительно и действует до перезагрузки.

  • Добавление постоянного разрешающего правила для сервиса в указанной зоне:

firewall-cmd —zone=public —permanent —add-service=http

Данное правило действует до его удаления.

  • Добавление временного разрешающего правила для зоны по умолчанию:
  • Добавление постоянного разрешающего правила для зоны по умолчанию:

firewall-cmd —permanent —add-service=http

  • Временное правило для открытия порта для указанной зоны:

firewall-cmd —zone=public —add-port=80/tcp

Данное правило открывает 80 TCP порт. Применяется немедленно, действует только до перезагрузки.

  • Постоянное правило для открытия порта для указанной зоны:

firewall-cmd —zone=public —permanent —add-port=80/tcp

  • Вывод списка разрешенных сервисов в указанной зоне:

firewall-cmd —zone=public —list-services

  • Вывод открытых портов в указанной зоне:

firewall-cmd —zone=public —list-ports

  • Временное удаление разрешающего правила для сервиса в указанной зоне:

firewall-cmd —zone=public —remove-service=http

  • Постоянное удаление разрешающего правила для сервиса в указанной зоне:

firewall-cmd —zone=public —permanent —remove-service=http

С удалением правил для открытых портов ситуация аналогичная как и с удалением правил для сервисов:

firewall-cmd —zone=public —remove-port=80/tcp

firewall-cmd —zone=public —permanent —remove-port=80/tcp

Для применения правил с опцией —permanent необходимо выполнить перезагрузку или команду:

Отключение SELinux

SELinux (Security Enhanced Linux) — это система принудительного контроля доступа. Принудительный контроль доступа — разграничение доступа, которое основано на назначении метки конфиденциальности информации и допуске к информации такого уровня конфиденциальности. SELinux имеет три режима работы:

  • Enforcing — SELinux включен, принудительные правила политики
  • Permissive — SELinux включен, правила политики не принудительные
  • Disabled — SELinux отключен

SELinux — это достаточно серьезный инструмент безопасности. В CentOS, как и в RHEL и Fedora, активен по умолчанию. Включён в состав ядра Linux начиная с версии 2.6. Работа с ним требует определенных навыков, на освоение которых требует время. Поэтому чаще всего SELinux просто отключают когда он начинает мешать, не прибегая к его настройке. Однако отключать его следует только в том случае, когда это действительно необходимо. Во всех остальных случаях лучшим решением будет разобраться в настройке политик SELinux и не отключать его. Проверить статус работы SELinux можно командой:

Если вы все-таки решили его отключить, то выполните:

И замените SELINUX=enforcing на SELINUX=disabled . После этого перезагрузите сервер и проверьте статус. SELinux должен быть отключен.

Защита SSH подключения

SSH (Secure Shell) — это сетевой протокол прикладного уровня, использующейся для удалённого управления операционной системой и передачи данных. Шифрует абсолютно весь трафик, включая передаваемые пароли. В CentOS доступен сразу после установки, в том числе разрешен в брандмауэре. Если ваш сервер доступен из вне, то с большой долей вероятности его постоянно будут пытаться взломать путем подбора паролей. Поэтому необходимо обезопасить себя от взлома и выполнить хотя бы минимальную настройку для предотвращения печального исхода. Об этом и пойдет речь в этом разделе. Я не буду описывать аутентификацию по ключу, хоть она и считается более безопасной, сегодня речь о минимальной настройке.

Отключаем авторизацию под пользователем root

Это одно из главных правил при работе с SSH, так как данный пользователь есть в любой системе и имеет полные права на все. Подобрав к нему пароль злоумышленник получит полный контроль над вашим сервером. Для отключения необходимо отредактировать конфигурационный файл:

Находим строку #PermitRootLogin yes и меняем ее на PermitRootLogin no . Обратите внимание, что комментария ( # ) на строке быть не должно. Сохраняем файл и перезапускаем службу ssh:

Теперь с логином root авторизоваться невозможно. Только перед тем как делать запрет на подключение под root создайте пользователя с возможность выполнения sudo. Для это пользователя необходимо добавить в группу, пользователи которой могут выполнять sudo. В CentOS это группа wheel. Для добавления существующего пользователя в эту группу введите:

Для создания нового пользователя:

Затем нужно задать для него пароль:

Меняем порт по умолчанию

SSH по умолчанию работает на 22 порту. Именно по этому порту и пытаются подключится к серверу для подбора пароля. Если сменить этот порт на любой другой, то вероятность взлома вашего сервера будет существенно снижена. Перед сменой порта необходимо убедится, что порт который вы собираетесь использовать для SSH не используется другим сервисом. Так же необходимо открыть порт в брандмауэре, иначе вы не сможете подключиться. Для изменения порта открываем тот же самый конфигурационный файл, находим строку #Port 22 и меняем ее на Port 8770 . Вместо 8770 необходимо указать номер порта который вы хотите использовать для SSH подключения. Сохраняем файл и перезапускаем службу ssh:

После перезапуска службы авторизоваться по 22 порту будет невозможно. Теперь для подключения по SSH к серверу необходимо вместо ssh user@ip-адрес вводить команду ssh -p 8770 user@ip-адрес. Если подключаетесь через PuTTY достаточно просто сменить номер порта.

Настройка авторизации с определенного ip-адреса

Запрет на подключение к серверу со всех ip-адресов кроме своего является достаточно эффективной мерой защиты сервера, так как с любого другого адреса подключиться к серверу будет просто невозможно. Для реализации этой меры защиты у вас должен быть статический белый ip-адрес. Если такового нет, то можно вместо ip добавить сеть из диапазона которой вам выдаются динамические адреса. Для этого в файл hosts.allow нужно добавить ваш адрес или сеть:

Добавляем в конец файла запись для ip-адреса 192.168.0.3:

Если нужно указать несколько адресов:

После этого перезагружаем SSH:

Теперь к серверу можно подключиться только с указанного адреса.

После задания таких настроек SSH, ваш сервер будет защищен значительно лучше чем с настройками по умолчанию.

Заключение

Настройка приведенная в данной статье не является единственно правильной. Это всего лишь один из возможных вариантов настройки сервера. Программы установленные в руководстве не являются специфическими и подойдут к серверам настраиваемым под любые задачи, будь то сервер виртуализации или веб-сервер. Если у вас есть вопросы или дополнения к настоящей статье — пишите в комментариях.

источник

Читайте также:  Установка java intellij idea linux mint

Добавить комментарий