Подешавање локације за депонију Линук језгра

Podesavane Lokacije Za Deponiju Linuk Jezgra



Шта је „Цоре Думп“ у Линуку?

Када процес неочекивано изађе, он често оставља за собом „складиште језгра“ у вашем систему. Постоји релевантна порука која је укључена у ово. Језгро служи као алат за отклањање грешака и представља слику меморије која такође укључује информације за отклањање грешака. Ако сте корисник који не жели да отклања грешке у програму, можете само да избришете језгро:

$ рм језгро

Такође можете да га оставите нетакнутом, јер се старо језгро преписује ако се ново икада избаци. Такође можете да деактивирате дампинг језгра помоћу следеће команде:







$ смањити 0

Можемо да генеришемо дампове језгра на захтев (на пример, преко дебагера) или се могу произвести аутоматски по завршетку. Кернел покреће испис језгра као последицу наглог изласка програма. Они се могу послати неком другом програму (као што је системд-цоредумп) за додатне операције.



Као што обично бива, постоји компромис између прикупљања података ради боље стабилности и решавања проблема и ризика од откривања осетљивих информација из података за отклањање грешака.



Шта ћемо покрити?

У овом чланку ћемо видети како да подесите локацију депонија језгра на Убунту 20.04 ОС. Почнимо сада.





Генерисање Думпа језгра

Хајде да прво видимо како можемо да генеришемо думп језгра. За ово користимо Линук команду килл. Прво пронађите ПИД процеса, а затим пошаљите сигнал за укидање. На пример, хајде да започнемо процес спавања, а затим га убијемо његовим ПИД-ом:

$ спавати 500

$ убити СИГТРАП $ ( дршка спавати )



Сада када сте научили како да генеришете думп језгра, можете га користити у следећим одељцима.

Куда иду?

Думп датотека језгра подразумевано се зове цоре.пид и креира се у радном директоријуму апликације. Овде је пид ИД процеса.

Помоћу алатке улимит можете добити или променити ограничења системских ресурса за тренутну љуску и све шкољке које долазе после ње. Да бисте проверили или конфигурисали ограничење величине основне датотеке, користите следећу команду:

$ смањити

Да бисте избегли разграничење или скраћивање основне датотеке, уверите се да је ограничење глобално постављено на „неограничено“ [1]. Ово се може урадити у /етц/сецурити/лимитс.цонф додавањем следећег реда:

роот - језгро неограничено

* - језгро неограничено

Сада се једноставно одјавите и поново пријавите да би ограничења била примењена на вашу сесију.

Прилагођавање локације депоније језгра

Команда „сисцтл кернел.цоре_паттерн“ или „/проц/сис/кернел/цоре_паттерн“ се обично користи за постављање локације на коју иду думпови језгра.

Унесите следећу команду да бисте видели подешавања за тренутни основни образац:

$ мачка / проц / сис / кернел / цоре_паттерн

Обично ћете овде пронаћи подразумевану вредност наведену као „језгро“.

Коришћење „/проц/сис/кернел/цоре_паттерн“ за постављање локације за испис језгра

Хајде да привремено преусмеримо думпове језгра на нову локацију, рецимо /тмп/думпс/цоре, користећи датотеку „/проц/сис/кернел/цоре_паттерн“ [2] [3]. Сада следите следеће кораке:

Корак 1 . Прво направите директоријум за складиштење дампова језгра:

$ мкдир -п / тмп / Депонија / језгра /

Корак 2 . Дајте потребне дозволе овом директоријуму:

$ цхмод а+к / тмп / Депонија / језгра /

Корак 3 . Сада привремено поставите путању дампања језгра:

$ одјек '/тмп/думп/цорес/цоре' | судо тее / проц / сис / кернел / цоре_паттерн

Опет, глобално поставите ограничење на неограничено.

Овде можемо додати неке друге информације имену датотеке као што је приказано у наставку:

$ одјек '/тмп/думп/цорес/цоре_%е.%п_%т' | судо тее / проц / сис / кернел / цоре_паттерн

Сваки параметар који се овде користи може се дефинисати на следећи начин:

% и: за извршни фајл име

% п: за процес ид или пид.

% т: за додавање временске ознаке

Корак 4 . Затим морамо да променимо датотеку „/етц/сисцтл.цонф“ да бисмо трајно применили претходна подешавања. Отворите ову датотеку:

$ судо нано / итд / сисцтл.цонф

Сада додајте следећу линију овој датотеци:

кернел.цоре_паттерн = / тмп / Депонија / језгра / језгро

Такође, уместо ове линије, можете додати ово:

кернел.цоре_паттерн= '/тмп/думп/цорес/цоре_%е.%п_%т'

То је све што треба да урадимо. Сада генеришите дамп језгра као што је поменуто у одељку „Генерисање дампа језгра“. Након овога, можемо проверити да ли је наша основна датотека генерисана или не:

$ лс / тмп / Депонија / језгра /

Коришћење команде „Сисцтл“ да бисте подесили локацију депоније језгра

Као што је раније поменуто, за исту сврху можемо користити и наредбу сисцтл. Хајде да променимо локацију депоније језгра и формат основне датотеке:

Корак 1 . Направите нови директоријум и дајте потребне дозволе:

$ мкдир -п / тмп / мидумпс

$ цхмод а+рвк / тмп / мидумпс

Корак 2 . Сада само покрените следећу команду:

$ судо сисцтл -ин кернел.цоре_паттерн= / тмп / мидумпс / језгро_ % и. % п_ % т

Корак 3 . Сада, опет, генеришите дамп језгра као што смо урадили раније. Након тога, проверите да ли је основна датотека генерисана или не:

$ лс / тмп / мидумпс /

На Убунту системима, дампови језгра се често шаљу у Аппорт. За системе засноване на Ред Хат-у, може се проследити алатки за аутоматско извештавање о грешкама (АБРТ). У почетку сам се суочио са проблемом у конфигурисању локације депоније језгра, тако да сам морао потпуно да онемогућим Аппорт на Убунту 20.04. Можда, ово може бити случај и са Ред Хатом и другима.

Закључак

У овом чланку смо видели како можемо да прилагодимо локацију депонија језгра на Убунту 20.04 ОС. Дампови језгра могу вам помоћи да схватите шта није у реду, али су страшни због цурења осетљивих података. Дампови језгра треба да буду онемогућени кад год нису потребни и омогућени само када је то апсолутно неопходно. У таквој ситуацији, потврдите да су датотеке безбедно ускладиштене тако да обични корисници не могу да приступе подацима. Штавише, без обзира на вашу одлуку, увек треба да тестирате своју конфигурацију да бисте били сигурни да ради како је предвиђено.

Дампови језгра и подразумеване конфигурације различито се рукују од стране различитих оперативних система. У последње време, већина Линук система је усвојила системд, што је донело нека мања прилагођавања правила. У зависности од тога како је ваш систем конфигурисан, можда ћете морати да тражите дампове језгра.