Skip navigation

Още полезни Linux команди за системни администратори

2871 прочитания, 0

Продължаваме да попълваме списъка от полезни администраторски команди в Linux. След top, vmstat, ps и останалите идва ред на:

6. free

Командата free дава информация за свободната и заета физическа и swap памет в системата, както и буферите, които ползва ядрото.

user@user: ~$ free -l -s 5

Статистика на паметта в системата с командата free.
Статистика на паметта в системата с командата free. Снимка: IDG.bg, CreativeCommons



С горните опции се указва на free да изведе детайлна статистика на low и high паметта (двата региона във виртуалното адресно пространство на Linux). Информацията трябва да се обновява на всеки 5 секунди.

Други опции на командата включват:

  • -b, -k, -m или -g: указва в какви метрики да се извежда паметта - съответно байтове, килобайтове, мегабайтове или гигабайтове 
  • -t: извежда общото количество памет (RAM + swap) 
  • -c: статистиката се обновява N пъти, след което спира да се извежда

7. iostat

iostat служи за мониторинг на натоварването на системните I/O устройства. Отчита го съпоставя времето, през което те са активни, спрямо средната скорост на трансфер. Докладите, които се генрират с тази команда могат да бъдат полезни при преконфигуриране на системата за по-добъро балансиране на входно/изходното натоварване между физическите дискове.

user@user: ~$ iostat -x -n

Статистика за входно/изходните заявки с командата iostat.
Статистика за входно/изходните заявки с командата iostat. Снимка: IDG.bg, CreativeCommons



Пълен списък на флаговете в резултата, както и опциите на iostat може да се види с командата user@user: ~$ man iostat или тук.

8. sar

Командата sar се използва за събиране, докладване и съхранение на информация за дейността на системата. Резултата от нея може да се запише в произволен файл с опцията -o, следвана от името на файла. Ако то се изпусне, sar използва стандартният дейта файл в /var/log/sa/saXX, където XX отговаря на текущия ден.

За да може да се използва sar, трябва да е стартиран sysstat. Това става с командата:

user@user: ~$ sudo /etc/init.d/sysstat start

Ядрото на Linux поддържа вътрешни броячи, с които следи заявките, времето за изпълнение, натоварването на процесора за определен интервал или за целия период на активност на систмата и др. На тяхна база sar изчислява най-разнообразни метрики и съотношения на различните характеристики и представя цялостна картина за работата на системата.

Така администраторите лесно могат да открият къде и кога се се получава концентриране на трафика (т.нар. bottleneck), както и да намерят решение за справяне с проблема.

user@user: ~$ sar

Доклади за състоянието на системата със sar.
Доклади за състоянието на системата със sar. Снимка: IDG.bg, CreativeCommons



Колоните %user и %system показват времето, през което CPU се използва в потребителски и системен режим. %iowait дава времето, през което процесора изчаква завършването на входно/изходни заявки, а %idle е индикация за полезната работа на процесора. Двете характеристики са полезни при анализ на работата на системата - %idle близък до 0 показва “запушване” на CPU, докато по-високи стойности на %iowait говорят за незадоволителна работа на дисковете.

Допълнителна информация може да се получи с опцията -q, която дава дължината на стартираните заявки, общия брой процеси, както и натоварването за предишните 1, 5 и 15 минути.

user@user: ~$ sar -q

9. mpstat

Командата mpstat дава статистика за всички процесори в системата (полезна е при многопроцесорни системи). Средното за всеки от тях може да се види с:

user@user: ~$ mpstat -P ALL

Натовареност на процесорите в системата с mpstat
Натовареност на процесорите в системата с mpstat. Снимка: IDG.bg, CreativeCommons



Допълнително може да се укажат няколко доклада, генерирани през определен период от време (в случая 2 доклада през 3 секунди). Метриките, които се извеждат, отговарят на:

  • CPU: номер на процесора (0 отговаря на първият). Първият ред (CPU all) показва средната статистика за всички процесори 
  • %user: процента на използване на процесора в потребителски режим (приложения и заявки) 
  • %nice: като горното, но за процеси със зададен nice приоритет на изпълнение (висока стойност на nice отговаря на по-нисък приоритет) 
  • %system: процента на използване на процесора в системен режим (ядрото). Тук не се включва времето за обслужване на прекъсванията 
  • %iowait: както вече беше споменато, това е времето, през което дисковете обработват I/O заявки, а процесорите са в режим на изчакване 
  • %irq: процента от работата на процесора, отишъл за обработване на прекъсванията на ядрото 
  • %soft: подобно на горното, но за обслужване на softriqs (софтуерни пркъсвания) 
  • %idle: подобно на %iowat, но без I/O заявки за обработване

10. pmap

С тази команда се показва карта на паметта за даден процес в определен период от време. Полезна е, когато трябва да се установи къде се получава memory bottleneck, за да може да се отстрани бързо.

user@user: ~$ pmap pid

Карта на паметта за даден процес с pmap.
Карта на паметта за даден процес с pmap. Снимка: IDG.bg, CreativeCommons



На мястото на pid в горната команда се поставя номера на процеса, за който трябва да се получи детайлна картина на разпределението на паметта. В случая това е номера на програмата Amarok (ако не знаете какво е pid-то на даден процес, можете да използвате командата top, разгледана в предишната статия).

С опцията -x се получава детайлна картина на разпределението на паметта, типа мапинг за всеки запис, количеството заета памет, не-споделената или заключената памет, както и режима на използване.
(10.02.2011)

КОМЕНТАРИ

Трябва да сте регистриран потребител, за да коментирате статията
"Още полезни Linux команди за системни администратори"



    

© Ай Си Ти Медиа ЕООД 1997 - 2012 съгласно общи условия за ползване