1. top и htop
top - незаменимая программа, которая есть в каждом дистрибутиве. Показывает активность процессов в системе,
нагрузку на процессор, использование памяти и т.д.
Наиболее используемые мною хоткеи:
h - справкаZ - настройка цветов
A - выводит наиболее прожорливые процессы
u - показать процессы определённого пользователя
O - выбор метода сортировки
k - убить процесс
q - выход из программы.
htop - это продвинутый top, и информация выводимая им более удобна для восприятия.
2. dstat
Одна из моих любимых утилит. Это vmstat, iostat, netstat, nfsstat и ifstat в одном флаконе.Пара опций, которыми я чаще всего пользуюсь:
-c цпу статистика
-d статистика по жёсткому диску
-m использование памяти
-n использование сети
3. ps
очень полезная команда. Делает снимок протекающих в данный момент времени в системе процессов.Если к примеру нужно убить подвешивающий систему процесс как можно быстрее, а для этого нужно узнать его PID, то можно сделать так:
ps -A | grep -i javaИ эта команда нам выдаст:
7789 ? 00:05:44 javaНу а потом с чистым сердцем:
kill -9 7789Списко опций прямо-таки гигантский, поэтому:
man ps
4. du и df
Эти команды незаменимы, когда требуется уточнить чем же занято всё свободное место.Для получения размера папки:
du -sh ~/Pictures/Чтобы вывести размеры всех файлов и каталогов в текущем каталоге:
du -ahКоманда df выводит отчёт об использовании дискового пространства.
df -hTНо гораздо легче и удобнее использовать утилиту ncdu написанную с использованием ncurses:
5. iptraf
соединениям.
6. lsof (glsof)
Например, чтобы узнать какой процесс или процессы использует данный файл, нужно просто набрать:
lsof /var/log/messages.logВывести список открытых портов и процессов, которые эти порты используют:
lsof -iКакие файлы в определённой папке используются в данный момент (пригодится если к примеру не можете отмонтировать флешку):
lsof +D /media/diskНу и напоследок, чтобы узнать, какие файлы читает нужный вам процесс:
lsof -c <процесс>Под lsof есть и графическая обёртка glsof, про которую я совсем недавно узнал. (Хоть это к теме и не относится, но скрин выложу)
7. ccze
Интересно было бы услышать кто ещё что использует.
Спасибо большое. Открыл для себя ncdu.
ОтветитьУдалитья из перечисленного часто запускаю ps ax, или htop, чтобы потом сделать kill №№№ :)
ОтветитьУдалитьvmstat для мониторинга свопа, количества переключений контекста, утилизации процессора, характера нагрузки (io/cpu)
ОтветитьУдалитьpidstat для исследования дисковой нагрузки (какой процесс в каких объёмах) и памяти (swap, изменение rss) на каждый процесс
mpstat для осознания, сколько тратится времени каждого процессора/ядра на irq и softirq
iostat для исследования дисковой нагрузки (общесистемно)
sar для сравнения нагрузок в течении дня/месяца (процесоры, память,своп)
ifstat для просмотра утилизации полосы на каждом интерфейсе.
Aнтон, большое пожалуйста
ОтветитьУдалитьihanick, надеюсь всё это вы не на домашней машине проделываете?))
ОтветитьУдалитьatop - лучший из top'ов :)
ОтветитьУдалитьа я привык к старому доброму top, но atop обязательно попробую
ОтветитьУдалитьСпасибо огромное! =)
ОтветитьУдалитьогромное пожалуйста ))
ОтветитьУдалитьДобрый день. замечательная статья, спасибо огромное:-)... Интересный сайт хорошо описали
ОтветитьУдалитьпожалуйста. как могу))
ОтветитьУдалитьПо поводу использования ps для поимки pid'а процесса: почему бы не использовать pidof?
ОтветитьУдалитьА если не известно точное имя процесса - pgrep
Ну так просто удобней делать так:
kill -KILL `pidof java`
Хотя и тут можно упростить: pkill -KILL java, killall -KILL java
pgrep и pkill понимают wilcdcards и паттерны.
спасибо за комментарии, я на самом деле и не знал за эти команды. Действительно очень удобно!
ОтветитьУдалить