Doküman

HDD’lerinizin veya SSD’lerinizin sağlığını kontrol etmek için Linux’ta Smartmontools’u kullanma

Linux’ta Smartmontools kullanarak sürücülerinizin sağlığı hakkında detaylı bilgi alabilir, olası sorunları erken tespit edebilir ve donanım arızalarından kaynaklanan veri kayıplarını önleyebilirsiniz.

Katı hal sürücüleri (SSD’ler) ve sabit disk sürücüleri (HDD’ler) herhangi bir bilgisayar sisteminin omurgasıdır ve veri kaybını ve donanım arızasını önlemek için bunların durumlarını izlemek çok önemlidir. Bunu başarmanıza yardımcı olacak mükemmel bir yardımcı program Smartmontools’tur. Bu açık kaynaklı araç seti Linux için mevcuttur ve HDD’leriniz veya SSD’leriniz hakkında zengin bilgiler sağlar. Bu makalede, sürücülerinizin bakımını yapmak ve sorunlarını gidermek ve onları en iyi durumda tutmak için Linux’ta Smartmontools’u kullanmaya bakacağız.

Smartmontools nedir?

Smartmontools, çoğu modern HDD ve SSD’de yerleşik olarak bulunan Kendi Kendini İzleme, Analiz ve Raporlama Teknolojisi (SMART) sistemiyle çalışmak üzere tasarlanmış bir dizi komut satırı yardımcı programıdır. Smartmontools’un iki ana bileşeni smartctl ve smartd’dir. Bu makalenin ilerleyen kısımlarında bu araçların her birini daha derinlemesine inceleyeceğiz. Öncelikle Linux sistemimize smartmontools’u kuralım.

Smartmontools’un Kurulumu

Smartmontools çoğu Linux dağıtımının deposunda mevcuttur. Yüklemek için dağıtımınıza uygun komutu çalıştırın:

  • Debian/Ubuntu: sudo apt-get install smartmontools
  • Fedora: sudo dnf install smartmontools
  • CentOS/RHEL: sudo yum install smartmontools

Bu makale örneği için onu Pop!_OS Linux dağıtımıma kuruyoruz.

installing smartmontools on pop os

Smartmontools’un Pop!_OS’a kurulması

Bu kadar! Artık Linux sisteminizde smartmontools kurulu olduğuna göre onu kullanalım.

Smartctl ile Sürücü Sağlığını Kontrol Etme

Sürücüleriniz hakkında bilgi almak için smartctl’yi kullanabilirsiniz. Ancak bunu yapmadan önce HDD veya SSD’nizin cihaz adını tanımlamanız gerekir.

Mevcut tüm sürücüleri listeleyin: Bağlı sürücülerin ve aygıt adlarının listesini görmek için lsblk veya sudo fdisk -l komutunu kullanın.

sudo fdisk -l

hard disk drive or ssd details

Sabit disk sürücüsü veya SSD ayrıntıları

1. smartctl

Bu, sürücülerden SMART verilerini almanıza, kendi kendine testler yapmanıza ve daha fazlasına olanak sağlayan bir komut satırı aracıdır. Bu aracın kullanımını açıklamanın en iyi yolunun pratik bir örnek olduğunu düşünüyorum. Belirli bir sürücünün genel durumunu, sıcaklığını ve açılış saatlerini kontrol etmek istediğiniz bir senaryo görelim. Sürücünün cihaz adının “sda” olduğunu varsayacağız. Bu adımları takip et:

Öncelikle aşağıdakileri çalıştırarak sürücüde SMART’ı etkinleştirin:

sudo smartctl -s on /dev/sda

smart enabled

SMART etkin

Daha sonra -a parametresini kullanarak mevcut tüm SMART verilerini görüntüleyin:

sudo smartctl -a /dev/sda

displaying all smart data

Tüm SMART verilerini görüntüleme

Sürücünün durumuyla ilgili bilgileri bulmak için çıktıyı inceleyin. Bu durumda üç spesifik özellik arıyoruz:

Attribute ID 194: Temperature_Celsius (Sürücü sıcaklığı)

Attribute ID 9: Power_On_Hours(Sürücünün açık kaldığı toplam saat)

Attribute ID 5: Reallocated_Sector_Ct (Yeniden eşlenen bozuk sektörlerin sayısı)

Örneğin çıktıda şöyle bir şey görebilirsiniz:

drive health data from my pop! os system

Pop!_OS sisteminden Sağlık Verilerini Aktar

Sonuçları yorumlayın:

  • Sürücü sıcaklığı 33°C olup, kaydedilen minimum sıcaklık 33°C ve maksimum 33°C’dir.
  • Sürücü toplam 17857 saattir açık durumda.
  • Reallocated_Sector_Ct için RAW_VALUE 0 olduğundan yeniden eşlenen (kötü) sektör yoktur.

Gördüğünüz tam değerlerin ve özelliklerin sürücü modelinize ve üreticinize bağlı olarak farklılık gösterebileceğini unutmayın. Sürücünüzün SMART özelliklerini daha iyi anlamak için daima üreticinin belgelerine bakın.

Kendi Kendini Test Etme ve Sonuçları Analiz Etme

Artık sürücümüzle ilgili temel sağlık bilgilerini elde ettiğimize göre, her şeyin doğru çalıştığından emin olmak için kısa bir otomatik test gerçekleştirelim. SMART kendi kendine testler, sürücülerinizdeki sorunları proaktif olarak kontrol etmenin mükemmel bir yoludur.

Smartctl üç tür kendi kendine testi destekler:

  • Kısa: Tamamlanması birkaç dakika süren kısa bir test.
  • Uzun: Birkaç saat sürebilen kapsamlı bir test.
  • İletim: ATA sürücülerine özel olarak, taşıma sırasında oluşan hasarları kontrol eder.

Sürücüde kısa bir otomatik test çalıştırın:

sudo smartctl -t kısa /dev/sda

Şuna benzer bir mesaj alacaksınız: ÇEVRİMDIŞI HEMEN VE KENDİ KENDİ TEST BÖLÜMÜNÜN BAŞLANGICI Lütfen testin tamamlanması için 2 dakika bekleyin.

Testin süresi sürücü modeline bağlı olarak değişebilir. Kısa testler genellikle yalnızca birkaç dakika sürer. Belirtilen süreyi bekleyin ve ardından test sonuçlarını kontrol edin:

Sudo smartctl -l selftest /dev/sda

Çıktı, aşağıdakine benzer şekilde test sonuçlarını gösterecektir:

SMART Self-test log structure revision number 1

Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error

# 1 Short offline Completed without error 00% 17058 –

running short self test

Kısa otomatik test çalıştırılıyor

Bu örnekte, kısa otomatik test hatasız olarak tamamlandı; bu, sürücünün doğru şekilde çalıştığına dair iyi bir işarettir.

Sürücünüzün sağlığını düzenli olarak izlemek istiyorsanız, kendi kendini test etmeyi otomatikleştirmek ve sonuçları size e-postayla göndermek için bir cron işi oluşturmayı düşünün. Örneğin, her ay kısa bir kendi kendine test yapmak ve sonuçları [email protected] adresine e-postayla göndermek için aşağıdaki satırı crontab’ınıza ekleyin (crontab -e kullanarak düzenleyin):

0 0 1 * * sudo smartctl -t short /dev/sda && sleep 180 && sudo smartctl -l selftest /dev/sda | mail -s “SMART Self-test Results” [email protected]

Bu cron işi, kısa öz testi her ayın ilk günü gece yarısı çalıştıracak, testin tamamlandığından emin olmak için 180 saniye (3 dakika) bekleyecek ve ardından sonuçları e-posta adresinize gönderecektir.

Smartctl’yi bu şekilde kullanarak, HDD’lerinizi veya SSD’lerinizi etkili bir şekilde izleyebilir, olası sorunları veri kaybına veya donanım arızasına yol açmadan önce tespit etmek için bir erken uyarı sistemine sahip olduğunuzdan emin olabilirsiniz.

Genişletilmiş bir kendi kendine test çalıştırın:

Smartctl ile genişletilmiş bir test çalıştırmak, kısa bir test çalıştırmaya benzer, ancak uzun test daha kapsamlıdır ve tamamlanması daha uzun sürer. Sürücünüzde uzun bir otomatik test çalıştırmak için şu adımları izleyin:

Öncelikle sürücüde SMART’ın etkinleştirildiğinden emin olun. Bu örnekte sürücünün cihaz adının “sda” olduğunu varsayacağız:

sudo smartctl -s on /dev/sda

Sürücüde uzun otomatik testi başlatın:

sudo smartctl -t long /dev/sda

You’ll receive a message like this:

Genişletilmiş çevrimdışı otomatik test başlatılıyor. Testin tamamlanması için lütfen 150 dakika bekleyin. Testin süresi sürücü modeline bağlı olarak değişebilir. Uzun testler için tamamlanması birkaç saat sürebilir.

Belirtilen süreyi bekleyin ve ardından test sonuçlarını kontrol edin:

sudo smartctl -l selftest /dev/sda

Çıktı, aşağıdakine benzer şekilde test sonuçlarını gösterecektir:

SMART Self-test log structure revision number 1 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error

# 1 Extended offline Completed without error 00% 2118 –

Bu örnekte, sürücünün doğru şekilde çalıştığını gösteren uzun otomatik test hatasız olarak tamamlandı.

Uzun süreli kendi kendine testin önemli ölçüde zaman alabileceğini unutmayın; bu nedenle, bunu sistem etkinliğinin düşük olduğu veya bilgisayarınızı kullanmanıza gerek olmadığı zamanlarda planlamak en iyisidir. Kısa testler gibi, uzun öz testleri çalıştırmayı ve sonuçları e-postayla göndermeyi otomatikleştirmek için bir cron işi de ayarlayabilirsiniz.

2. smartd

smartd, arka planda çalışan, sürücülerinizdeki SMART verilerini izleyen ve bir sorun algılandığında belirtilen eylemleri yürüten bir arka plan programıdır. Burada bir SSD veya HDD’yi izlemek için smartd kullanmanın ve bir sorun tespit edildiğinde e-posta bildirimi göndermenin bir örneğini bulabilirsiniz.

Öncelikle sürücüde SMART’ın etkinleştirildiğinden emin olun. Bu örnekte sürücünün cihaz adının “sda” olduğunu varsayacağız:

sudo smartctl -s on /dev/sda

Smartd için bir yapılandırma dosyası oluşturun. Bu amaçla /etc/smartd.conf adında bir dosya oluşturacağız:

sudo nano /etc/smartd.conf

[email protected] adresini gerçek e-posta adresinizle değiştirerek yapılandırma dosyasına aşağıdaki satırı ekleyin:

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

Bu satır smartd’ye /dev/sda sürücüsünü aşağıdaki seçeneklerle izlemesini söyler:

  • -a: Tüm SMART özelliklerini izleme
  • -o on: Otomatik çevrimdışı testleri etkinleştirin.
  • -S on:Otomatik özellik kaydetmeyi etkinleştirin.
  • -s (S/../.././02|L/../../6/03): Her gün sabah saat 2’de kısa bir kendi kendine test yapın ve her cumartesi sabah saat 3’te uzun bir kendi kendine test yapın.
  • -m [email protected]: Bir sorun tespit edilirse belirtilen e-posta adresine bir e-posta bildirimi gönderin.

Yapılandırma dosyasını kaydedin ve metin düzenleyiciden çıkın (örneğin nano’da Ctrl + X’e, ardından Y’ye ve son olarak Enter’a basın).

Smartd’yi önyükleme sırasında otomatik olarak başlayacak şekilde yapılandırın. Bu süreç Linux dağıtımınıza bağlı olarak değişiklik gösterebilir:

Debian/Ubuntu sistemleri için:

sudo systemctl enable smartd

CentOS/RHEL sistemleri için:

sudo chkconfig smartd on

Smartd hizmetini başlatın:Debian/Ubuntu sistemleri için:

sudo systemctl start smartd

CentOS/RHEL sistemleri için:

sudo service smartd start

Artık smartd arka planda çalışıyor ve belirtilen sürücüyü sorunlara karşı izliyor. Bir sorun tespit edilirse, belirtilen e-posta adresine bir e-posta bildirimi göndererek verilerinizi ve donanımınızı korumak için uygun eylemi gerçekleştirmenize olanak tanır.

Smartd’ın birden fazla sürücüyü izleyebileceğini unutmayın. Bunu yapmak için, /etc/smartd.conf dosyasındaki her sürücü için benzer bir satır ekleyin ve aygıt adını buna göre değiştirin (örneğin, /dev/sdb, /dev/sdc, vb.).

Sorun giderme ipuçları

  • Smartctl bir sorun bildirirse veri kaybını önlemek için verilerinizi hemen yedekleyin.
  • Bazı sürücüler, SMART verilerine erişmek için satıcıya özel araçlar gerektirebilir. Daha fazla bilgi için sürücü üreticisinin belgelerine bakın.
  • SMART verileri çok sayıda bozuk sektörü gösteriyorsa, ömrünün sonuna yaklaşmış olabileceğinden sürücüyü değiştirmeyi düşünün.
  • Smartctl’yi kullanırken izin sorunlarıyla karşılaşırsanız, komutu yönetici ayrıcalıklarıyla (sudo kullanarak) çalıştırdığınızdan emin olun.
  • Tüm sürücüler SMART kendi kendine testleri desteklemez. Otomatik sınamayı çalıştırırken sorunlarla karşılaşırsanız uyumluluğunu belirlemek için sürücünüzün belgelerine bakın.

Yazının orijinalini buradan okuyabilirsiniz.