1 авг. 2008 г.

ps: информация о процессах

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

$ ps
      PID TTY          TIME CMD
    18614 pts/3    00:00:00 bash
    20173 pts/3    00:00:00 ps
Как и многие утилиты UNIX®, ps обладает рядом полезных опций, наиболее общими из которых являются:
  • a: выводит процессы, запущенные другими пользователями;
  • x: выводит процессы без управляющего терминала или с управляющим терминалом, но отличающимся от используемого вами;
  • u: выводит для каждого из процессов имя запустившего его пользователя и время запуска.

Существует еще множество других опций. За дополнительной информацией обращайтесь к странице руководства ps(1).
Вывод этой команды разделен на несколько полей: чаще всего вас будет интересовать поле PID, содержащее идентификатор процесса. Поле CMD содержит имя выполняемой команды. Чаще всего команда ps вызывается так:
 $ ps ax | less
При этом вы получите список всех запущенных на данный момент процессов, что даст вам возможность определить один или несколько проблемных процессов и уничтожить их.

pstree

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

Комментариев нет: