Иако је Линук веома поуздан, мудри системски администратори би требали пронаћи начин да у сваком тренутку држе на оку понашање и употребу система. Обезбеђивање непрекидног рада што је ближе 100% што је више могуће, а доступност ресурса су критичне потребе у многим окружењима. Испитивање прошлог и тренутног статуса система омогућиће нам да предвидимо и највероватније спречимо могуће проблеме.
Представљамо програм сертификације Линук Фоундатион
У овом чланку представићемо списак неколико алата који су доступни у већини дистрибутивних канала за проверу статуса система, анализу прекида и решавање проблема који су у току. Конкретно, од безброј доступних података, фокусираћемо се на ЦПУ, складишни простор и коришћење меморије, основно управљање процесима и анализу дневника.
У Линуксу постоје 2 добро познате команде које се користе за проверу коришћења простора за складиштење: дф и ду.
Први, дф (што значи слободан диск), обично се користи за извештавање о укупном коришћењу простора на диску по систему датотека.
Без опција, дф извештава о коришћењу простора на диску у бајтовима. Са -х заставица ће приказати исте податке користећи МБ или ГБ. Имајте на уму да овај извештај такође укључује укупну величину сваког датотечног система (у 1-К блоковима), слободне и доступне просторе и тачку монтирања сваког уређаја за складиштење.
# дф. # дф -х.
То је свакако лепо - али постоји још једно ограничење које може учинити систем датотека неупотребљивим, а понестаје иноде. Све датотеке у систему датотека су пресликане у иноде који садржи његове метаподатке.
# дф -хТи.
можете видети количину коришћених и доступних инода:
Према горњој слици постоје 146 коришћени инодес (1%) ин /хоме, што значи да и даље можете да креирате 226К датотека у том систему датотека.
Имајте на уму да можете остати без простора за складиштење много пре него што вам понестане инода, и обрнуто. Из тог разлога морате пратити не само искоришћеност складишног простора, већ и број инода које користи систем датотека.
Користите следеће команде да бисте пронашли празне датотеке или директоријуме (који заузимају 0Б) који користе иноде без разлога:
# финд /хоме -типе ф -празан. # финд /хоме -типе д -празан.
Такође, можете додати -брисати означите на крају сваке команде ако желите и да избришете те празне датотеке и директоријуме:
# финд /хоме -типе ф -емпти --делете. # финд /хоме -типе ф -празан.
Претходна процедура је избрисала 4 датотеке. Проверимо поново број коришћених / доступних чворова поново у / хоме:
# дф -хТи | греп хоме.
Као што видите, постоје 142 сада се користи инодес (4 мање него раније).
Ако је употреба одређеног система датотека већа од унапред дефинисаног процента, можете га користити ду (скраћено од употребе диска) да бисте сазнали које датотеке заузимају највише простора.
Пример је дат за /var, који се, као што видите на првој слици изнад, користи са својих 67%.
# ду -сцх /вар /*
Белешка: Да се можете пребацити на било који од горе наведених поддиректоријума да бисте сазнали шта се тачно налази у њима и колико свака ставка заузима. Затим можете користити те податке за брисање неких датотека ако нису потребне или за повећање величине логичког волумена ако је потребно.
Прочитајте такође
Класичан алат у Линуку који се користи за свеобухватну проверу искоришћености процесора / меморије и управљања процесима је топ цомманд. Осим тога, горе приказује приказ система у реалном времену у реалном времену. Постоје и други алати који се могу користити у исту сврху, као нпр хтоп, али ја сам се задовољио врхом јер је инсталиран у било којој дистрибуцији Линука.
Да бисте започели врх, једноставно унесите следећу команду у своју командну линију и притисните Ентер.
# врх.
Хајде да испитамо типичан врхунски излаз:
У редовима 1 до 5 приказане су следеће информације:
1. Тренутно време (20:41:32 поподне) и продужено време рада (7 сати и 41 минут). Само је један корисник пријављен на систем, а просечно оптерећење током последњих 1, 5 и 15 минута, респективно. 0,00, 0,01 и 0,05 указују на то да је у тим временским интервалима систем био у мировању 0% времена (0,00: није било процеса чекајући ЦПУ), тада је био преоптерећен за 1% (0,01: просечно 0,01 процеса је чекало ЦПУ) и 5% (0.05). Ако је мањи од 0 и мањи број (на пример 0,65), систем је био у мировању 35% током последњих 1, 5 или 15 минута, у зависности од тога где се појављује 0,65.
2. Тренутно је у току 121 процес (комплетан списак можете видети у 6). Само један од њих ради (у овом случају врх, као што можете видети у колони %ЦПУ), а преосталих 120 чека у позадини, али „спава“ и остаће у том стању док их не позовемо. Како? Ово можете да проверите отварањем мискл упита и извршите неколико упита. Приметићете како се повећава број покренутих процеса.
Алтернативно, можете отворити веб прегледач и отићи на било коју страницу коју сервисира Апацхе и добићете исти резултат. Наравно, ови примери претпостављају да су обе услуге инсталиране на вашем серверу.
3. ус (временски активни кориснички процеси са непромењеним приоритетом), си (временски покренути језгри процеси), ни (временски активни кориснички процеси са измењеним приоритетом), ва (време чекања на И/О завршетак), здраво (време проведено у сервисирању хардверских прекида), си (време проведено у сервисирању софтверских прекида), ст (време које је хипервизор украо из тренутног вм -а - само у виртуелизованом окружења).
4. Употреба физичке меморије.
5. Замените коришћење простора.
Такође можете да користите за проверу РАМ меморије и замену бесплатно команда.
# бесплатно.
Наравно, можете користити и -м (МБ) или -г (ГБ) пребацује се да приказује исте информације у читљивом облику:
# бесплатно -м.
У сваком случају, морате бити свјесни чињенице да језгро задржава што је могуће више меморије и чини је доступном процесима када то затраже. Посебно, „-/+ бафери/кеш меморија”Ред приказује стварне вредности након што се узме у обзир ова И/О кеш меморија.
Другим речима, количина меморије коју користе процеси и количина доступна другим процесима (у овом случају, 232 МБ користи и 270 МБ доступни, респективно). Када процесима буде потребна ова меморија, језгро ће аутоматски смањити величину И/О кеша.
Прочитајте такође: 10 Корисна „бесплатна“ команда за проверу употребе Линук меморије
У сваком тренутку на нашем Линук систему раде многи процеси. Постоје два алата које ћемо користити за помно праћење процеса: пс и пстрее.
Помоћу -е и -ф опције комбиноване у једну (-еф) можете навести све процесе који су тренутно покренути на вашем систему. Овај излаз можете пренети у друге алате, као што је греп (како је објашњено у Део 1 серије ЛФЦС) да бисте сузили излаз на жељене процесе:
# пс -еф | греп -и лигње | греп -в греп.
Горе наведени списак процеса приказује следеће информације:
власник процеса, ПИД, родитељски ПИД (родитељски процес), искоришћеност процесора, време почетка команде, тти (? означава да је то демон), кумулирано време процесора и команда повезана са процесом.
Међутим, можда вам не требају све те информације и желели бисте да покажете власнику процеса, команду која га је покренула, његове ПИД и ППИД, и проценат меморије коју тренутно користи - тим редоследом и сортирајте према употреби меморије у опадајућем редоследу (имајте на уму да је пс подразумевано сортиран према ПИД).
# пс -ео корисник, цомм, пид, ппид,%мем --сорт -%мем.
Тамо где знак минус испред %мем означава сортирање према опадајућем редоследу.
Ако из неког разлога процес почне да узима превише системских ресурса и то ће вероватно угрозити целокупан процес функционалности система, желите да зауставите или паузирате његово извршавање преношењем једног од следећих сигнала помоћу тхе убити програм за то. Други разлози зашто бисте размислили о овоме су ако сте започели процес у првом плану, али желите да га паузирате и наставите у позадини.
Назив сигнала | Број сигнала | Опис |
СИГТЕРМ | 15 | Љубазно убијте процес. |
СИГИНТ | 2 | Ово је сигнал који се шаље када притиснемо Цтрл + Ц. Има за циљ да прекине процес, али га процес може занемарити. |
СИГКИЛЛ | 9 | Овај сигнал такође прекида процес, али то чини безусловно (користите пажљиво!) Пошто процес не може да га игнорише. |
СИГХУП | 1 | Скраћено од „Прекини везу“, овај сигнал упућује демоне да поново прочитају своју конфигурацијску датотеку без заустављања процеса. |
СИГТСТП | 20 | Паузирајте извршавање и сачекајте спремни за наставак. Ово је сигнал који се шаље када откуцамо комбинацију тастера Цтрл + З. |
СИГСТОП | 19 | Процес је паузиран и не привлачи више пажње из циклуса ЦПУ -а док се поново не покрене. |
СИГЦОНТ | 18 | Овај сигнал говори процесу да настави са извршавањем након што прими СИГТСТП или СИГСТОП. Ово је сигнал који љуска шаље када користимо команде фг или бг. |
Када нормално извршавање одређеног процеса подразумева да се излаз неће слати на екран док је трчање, можда ћете желети да га покренете у позадини (додајући знак & на крају команда).
име_процеса &
или,
Када почне приказивати у првом плану, паузирајте га и пошаљите у позадину са
Цтрл + З.
# килл -18 ПИД.
Имајте на уму да свака дистрибуција пружа алате за љубазно заустављање / покретање / поновно покретање / поновно учитавање уобичајених услуга, као што су услуга у системима заснованим на СисВ-у или системцтл у системима заснованим на системд.
Ако процес не реагује на те помоћне програме, можете га насилно убити тако што ћете му послати сигнал СИГКИЛЛ.
# пс -еф | греп апацхе. # килл -9 3821.
Када је дошло до било каквог прекида у систему (било да је у питању нестанак струје, хардверски квар, планирани или непланирани прекид процеса или било каква абнормалност), евиденције у /var/log ваши су најбољи пријатељи да утврде шта се догодило или шта би могло бити узрок проблема са којима се суочавате.
# цд /вар /лог.
Неке од ставки у /var/log су обичне текстуалне датотеке, друге су директоријуми, а треће су компримоване датотеке ротираних (историјских) дневника. Желећете да проверите оне са речју грешка у имену, али преглед осталих може такође добро доћи.
Замислите овај сценарио. Ваши ЛАН клијенти не могу да штампају на мрежним штампачима. Први корак у решавању ове ситуације ће бити /var/log/cups именик и погледајте шта се тамо налази.
Можете користити Реп наредба за приказ последњих 10 редова датотеке еррор_лог, или таил -ф еррор_лог за преглед дневника у реалном времену.
# цд/вар/лог/чаше. # лс. # реп еррор_лог.
Горњи снимак екрана пружа неке корисне информације за разумевање шта би могло бити узрок вашег проблема. Имајте на уму да праћење корака или исправљање неисправности процеса и даље можда неће решити свеукупни проблем, али ако се навикнете Од самог почетка да проверите дневнике сваки пут када се појави проблем (био локални или мрежни) дефинитивно ћете бити с десне стране трацк.
Иако хардверски кварови могу бити тешки за решавање проблема, требало би да проверите дмесг и евиденције порука и греп за повезане речи на хардверском делу за који се претпоставља да је неисправан.
Слика испод је преузета из /var/log/messages након тражења речи грешка помоћу следеће команде:
# мање/вар/лог/мессагес | греп -и грешка.
Видимо да имамо проблем са два уређаја за складиштење: /dev/sdb и /dev/sdc, што заузврат изазива проблем са низом РАИД.
У овом чланку смо истражили неке од алата који вам могу помоћи да увек будете свесни укупног статуса вашег система. Осим тога, морате се уверити да су ваш оперативни систем и инсталирани пакети ажурирани на најновије стабилне верзије. И никада, никада, не заборавите да проверите дневнике! Тада ћете кренути у правом смеру да пронађете коначно решење за било која питања.
Слободно оставите своје коментаре, сугестије или питања - ако их имате - користећи доњи образац.