Kreiptis pagalbos

Atsakome el. paštu, dažniausiai per dvi dienas.

Google reCAPTCHA tikrina šį pateikimą, kad apsaugotų nuo piktnaudžiavimo; duomenys siunčiami Google. Scenarijus įkeliamas tik atvėrus šią formą.

← Visi įrašai

870 MB failas tmpfs ir po jo sekęs paleidimas iš naujo

Apie turinį ir jo patikrą

Šiame straipsnyje

Rugpjūčio 28 d. 19:35 išpakavau vienos dienos prieigos žurnalą į /tmp dviem dienoms perskaityti vienu perėjimu. 19:44 kompiuteris pasileido iš naujo.

ką kompiuteris turi ir ką paėmė vienas failas 3 794 MB atminties, iš kurios /tmp gali užimti 1 900 19:35 į jį įrašyta 870 MB 19:35 — dienos žurnalas išpakuotas į /tmp dviem dienoms skaityti kartu 19:44 — SSH nebeatsako, svetainei reikia 11 s vietoj 0,1 s 19:47 — kompiuteris grįžo, veikimo laikas 0 minučių MariaDB pradeda su atkūrimu po gedimo: išjungimas nebuvo tvarkingas žurnalas neišlieka paleidus iš naujo, todėl to neįmanoma įrodyti — tik datuoti

Nepatikrinta savybė

Šiame kompiuteryje /tmp yra tmpfs. Tai atmintis. df rodo 1,9 GB laisvos vietos ir nieko nesako, iš kur ji atsiranda, o kompiuteris iš viso turi 3 794 MB.

Taigi 870 MB failas pateko į ketvirtadalį mažo serverio atminties, kai jis dar aptarnavo svetainę ir vykdė kito žmogaus bandomąją užduotį. Po devynių minučių SSH nustojo priimti ryšius, svetainė atsakė per 11 sekundžių vietoj 0,1, o netrukus grįžo su nuliu minučių veikimo laiko.

Ką galima ir ko negalima pasakyti

MariaDB pradėjo atkūrimą po gedimo – vadinasi, išjungimas buvo netvarkingas. Toliau sąžiningas atsakymas toks: to neįmanoma įrodyti, nes šio kompiuterio žurnalas laikinas ir neišlieka paleidus iš naujo, o nėra kern.log su atminties trūkumo eilute. Įrodymai – laiko žyma devyniomis minutėmis prieš įvykį ir failas netinkamoje vietoje.

Verta tai užrašyti kaip yra, o ne kaip išvadą. «Užpildė atmintį, ir branduolys pasidavė» – įtikinama istorija. Bet ne išmatuota, o skirtumas čia svarbesnis už užtikrintumą.

Kokia buvo žala

Nieko, ką pavyko rasti. CHECK TABLE penkioms svarbiausioms lentelėms grąžino OK, eilučių skaičiai nepasikeitė, skaičiavimas tą pačią dieną toliau registravo, o visos šešiolika suplanuotų užduočių liko nepažeistos. Svetainė vėl atsakė per 0,14 sekundės.

Vienas dalykas prarastas: ilgai veikianti kitos sesijos užduotis tame pačiame kompiuteryje. Ji neturėjo nieko bendra su šiuo darbu ir nutrūko kartu su viskuo kitu – tai sutrikimo dalis, apie kurią jokia vietinė patikra nepraneša.

Iš to kilusi taisyklė

Žurnalo failai čia siekia nuo 700 iki 900 MB per dieną. Išpakuoti vieną į /tmp reiškia padėti ketvirtadalį kompiuterio atminties ten, kas atrodo kaip diskas ir elgiasi kaip RAM.

Dideli tarpiniai failai dedami į /var/tmp arba namų katalogą – abu yra diske. Dar geriau jų visai neišpakuoti: zcat -f file.gz | awk ... skaito srautu ir nereikalauja paskirties vietos. Kiekvienas vėlesnių įrašų matavimas atliktas taip.

Bendroji mintis

Failų sistema praneša, kiek turi vietos. Ji nepraneša, iš ko ta vieta padaryta, o abu klausimai turi skirtingus atsakymus būtent sistemose, kur tai svarbiausia.

Patikra – viena eilutė, praleista todėl, kad failas buvo «laikinas». Apibūdinimas „laikinas“ buvo teisingas. Tai buvo ne ta savybė, apie kurią reikėjo galvoti.

Reklama