Контроль за системными ресурсами


Дата: 09 апреля 2010





Очень часто необходимо немного администрировать свою систему и следить за использованием системных ресурсов компьютера. В linux имеется огромное количество утилит для этой цели. Прочитав и запомнив команды из этой статьи вы сможете всегда держать свою систему в хорошем состоянии следя за процессами и спецификой их работы. Сейчас мы не будет говорить об логах и конфигах, а разберем основные команды для мониторинга системы.

Загруженность оперативной памяти.
С помощью команды free вы можете следить за оперативной памяти.
Пример:
subsanek@subsanek-laptop:~$ free
total used free shared buffers cached
Mem: 1018060 974532 43528 0 58812 547568
-/+ buffers/cache: 368152 649908
Swap: 3759168 0 3759168

Как видно из вывода команды, в первом столбце отображается общее количество памяти в килобайтах, во втором использованная память (часто не показывает реальных данных, включая в результат буфер),третий столбец дает количество свободной памяти (опять же без поправки на буфер). Строка начинающаяся с -/+ buffers/cache: дает поправку на использование буфера выводя реальные значения использованной и свободной памяти.

Информация об файловой системе.
Довольно часто необходимо узнать структуру файловой системы. Для этого есть команда df
Пример:
subsanek@subsanek-laptop:~$ df
Файловая система 1K-блоков Исп Доступно Исп% смонтирована на
/dev/sda6 11100384 6483232 4053276 62% /
udev 509028 300 508728 1% /dev
none 509028 24 509004 1% /dev/shm
none 509028 96 508932 1% /var/run
none 509028 0 509028 0% /var/lock
none 509028 0 509028 0% /lib/init/rw
/dev/sda7 20982900 7519488 12397520 38% /home
/dev/sda9 5114112 2510508 2343816 52% /media/disk
/dev/sdb1 3913188 1273516 2639672 33% /media/flashkard

Так-же для этой цели можно применять команду fdisk -l от суперпользователя. В отличии от df fdisk -l позволяет увидеть намного больше информации, но требует полномочий суперпользователя.

Просмотр используемых процессов.
Для просмотра процессов есть команды ps aux и top Но это практически разные команды. ps выводит информацию об процессах и завершает работу, а top выводит еще информацию об использовании процессора, оперативной памяти и все это делает в режиме реального времени обновляя информацию до тех пор пока не завершите работу top стандартной комбинацией Ctrl+C
Пример:
root@subsanek-laptop:/home/subsanek# top
top - 17:15:53 up 2:46, 2 users, load average: 0.06, 0.09, 0.09
Tasks: 148 total, 3 running, 145 sleeping, 0 stopped, 0 zombie
Cpu(s): 19.9%us, 35.0%sy, 0.0%ni, 43.2%id, 1.5%wa, 0.0%hi, 0.3%si, 0.0%st
Mem: 1018060k total, 944196k used, 73864k free, 58172k buffers
Swap: 3759168k total, 0k used, 3759168k free, 516236k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1799 subsanek 20 0 119m 38m 23m S 2.0 3.9 2:50.58 ktorrent
1 root 20 0 2532 1524 1128 S 0.0 0.1 0:00.96 init
2 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root RT -5 0 0 0 S 0.0 0.0 0:00.00 migration/0
4 root 15 -5 0 0 0 S 0.0 0.0 0:01.03 ksoftirqd/0
5 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
6 root 15 -5 0 0 0 R 0.0 0.0 0:00.28 events/0
7 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 cpuset
8 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 khelper
9 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 netns
10 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 async/mgr
11 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kintegrityd/0
12 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kblockd/0
13 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kacpid
14 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kacpi_notify
15 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 kacpi_hotplug
16 root 15 -5 0 0 0 S 0.0 0.0 0:00.72 ata/0
17 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 ata_aux

У ps есть еще несколько вариаций использования: ps axjf -выводит более подробную информацию с древом процессов, а ps U имя_пользователя выведет только процессы принадлежащие конкретному пользователю.

Список открытых файлов.
Получить список открытых файлов можно командой lsof | less или для конкретного пользователя lsof -u имя_пользователя | less
Можно получить список пользователей для заданного файла: lsof файл и отобразить сведения о процессах для конкретной программы lsof -c имя_программы | less

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

Завершение не нужного процесса.
Команды top и ps дают id процесса который можно использовать для убийства нежелательного (или вообще зависшего процесса). Для этой цели есть команда kill pid_процесса Эта команда завершит работу процесса.
Возможные опции (сигналы):
-HUP завершить процесс,
-TERM "мягкое" завершение,
-KILL принудительное завершение.
По умолчанию команда использует "мягкое" завершение.

Комментарии:
Автор: marlock,   дата: 09 апреля 2010   20:11:48
а где можно посмотреть дату установки системы?
Автор: subsanek,   дата: 09 апреля 2010   20:53:53
marlock, обычно дата установки системы равна дате создания файла /etc/lsb-release которую можно посмотреть через файловый менеджер или командой ls -l /etc/lsb-release от суперпользователя. Точно имя файла может отличаться от дистрибутива, в debian по крайней мере так)
Автор: Soft,   дата: 10 апреля 2010   23:14:32
Не соглашусь с тем что часто приходится копаться в системных процессах и следить за памятью... в лине это нужно только в самых экстренных случаях.

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

так что по этой статье чисто для интереса можно посмотреть что там за ширмой тварится... практической значимости маловато, но все равно полезно знать, что б потом знать что почитать.




 
Добавить комментарий:
Имя:*
e-mail:
Комментарий:*
Введите число 85*


Архив статей:
Март 2017
Апрель 2016
Март 2016
Октябрь 2013
Сентябрь 2013
Май 2013
Март 2013
Ноябрь 2012
Июль 2012
Июнь 2012
Апрель 2012
Март 2012
Февраль 2012
Апрель 2011
Март 2011
Февраль 2011
Январь 2011
Декабрь 2010
Ноябрь 2010
Октябрь 2010
Сентябрь 2010
Август 2010
Июль 2010
Июнь 2010
Май 2010
Апрель 2010
Март 2010

Случайные:
K3b vs NeroLinux 4 или чем писать CD,DVD,Blu-ray в linux

gnome-globalmenu или глобальное меню, как в MacOS

Объединения команд и обработка выходных данных в shell

kdenlive - изучаем базовые приемы работы с видео редактором

Небольшой мануал по послеустановочной доводке Slackware 13.0

UNetbootin - создание загрузочной флешки в linux





Коллеги:    все
 Linux для всех

Наши баннеры:
linuxnow.ru
linuxnow.ru
Установить баннер