Skip to main content

Тема 4 Процессы

Отлично! Теперь, когда ты умеешь управлять программами и обновлениями с помощью пакетных менеджеров, давай перейдём к следующей важной теме — управление процессами в Linux.

Тема 7: Управление процессами

Представь себе:

Каждая программа, которую ты запускаешь в Linux, создаёт "процесс". Это как маленький работник, который выполняет свою задачу. В любой момент времени в Linux может быть запущено множество процессов, и важно уметь ими управлять: останавливать те, которые не нужны, или отслеживать те, которые используют слишком много ресурсов.


Основные команды для управления процессами

  1. ps — просмотр запущенных процессов

    Команда ps показывает список процессов, которые запущены в системе. Вот простой пример:

    Copy code

    ps

    Эта команда покажет список процессов, которые запущены в твоей текущей сессии (например, в терминале). Но если ты хочешь увидеть все процессы в системе, используй команду с флагом -aux:

    Copy code

    ps -aux

    Это выдаст список всех процессов, которые работают в системе.

  2. top — мониторинг системы в реальном времени

    Команда top показывает информацию о процессах в реальном времени. Это как интерактивное окно, где ты видишь, сколько ресурсов (например, процессора и памяти) использует каждый процесс. Чтобы запустить top, просто введи:

    css

    Copy code

    top

    Для выхода из top нажми клавишу q.

  3. htop — более удобный мониторинг

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

    Copy code

    sudo apt install htop

    После установки запусти её:

    Copy code

    htop

  4. kill — завершение процесса

    Иногда процессы могут зависнуть или начать использовать слишком много ресурсов. В таком случае ты можешь их завершить с помощью команды kill. Сначала нужно узнать ID процесса (PID), используя команду ps или top, а затем завершить его:

    bash

    Copy code

    kill <PID>

    Если процесс не завершился, можно использовать более "жёсткий" вариант:

    bash

    Copy code

    kill -9 <PID>

  5. pkill — завершение процесса по имени

    Если ты знаешь имя процесса, но не хочешь искать его PID, можно использовать команду pkill. Например, если ты хочешь завершить все процессы программы firefox:

    Copy code

    pkill firefox


Специальные процессы и приоритеты

Иногда тебе нужно настроить приоритет процесса, чтобы одно задание выполнялось быстрее или медленнее, чем остальные. Это можно сделать с помощью команд nice и renice.

  1. nice — запуск процесса с приоритетом

    Если ты хочешь запустить программу с определённым приоритетом, используй nice. Чем выше число приоритета, тем ниже реальный приоритет процесса (да, это немного запутанно):

    bash

    Copy code

    nice -n 10 command

  2. renice — изменение приоритета уже запущенного процесса

    Чтобы изменить приоритет для уже запущенного процесса, используй команду renice. Например, чтобы понизить приоритет процесса с PID 1234:

    yaml

    Copy code

    renice +5 1234


Пингви подсказывает:

"Процессы — это как маленькие рабочие, которые выполняют задачи. Если один из них начинает лениться или занимать слишком много ресурсов, ты как начальник можешь его уволить (kill), или дать ему другую задачу (renice)!"


Практическое задание

  1. Просмотри все запущенные процессы. Используй команду ps -aux, чтобы увидеть список всех процессов, которые работают на твоей системе. Найди свой терминал среди них.

  2. Запусти top или htop. Посмотри, сколько ресурсов используется различными процессами. Какие процессы занимают больше всего памяти и процессорного времени?

  3. Заверши процесс. Найди любой ненужный процесс (например, запусти приложение и закрой его через kill или pkill). Убедись, что процесс завершён.

  4. Запусти процесс с низким приоритетом. Запусти любую программу с низким приоритетом с помощью команды nice.


Итог:

Теперь ты знаешь, как управлять процессами в Linux. Это очень важный навык, ведь он позволяет контролировать ресурсы системы и устранять проблемы с зависшими приложениями. Если что-то начинает замедлять работу твоего компьютера, ты всегда можешь это отслеживать и решать! Готов двигаться дальше?