Информация о Процессах: ps и pstree

Эти две команды выводят список процессов, запущенных в данный момент в системе, согласно установленным вами критериям.

ps

Запустив эту команду без аргументов, вы увидите только процессы, запущенные вами и только с данного терминала, который вы сейчас используете:

     $ ps
       PID TTY          TIME CMD
     18614 pts/3    00:00:00 bash
     20173 pts/3    00:00:00 ps
    

Как и многие утилиты UNIX, ps имеет массу опций, наиболее распространенные из них это:has a handful of

  • a: также показывает процессы, запущенные другими пользователями;

  • x: также показывает процессы, не имеющие контролирующего терминала или запущенные с другого терминала;

  • u: выводит имя пользователя, который запустил процесс, и время запуска для каждого из процессов.

Существует еще множество опций. За полной информацией рекомендуем обратится к соответстыущим страничкам руковдства. В данном случае это : ps(1).

Вывод команды разделен на несколько полей: одно из них, которое будет вас интересовать чаще, это поле PID, которое содержит информацию об идентификаторе процесса. Поле CMD содержит имя выполняемой. Чаще всего команда ps используется так:

     $ ps ax | less
    

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

pstree

Команда pstree выводит процессы в форме дерева. Одно из преимуществ этого это то, что вы можете сразу видеть, какой процесс является родителем какого: когда вам нужно будет убить целый ряд процессов, в случае когда интересующие вас процессы являютя дочерними для одного родительского, то вы можете просто убить родителя. Вы можете использовать опцию -p, которая отображает PID каждого процесса и опцию -u, которая отображает имя пользователя, который запустил этот процесс. Так как дерево в общем случае весьма длинное, вы можете вызвать pstree так:

     $ pstree -up | less
    

Таким образом вы получите обзор всего дерева процессов.