Использование памяти TOP команды

14

В SuSE (всего: Mem: 31908592k, использовано 31421504k), как узнать, какой процесс или программа используют мою память?

AlBouazizi
источник

Ответы:

24

Стандартная (командная строка) программа для проверки использования процессором / памятью процессов topтакже немного более полна, htopоднако во многих системах она в topлюбом случае bashпривязана (в shбольшинстве современных систем linux этот метод почти всегда связан ). , Также доступны различные оболочки GUI для top / htop

После открытия сверху клик Mбудет сортировать по использованию памяти.

РЕДАКТИРОВАТЬ - 4-12 Для ясности я решил расширить сортировку. Вот типичное topокно при запуске из терминальной оболочки, оно уже отсортировано по%MEM

введите описание изображения здесь

Колонка, которая вас интересует больше всего, - %MEMэто доля общего объема доступной памяти, используемая этим процессом. VIRTдает виртуальную память, занимающую место процесса, из которой RESв настоящее время находится только физическая память (остальная часть выгружается, а в данный момент не отображается в таблице)

Для сортировки по столбцу вы нажимаете F(Shift-F), и экран изменится на следующий

введите описание изображения здесь

как вы можете видеть, нажатие nвыберет сортировку по проценту памяти (нажмите Enter, чтобы вернуться к представлению таблицы). (Существует устаревший ярлык Shift-m, который будет переключать сортировку по памяти при попадании в табличное представление). Вы можете использовать <и >в табличном представлении (shift - и shift-.) Для циклического сортировки столбца.

При просмотре таблицы нажатие на нижний регистр mпереключит представление сводной памяти.введите описание изображения здесь

Примечание: я поэкспериментировал с сортировкой столбцов, поэтому столбцы перетасовывались с первого изображения.

Как и многие утилиты командной строки unix / linux, есть много маленьких хитростей, вещей и скрытых возможностей - top - очень мощный инструмент. Например, вы можете показать несколько таблиц одновременно (скажем, топ-5 вместо топ-20, но для 4-5 различных параметров) - как? Я не знаю, но я случайно дошел до этого, когда делал скриншоты. Можно посвятить целую главу хорошей книги по * nix top, поэтому приведенное выше резюме - всего лишь небольшой учебник, чтобы получить то, что вам нужно знать о своих процессах.

crasic
источник
Crasic, спасибо за ваш ответ, я знаю, что команда top покажет вам: (Mem: 31908592k всего, 31153712k использовано, 754880k свободно), но мне нужно знать, где вся эта память используется.
AlBouazizi
Посмотрите в столбце «% MEM» вверху.
Даниэль Андерссон
@AlBouazizi Top по умолчанию будет сортировать процессы (список под панелью баннера) при нажатии ЦП M(т. Е. Shift-m) прибегнет к списку по использованию памяти.
авария
спасибо за ваши подробные ответы, я узнаю что-то новое ... но все еще не знаю 31 ГБ, используемый какой программой / процессом ..
Еще
@AlBouazizi, какая программа находится в верхней части страницы, когда вы сортируете по использованию памяти?
авария
1

Это выдаст много процессов, которые стоит попробовать.

ps -eo pid,pmem,rss,comm --sort rss
risyasin
источник
Рисьясин, я попробовал твою команду, но не помог с тем, что я смотрю. у меня есть 31 ГБ используемой памяти. Мне нужно знать, кто использовал эту память. Спасибо, как.
AlBouazizi
0

Вы можете использовать следующую команду:

ps ww -eo pid,pcpu,pmem,rss,cmd --sort rss

Поле «rss» указывает на использование памяти

--sort rss - означает сортировку по использованию памяти desc

Ромео
источник