Proaktif disk durum izleme için smartctl'in kurulumu ve yapılandırılması | INTROSERV
EUR
european

EUR

usa

USD

Turkish Tr
Ex. VAT Ex. VAT 0%

Proaktif disk sağlığı izleme amacıyla smartctl’in kurulumu ve yapılandırılması

Giriş

smartctl, modern depolama sürücülerinde uygulanan S.M.A.R.T. (Kendi Kendini İzleme, Analiz ve Raporlama Teknolojisi) teknolojisiyle çalışmak üzere tasarlanmış, smartmontools paketine ait bir konsol yardımcı programıdır.

Kullanım örnekleri:

  • barındırma şirketlerinin sunucuları;
  • VPS/VDS düğümleri;
  • özel sunucular;
  • dosya sunucuları;
  • yedekleme sistemleri;
  • kurumsal altyapılar.

Çözdüğü görevler:

  • disk bozulmasının erken tespiti;
  • sürücü arızalarının öngörülmesi;
  • veri kaybı riskinin azaltılması;
  • HDD, SSD ve NVMe sağlık durumunun izlenmesinin otomasyonu;
  • disk alt sistemindeki fiziksel sorunların analizi.

Proaktif SMART izleme, gerçek bir disk arızası meydana gelmeden önce sorunu tespit etmenizi sağlar; bu, üretim ortamları için hayati önem taşır.

Gereksinimler ve ön koşullar

Desteklenen işletim sistemleri ve sürümleri

Linux:

  • Debian 10+
  • Ubuntu 18.04 ve üzeri
  • RHEL / AlmaLinux / Rocky Linux 8+
  • CentOS 7 (desteklenir, ancak güncel değildir)
  • FreeBSD 12+

Windows (smartmontools aracılığıyla, sınırlı kullanım)

Aşağıdaki örnekler Linux için verilmiştir.

Gerekli yazılım ve paketler:

  • smartmontools paketi
  • /dev/sdX, /dev/nvmeX erişimi
  • yüklü systemd (smartd için)

Erişim hakları:

  • root ayrıcalıkları gereklidir
  • veya sudo aracılığıyla erişim

Ön kontroller

Sistemdeki disklerin listesini görüntüleme:

lsblk -d -o NAME,MODEL

Genel bakış ve temel kavramlar

Anahtar terimler

  • SMART - yerleşik disk kendi kendine tanılama sistemi
  • Özellikler - durum özellikleri (Reallocated_Sector_Ct, Pending_Sectors vb.)
  • Kendi kendine test - yerleşik sürücü testleri
  • smartctl - SMART yönetimi için CLI yardımcı programı
  • smartd - otomatik izleme arka plan programı

Nasıl çalışır

  1. Disk, istatistikleri bağımsız olarak toplar
  2. smartctl bu verileri okur
  3. smartd, eşik değerlerini ve olayları analiz eder
  4. Sorunlar ortaya çıktığında bildirimler gönderilir

İş akışı mantığı

Disk > SMART özellikleri > smartctl > smartd > günlük / e-posta / izleme

smartctl'nin temel kurulumu ve kullanımı

smartmontools yardımcı programının kurulumu

SMART ile çalışmak, smartctl yardımcı programlarını (disklerle manuel çalışma) ve smartd'yi (arka planda çalışan izleme arka plan programı) içeren smartmontools paketi yüklenmeden mümkün değildir.

Yükleme, dağıtımın standart paket yöneticisi araçları kullanılarak gerçekleştirilir.

Debian / Ubuntu

sudo apt update sudo apt install smartmontools

RHEL / AlmaLinux / Rocky Linux

sudo dnf install smartmontools

Kurulumdan sonra, yardımcı programlar sistemde kullanılabilir hale gelir ve ek bir başlatma işlemi gerektirmeden kullanıma hazırdır.

smartctl'nin sürümünü ve kullanılabilirliğini kontrol etme

İlk adım olarak, yardımcı programın doğru şekilde kurulduğunu ve sistemde mevcut olduğunu doğrulamanız önerilir:

smartctl --version

Komut, paket sürümünü ve desteklenen teknolojilerin bir listesini görüntüler.

Bu sayede şunları yapabilirsiniz:

  • güncel bir sürümün kullanıldığından emin olmak;
  • NVMe, RAID ve diğer aygıt türlerinin desteklenip desteklenmediğini kontrol etmek.

Belirli bir diskte SMART desteğini kontrol etme

Ardından, sürücünün kendisinin SMART teknolojisini destekleyip desteklemediğini ve cihaz düzeyinde etkinleştirilip etkinleştirilmediğini kontrol etmek gerekir.

sudo smartctl -i /dev/sda

Doğru çıktı örneği:

SMART support is: Available - device has SMART capability. SMART support is: Enabled

  • Kullanılabilir - disk fiziksel olarak SMART'ı destekliyor;
  • Etkin - SMART veri toplama özelliği açıktır ve okunmaya hazırdır.

SMART destekleniyor ancak devre dışı bırakılmışsa, bu durum genellikle yeni veya daha önce kullanılmamış disklerde görülür. Böyle bir durumda, manuel olarak etkinleştirilmesi gerekir:

sudo smartctl -s on /dev/sda

Bundan sonra, SMART'ın etkinleştirildiğinden emin olmak için smartctl -i komutunun yeniden çalıştırılması önerilir.

SMART özniteliklerini görüntüleme ve ilk durum değerlendirmesi

SMART'ın temel pratik değeri, diskin yüzeyinin, mekanik ve elektronik bileşenlerinin durumunu yansıtan sayısal değerler olan özelliklerinde yatmaktadır.

Özellikleri görüntülemek için şu komutu kullanın:

sudo smartctl -A /dev/sda

Çıktı, özniteliklerin mevcut değerlerini ve geçmişini içeren bir tablo içerir. Her şeyden önce, aşağıdaki göstergelere dikkat edilmelidir:

Çıktıdaki ana alanlar:

  • VALUE (Mevcut Değer): Özelliğin normalleştirilmiş değeri (genellikle 1 ile 100 arasında, 100 ideal değerdir). VALUE ≤ THRESH ise disk arızalı kabul edilir.
  • WORST (En Kötü Değer): Diskin çalışması sırasında ulaşılan en kötü değer.
  • THRESH (Eşik): VALUE için izin verilen minimum değer. Eşiğin aşılması (VALUE ≤ THRESH), kritik bir durumun işaretidir.
  • RAW_VALUE: Özniteliğin "ham", normalleştirilmemiş değeri. Aşınmayı değerlendirmek ve olayları saymak için analiz edilmesi gereken değer budur.

HDD (geleneksel sabit sürücüler) için temel öznitelikler:

  • Reallocated_Sector_Ct: Artış, fiziksel yüzey bozulmasına işaret eder.
  • Current_Pending_Sector (Yeniden tahsis edilmeyi bekleyen sektörler): Kararsız sektörler. Sıfırdan farklı tek bir değer bile bir uyarı işaretidir.
  • Offline_Uncorrectable (Düzeltilemeyen hatalar): Okunamayan sektörler.
  • Power_On_Hours: Diskin toplam çalışma süresi.

SSD'ler için temel özellikler:

  • Retired_Block_Count: HDD'ler için Reallocated_Sector_Ct'ye eşdeğer bir değerdir. Hizmet dışı bırakılan blok sayısını gösterir. VALUE=100 gibi düşük bir değer bile normal olabilir.
  • Reallocated_Event_Count: Yeniden tahsis olaylarının sayısı.
  • SSD_Life_Left veya Percentage Used/Media Wearout Indicator: Kalan ömür (veya aşınma) yüzdesi. Düşük bir değer (örn. <%10), arızanın yakında gerçekleşeceğinin işaretidir.
  • Wear_Range_Delta: Bellek hücreleri arasındaki aşınmanın eşitliğini gösteren bir gösterge.
  • Power_On_Hours_and_Msec: Toplam çalışma süresi.
  • Lifetime_Writes_GiB / Lifetime_Reads_GiB (Özellikler 241, 242): Yazılan/okunan toplam veri hacmi.

NVMe için temel özellikler (smartctl -a /dev/nvme0 komutu ile):

  • Percentage Used: Tüketilen yazma dayanıklılığının yüzdesi. Aşınmanın birincil göstergesi.
  • Medya ve Veri Bütünlüğü Hataları: Veri bütünlüğü hataları.
  • Kritik Uyarı: Kritik uyarı bayrakları.
  • Sıcaklık: Anlık sıcaklık.

Bu aşamada, yönetici diskin durumu hakkında genel bir fikir edinir ve sorunların bariz belirtilerini tespit edebilir.

Gelişmiş yapılandırma ve pratik senaryolar

SMART, işletim sisteminin müdahalesi olmadan sürücünün kendisi tarafından gerçekleştirilen yerleşik otomatik testleri destekler.

Kısa test, temel bileşenlerin hızlı bir şekilde kontrol edilmesi için tasarlanmıştır:

sudo smartctl -t short /dev/sda

Uzun test, tam bir yüzey taraması gerçekleştirir ve çok daha fazla zaman alır:

sudo smartctl -t long /dev/sda

Test tamamlandıktan sonra sonuçların kontrol edilmesi gerekir:

sudo smartctl -l selftest /dev/sda

Çıktıda şunlar gösterilir:

  • test türü;
  • tamamlanma durumu;
  • hataların olup olmadığı.

Başarısız bir test, disk değiştirmeye hazırlanmak için doğrudan bir nedendir.

RAID denetleyicileriyle çalışma

Donanım RAID denetleyicileri genellikle SMART verilerini sistemden gizler. Bu tür durumlarda, aygıt türü açıkça belirtilmelidir.

LSI denetleyicisi örneği:

smartctl -a -d megaraid,0 /dev/sda

Burada:

  • -a - mevcut tüm SMART bilgilerini (özellikler, günlükler, hatalar, genel sağlık değerlendirmesi) çıkarmak için anahtar.
  • -d - aygıt türünü belirtmek için kullanılan anahtar.
  • megaraid - SMART sürücüsüne, diskin bir LSI/Broadcom denetleyicisi arkasında olduğunu bildirir (genellikle sunucularda kullanılır).
  • 0 - RAID dizisindeki fiziksel disk numarası (PD, Fiziksel Sürücü). Bu, sda değil, denetleyici tarafından atanan benzersiz bir kimliktir. Denetleyici yönetim yardımcı programı (örn. storcli veya MegaCLI) kullanılarak bulunabilir.
  • /dev/sda - bu bağlamda bu, gerçek disk değil, sistemdeki RAID denetleyicisinin kendisini temsil eden bir sözde aygıttır. Genellikle bu, /dev/sgX (SCSI Generic) veya denetleyici sanal bir disk oluşturmuşsa basitçe /dev/sda şeklindedir.

Aygıt türü belirtilmediğinde ortaya çıkan tipik hata:

SMART support is: Unavailable

Bu, SMART'ın kullanılamadığı anlamına gelmez; yalnızca smartctl'in fiziksel diske giden yolu otomatik olarak belirleyemediği anlamına gelir. Çözüm, -d parametresini doğru şekilde belirtmektir.

Teşhis ve sorun giderme

Olası arızaların belirtileri:

  • Reallocated_Sector_Ct değerinde artış;
  • Current_Pending_Sector değerinin sıfırdan farklı olması;
  • programlama/silme hataları (Program_Fail_Count, Erase_Fail_Count);
  • otomatik test hataları;
  • I/O gecikmesinde artış;
  • sistem günlüklerindeki hata mesajları.

Günlük analizi

journalctl -u smartd

dmesg | grep -i error

Açıklama:

  • Bekleyen Sektörler > 0 - yüksek arıza riski;
  • Yeniden tahsis edilen sektörler artıyor - kademeli bozulma;
  • Kendi kendine test BAŞARISIZ - disk değiştirilmelidir.

Sorunların kaynaklarını belirleme

Yanlış pozitif sonuçları ortadan kaldırmak için, SMART verilerini gerçek yük ile ilişkilendirmek önemlidir.

iostat -x 1 iotop

Diskin nereye takılı olduğunu kontrol etme:

lsblk -o NAME,SERIAL,MOUNTPOINT

Denetleyicilerin belirlenmesi:

lspci | grep -i raid

Ek ölçümler:

  • 50 °C'nin üzerindeki sıcaklık;
  • CRC hatalarında artış;
  • kararsız SMART değerleri.

SMART ölçümleri eşik değerlerine yaklaştığında yönetici bildirimlerinin yapılandırılması

SMART verilerinin varlığı tek başına altyapı güvenliğini garanti etmez. İzlemenin önemli bir unsuru, diskin durumu bozulmaya başladığı ancak henüz arıza meydana gelmediği anda yöneticiye zamanında bildirimde bulunmaktır.

Bildirim mekanizması şunları yapmanızı sağlar:

  • sürücüdeki bozulmayı erken aşamada tespit etmek;
  • disk değişimini önceden planlamak;
  • acil durum kaynaklı kesintileri ve veri kaybını önlemek;
  • planlı bakım zaman aralıkları içinde çalışmak.

Smartmontools'ta, smartd arka plan programı bildirimleri göndermekten sorumludur. SMART özelliklerindeki değişiklikleri otomatik olarak izler ve normalden sapmalara tepki verir.

smartd bildirimlerinin çalışma prensibi

smartd arka plan programı, bir arka plan hizmeti olarak çalışır ve aşağıdaki görevleri yerine getirir:

  1. Disk SMART özelliklerini periyodik olarak kontrol eder.
  2. Mevcut değerleri fabrika eşik değerleriyle ve önceki değerlerle (değişim dinamikleri) karşılaştırır.
  3. Aşağıdakileri algılar: kritik özelliklerdeki artış, yeni hataların ortaya çıkması, otomatik test hataları.
  4. Bir bildirim oluşturur ve bunu yöneticiye gönderir.

Bildirimlerin çalışması için gereksinimler

Yapılandırma öncesinde aşağıdakilerin sağlanması gerekir:

  • sistemde bir MTA (Postfix, Exim, Sendmail, ssmtp) kurulmuş ve doğru şekilde yapılandırılmış olmalıdır;
  • sunucunun giden posta gönderebilmesi;
  • bildirimleri almak üzere yöneticinin e-posta adresi tanımlanmış olmalıdır.

ssmtp yapılandırma örneği - sistemden e-posta göndermek için hafif ve basit bir MTA

Kurulum:

# For Debian/Ubuntu sudo apt update && sudo apt install ssmtp mailutils -y # For RHEL sudo dnf install ssmtp mailx

Yapılandırma dosyasını oluşturun

sudo nano /etc/ssmtp/ssmtp.conf

ve içeriğini düzenleyin:

# Default sender address [email protected] # SMTP server and port of your email provider mailhub=smtp.your-domain.com:587 # Alternative example: # mailhub=smtp.gmail.com:587 # For Gmail # Authentication credentials [email protected] AuthPass=your-password # Encryption settings UseSTARTTLS=YES # Use STARTTLS UseTLS=YES # Use TLS FromLineOverride=YES # Allow overriding the sender address # Hostname (specify your server's name) hostname=server1.your-domain.com # you can use hostname=localhost or specify the system's actual hostname

Dosyayı kaydedin ve erişim izinlerini yapılandırın:

sudo chmod 640 /etc/ssmtp/ssmtp.conf sudo chown root:mail /etc/ssmtp/ssmtp.conf

Gönderenleri (takma adları) yapılandırın:

sudo nano /etc/ssmtp/revaliases

root:[email protected]:smtp.your-domain.com:587 www-data:[email protected]:smtp.your-domain.com:587

Mesajların başarıyla gönderilebilmesi için, sunucuda aşağıdaki bağlantı noktalarının açık olması gerekir: 587 (STARTTLS şifrelemeli gönderim için birincil), veya 25 (standart SMTP), 465 (SSL ile güvenli SMTP), eğer yapılandırmada öngörülmüşse.

Temel posta gönderme testi:

echo "SMART test message" | mail -s "SMART notification test" [email protected] # You can explicitly specify the sender echo "SMART test message" | mail -s "SMART notification test" -a "From: [email protected]" [email protected] # Via ssmtp directly echo "SMART test message" | ssmtp [email protected]

[email protected] – mesajın gönderileceği alıcı adresi.

E-posta teslim edilmezse, posta teslimat sorunları çözülene kadar smartd'nin daha fazla yapılandırılması anlamsızdır.

SMART bildirim yapılandırması şu dosyada yapılır:

/etc/smartd.conf

Basit ve çalışan bir yapılandırma örneği:

/dev/sda -a -o on -S on -m [email protected]

Parametreler:

  • /dev/sda - izlenen disk;
  • -a - tam kontrol seti;
  • -S on - yeniden başlatmalar arasında öznitelik kaydetme özelliği etkinleştirilir;
  • -o on - otomatik çevrimdışı veri toplama etkinleştirilir;
  • -m - bildirimler belirtilen e-posta adresine gönderilir.

Bu noktadan itibaren smartd, arka planda disk durumunu izlemeye başlayacaktır.

Eşik değerlere yaklaşıldığında bildirimler

smartd'nin temel bir özelliği, yalnızca kritik eşik değerlerin aşılmasını değil, öznitelik değerlerindeki değişiklikleri de izlemesidir.

  • Uygulamada bu, bir bildirimin şu durumlarda gönderilebileceği anlamına gelir:
  • Current_Pending_Sector ilk kez ortaya çıktığında;
  • Reallocated_Sector_Ct değerinde bir artış olduğunda, eşik değere henüz ulaşılmamış olsa bile;
  • otomatik test hataları tespit edildiğinde;
  • NVMe parametrelerinde bozulma meydana geldiğinde.

Erken arızanın en önemli özellikleri:

  • Reallocated_Sector_Ct
  • Current_Pending_Sector
  • Çevrimdışı_Düzeltilemez
  • Medya ve Veri Bütünlüğü Hataları (NVMe)
  • Kullanım Yüzdesi (SSD/NVMe)

Bu parametrelerdeki en ufak değişiklikler bile dikkat edilmesi gereken bir neden olarak değerlendirilmelidir.

Bildirim kaynağı olarak otomatik testlerin kullanılması

Bilgilendirici niteliği artırmak için, öznitelik izlemeyi düzenli kendi kendine testlerle birleştirmeniz önerilir.

Zamanlamalı örnek yapılandırma:

/dev/sda -a -o on -S on \ -s (S/../.././02|L/../../6/03) \ -m [email protected]

Çalışma mantığı:

  • her gün kısa bir test yapılır;
  • haftada bir kez tam bir test yapılır;
  • herhangi bir test başarısızlığı durumunda, yönetici bir bildirim alır.

Bildirim sıklığı ve hacminin yönetimi

Aşırı uyarıları önlemek için -M once parametresi kullanılır

Örnek:

/dev/sda -a -m [email protected] -M once

Bu modda:

  • bir sorun ilk kez tespit edildiğinde bir bildirim gönderilir;
  • nedeni giderilene kadar sonraki mesajlar tekrarlanmaz.

Bildirim sistemini test etmek için -M test komutunu kullanabilirsiniz

Bu, smartd'nin gerçek bir hata oluşmasını beklemeden mesaj gönderebildiğini doğrulamanızı sağlar.

Sonuç

Bu kılavuz kapsamında, proaktif disk sağlığı izleme aracı olarak smartctl ve smartd arka plan programının tam uygulama ve çalışma döngüsü sistematik olarak incelenmiştir. SMART çalışmasının temel ilkeleri, öznitelik analizi için pratik yöntemler, otomatik testlerin başlatılması ve yorumlanması, NVMe sürücüler ve RAID denetleyicileriyle çalışmanın özellikleri ile sorunların temel nedenlerini belirlemeye yönelik tanılama yöntemleri ve teknikleri ele alınmıştır. Kritik bir arıza meydana gelmeden önce bile sürücüdeki bozulmanın erken aşamalarda tespit edilmesini sağlayan bildirimlerin yapılandırılmasına özel önem verilmiştir.

Doğru şekilde yapılandırılmış SMART izleme, güvenilir bir sunucu altyapısının ayrılmaz bir parçasıdır ve zorunlu bir operasyonel standart olarak kabul edilmelidir. smartctl ve smartd araçlarının kullanımı, sistem yöneticisinin reaktif olay çözümünden disk alt sisteminin bilinçli ve yönetilebilir bakımına geçmesini sağlar; bu da kesinti, veri kaybı ve planlanmamış olay risklerini azaltırken, daha ileri otomasyon ve merkezi izleme sistemleriyle entegrasyon için sağlam bir temel oluşturur.

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • germany
  • Español
  • Italiano
  • Poland
  • Русский
  • Slovenski
  • Türkçe
  • ukraine
  • kingdom
  • French
  • Hrvatska
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA