Mājas lapa » » Cietā diska monitors Script bezgalīgajiem Linux serveriem

    Cietā diska monitors Script bezgalīgajiem Linux serveriem

    Mūsdienu cietajiem diskiem ir iekšējais mehānisms, ko sauc par S.M.A.R.T. caur kuru ir iespējams uzzināt, kad cietais disks drīz neizdosies. Vai nebūtu jauki, ja serveris nosūtītu jums e-pastu pirms šādas kļūdas?

    Pārskats

    Programmas, piemēram, “mdadm” (programmatūras RAID pārvaldībai) un “Palimpsest Disk Utility” (lieto Ubuntu LiveCD), izmantojiet informāciju S.M.A.R.T, lai informētu jūs, kad disks gatavojas vai ir neveiksmīgs. Tomēr bez galvas servera (bez GUI) nav pakalpojuma, kas jūs informēs par vēl neizskatīto lietu, pirms nav par vēlu. Turklāt, kā jūs to zinātu, neievietojot manuāli serverī?

    Šis skripts, kad tas tiek palaists reizi dienā ar cron, brīdinās, ja kāds no sistēmas cieto disku sliktajiem sektoriem ir sasniedzis ierobežojumu, kas apzināti ir zemāks par “diska ir slikts” slieksnis, un nosūtiet brīdinājumu mašīnas administratoram.

    Priekšnosacījumi un pieņēmumi

    • Jūs jau esat iestatījis servera e-pasta atbalstu, izmantojot “Kā iestatīt e-pasta brīdinājumus par Linux” rokasgrāmatu.
    • Jūs izmantojat Debian balstītu sistēmu.
    • Jūs neizmantojat * aparatūras RAID kontrolieri.
    • Jūs redzēsiet, ka es izmantoju VIM kā redaktora programmu, tas ir tikai tāpēc, ka esmu pieradis pie tā ... jūs varat izmantot jebkuru citu redaktoru, kuru vēlaties.

    * Tā kā ir ļoti iespējams, ka aparatūras RAID kontrolieris bloķē sistēmas piekļuvi šai informācijai.

    Uzstādīt

    Uzstādiet „smartmontools” paketi, kurā ir redzama cietā diska kontrollera informācija par S.M.A.R.T un tiek parādīta mums.

    sudo aptitude instalē smartmontools

    Izveidojiet monitora skriptu:

    sudo vim /root/smart-monitor.sh

    Padariet to par saturu:

    #! / bin / bash
    ######## E-pasta funkcija ########
    email_admin_func ()

    echo "To: [email protected]"> $ temp_email_file
    echo "From: [email protected]" >> $ temp_email_file
    echo "Temats: S.M.A.R.T monitora slieksnis pārkāpts" >> $ temp_email_file
    echo "" >> $ temp_email_file
    echo -e $ 1 >> $ temp_email_file
    / usr / sbin / ssmtp -t < $temp_email_file
    atbalss "Nosūtīt e-pastu administratoram"

    smartc_func ()

    / usr / sbin / smartctl -A / dev / $ 1 grep Reallocated_Sector_Ct | tr -s "| cut -d" -f11

    ######## Funkciju beigas ########

    ######## Iestatiet darba parametru ########
    temp_email_file = / tmp / smart_monitor.txt
    allow_threshold = 5 # iestatiet slikto sektoru skaitu, kurus vēlaties dzīvot, ieteicams 5.

    ######## Dzinējs ########
    i i sda sdb; do # Pievienojiet vai atņemiet disku nosaukumus no šī saraksta atbilstoši jūsu iestatījumiem.
    ja [["'smartc_func $ i'" -ge $ allow_threshold]]; tad
    echo Administratora sūtīšana pa e-pastu
    email_admin_func "Viens no HD" uz "saimniekdatora nosaukums" ir sasniedzis augšējo sliekšņa robežu !!! nSlimība tika iestatīta uz: $ allow_threshold un $ i diska statuss bija: "" smartc_func $ i '""
    fi
    izdarīts

    Galvenie norādāmie punkti ir:

    • E-pasta funkcija - iestatiet atbilstošu informāciju, piemēram, mašīnas nosaukumu un administratora e-pastu.
    • Atļautais slieksnis - iestatiet šo parametru tā, ko jūs uzskatāt par piemērotu, esmu izmantojis 5, jo “servera kategorijas” cieto disku ierobežojums, kas tika izmantots, bija 10 gadi. līdz 140).
    • Iestatiet ierīces, kuras vēlaties kontrolēt, pielāgojot disku nosaukumu uzskaiti cilpā “for”. Pašlaik ir iekļauti divi diski (sda & sdb), tāpēc pielāgojiet iestatījumus. Jūs varat iekļaut visus jūsu diskus vai tikai dažus, ja jums kāda iemesla dēļ ir jāizslēdz disks.

    * manā sākotnējā iestatījumā pirmais disks bija zibatmiņas disks, tāpēc tās informācijas lasīšana, ja vien iespējams, nav ļoti noderīga.

    Veiciet skripta izpildi:

    sudo chmod + x /root/smart-monitor.sh

    Iestatīšana ir veikta.

    Plānojiet palaist skriptu automātiski

    Mēs vēlamies, lai skripts darbotos automātiski, lai mēs tam izveidotu jaunu Cron darbu.
    Kā norādīts „Kā iestatīt e-pasta brīdinājumus par Linux”, jūs varat to izdarīt, ja skripts pats sastopas ar kļūdu, cron automātiski paziņos mums pa e-pastu, tiklīdz tas notiks.

    Atveriet cron darba plānotāju:

    sudo crontab -e

    Pievienojiet to savam saturam:

    0 7 * * * /root/smart-monitor.sh> /tmp/last_smart_monitor_run.log

    Tas iestatīs skriptu katru rītu 7:00.


    Visas jūsu nozares pieder pie mums :)