LINUX.ORG.RU
ФорумAdmin

TOP срезает имена пользователей


0

1

Доброго времени суток всем! Необходимо получать имена (не UID) пользователей процессы которых остались в системе после их(пользователей) выхода. Скрип собрали, но есть проблема - для отображения процессов пользуется команда TOP, ps иногда UID показывает, но TOP срезает имена у пользователей до 8 символов.

Как это убрать? Или как еще можно получать список поль-ей с процессами?


ps -U userlist

И вообще, man ps.

Eddy_Em ☆☆☆☆☆
()

можешь попробовать htop

catap ★★★★★
()

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

По теме: не совсем понял, как и что именно вы делаете, но я бы написал нечто вроде «cat /some/path/suspectusersfile | while read $user; do [ $(pgrep -u $user | wc -l) -gt 0 ] && echo $user; done».

nnz ★★★★
()

>Необходимо получать имена (не UID)

Может проще переводит UID в имена через «getent passwd UID» ?

mky ★★★★★
()
Ответ на: комментарий от nnz

systemd с Pam - вродебы наиболее правильно - но на сервере пока opensuse 10.3, а внедрять systemd как я понял будут в 11.4.

За pgrep и getent, спасибо, то что нужно.

crider
() автор топика
Ответ на: комментарий от crider

Я бы рекомендовал обновиться до 11.3 (у 11.1 и 11.2 сроки уже на пределе, а десятая ветка давно не поддерживается). Ибо неподдерживаемый дистр — гигантская дыра в безопасности.

// Суся, конечно, замечательная система, но ее бесплатный вариант для серверов практически непригоден, именно из-за микроскопических сроков поддержки.

nnz ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.