Cara memeriksa kesihatan cakera keras dari baris arahan menggunakan smartctl

Cara memeriksa kesihatan cakera keras dari baris arahan menggunakan smartctl

The Smartmontools Pakej biasanya tersedia dalam repositori lalai semua pengagihan Linux utama. Ia mengandungi dua utiliti yang berguna untuk memeriksa status penyimpanan dengan S.M.A.R.T Menyokong (Analisis pemantauan diri dan teknologi pelaporan): SmartCl dan Smartd. Bekas adalah utiliti yang kami gunakan terus untuk memeriksa s.M.A.R.Atribut t, menjalankan ujian, atau melakukan tindakan lain; Yang terakhir adalah daemon yang boleh digunakan untuk menjadualkan operasi di latar belakang. Dalam tutorial ini kita akan mempelajari penggunaan asas Smartctl.

Dalam tutorial ini anda akan belajar:

  • Cara Memasang Pakej SmartMontools pada pelbagai pengedaran
  • Apakah perbezaan antara s.M.A.R.T ujian diri
  • Cara Menggunakan SmartCTL untuk memeriksa kesihatan peranti penyimpanan
  • Cara menjalankan ujian pada peranti penyimpanan dari baris arahan
Cara memeriksa kesihatan cakera keras dari baris arahan menggunakan smartctl

Keperluan perisian dan konvensyen yang digunakan

Keperluan Perisian dan Konvensyen Talian Perintah Linux
Kategori Keperluan, konvensyen atau versi perisian yang digunakan
Sistem Pengedaran bebas
Perisian Pakej SmartMontools (lihat arahan)
Yang lain Keizinan akar
Konvensyen # - Memerlukan komando linux yang diberikan untuk dilaksanakan dengan keistimewaan akar sama ada secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah
$-memerlukan komando Linux yang diberikan sebagai pengguna yang tidak berkadar biasa

Pemasangan

Seperti yang disebutkan sebelum Smartmontools Pakej boleh didapati di repositori semua pengagihan Linux utama, oleh itu semua yang perlu kita lakukan untuk memasangnya, adalah menggunakan pengurus pakej kegemaran kami. Jika anda berjalan di Debian atau salah satu derivatifnya, seperti Ubuntu atau Mint, sebagai contoh, anda boleh menjalankan:

$ sudo apt-get update & & sudo apt-get Install smartmontools 

Pada versi terkini Red Hat Enterprise Linux, Centos dan Fedora yang boleh kita gunakan DNF:

$ sudo dnf memasang smartmontools 

Sekiranya Archlinux adalah pengedaran kegemaran anda, anda boleh menggunakan Pacman:

$ sudo pacman -s smartmontools 


Memeriksa jika pintar diaktifkan

Mari kita kenal dengan Smartctl utiliti. Perkara pertama yang ingin kita periksa ialah jika s.M.A.R.Sokongan t aktif pada peranti. Untuk melaksanakan operasi ini, kami dapat menjalankan utiliti SmartCtl dengan -i pilihan (pendek untuk --maklumat):

$ sudo smartctl -i /dev /sda 

Output arahan adalah seperti berikut:

=== Seksyen Seksyen Maklumat === Model Keluarga: Model Peranti Merah Digital Barat: WDC WD10EFRX-68FYTN0 LU WWN ID Peranti: 5 0014EE 20C672DEF FIRMWARE Versi: 82.00A82 Kapasiti Pengguna: 1,000,204,886,016 bait [1.00 TB] Saiz Sektor: 512 Bytes Logical, 4096 Bytes Kadar Putaran Fizikal: 5400 RPM Peranti adalah: Dalam pangkalan data SMARTCTL [untuk butiran penggunaan: -p menunjukkan versi ATA adalah: ACS -2 (semakan kecil tidak ditunjukkan) SATA 3.0, 6.0 GB/s (Semasa: 3.0 GB/s) Masa Tempatan adalah: Thu 24 Sep 18:13:19 2020 CEST Smart Support IS: Tersedia - Peranti mempunyai keupayaan pintar. Sokongan pintar adalah: dilumpuhkan 

Kita dapat melihat bahawa maklumat asas dipaparkan seperti keluarga peranti, model, saiz sektor, dll. Apa yang paling menarik minat kita, namun kandungan dua baris terakhir. Dari sana kita dapat melihat bahawa peranti ini mempunyai keupayaan pintar dan, dalam kes ini, sokongan pintar dilumpuhkan. Bagaimana jika kita mahu membolehkannya? Yang harus kita lakukan hanyalah menjalankan Smartctl dengan -s pilihan, menggunakan "on" sebagai hujah:

$ sudo smartctl -s on /dev /sda smartctl 6.6 2017-11-05 R4594 [ARMV6L-LINUX-5.4.51+] (binaan tempatan) Hak Cipta (c) 2002-17, Bruce Allen, Christian Franke, www.Smartmontools.org === permulaan enable/lumpuhkan arahan arahan === SMART enabled. 

Berkenaan dengan SmartCtl

Untuk mendapatkan semua maklumat pintar yang ada mengenai peranti penyimpanan, kami dapat melancarkan utiliti dengan -a pilihan (pendek untuk -semua) dan tentu saja lulus jalan peranti yang ingin kami periksa sebagai hujah terakhir arahan. Katakan kami ingin memeriksa status semasa /dev/sda peranti; Kami akan berlari:

$ sudo smartctl -a /dev /sda 

Perintah di atas menghasilkan banyak output. Antara perkara lain, kita dapat melihat status pelbagai parameter pintar:

Atribut Pintar Struktur Data Nombor Semakan: 16 Atribut pintar khusus vendor dengan ambang: id# attribute_name nilai bendera terburuk jenis thresh dikemas kini apabila_failed raw_value 1 raw_read_error_rate 0x002f 200 200 051 pre -fail selalu - 0 3 spin_up_time 4 start_stop_count 0x0032 100 100 000 old_age selalu - 941 5 reallocated_sector_ct 0x0033 200 200 140 pre -fail selalu - 0 7 Seek_error_rate 0x002e 200 000 old_age selalu - 0 9 power_on_hours 0x0032 085 085 000_x02 000. - 0 11 calibration_retry_count 0x0032 100 100 000 Old_age Always - 0 12 power_cycle_count 0x0032 100 100 000 Old_age Always - 446 192 Power -Off_retract_count 0x0032 200 200 000 Old_age Selalu - 108 1934258 194 Suhu_celsius 0x0022 111 099 000 Old_age Always - 32 196 REALLOCATED_EVENT_COUN 0 200 multi_zone_error_rate 0x0008 200 200 000 Old_age Offline - 0 

Parameter yang sangat penting untuk diperiksa adalah, antara yang lain, "reallocated_sector_ct" dan "current_pending_sector". Dalam kedua -dua kes jika Raw_value adalah sesuatu yang lain dari 0, kita harus berhati -hati dan mula membuat sandaran data pada cakera keras. The Reallocated_sector_ct adalah kiraan sektor pada peranti blok yang tidak dapat digunakan dengan betul.

Apabila sektor sedemikian dijumpai, ia disusun semula dengan satu
daripada sektor ganti yang tersedia bagi peranti penyimpanan, dan data yang terkandung di dalamnya dipindahkan. The Current_pending_sector atribut, sebaliknya, adalah kiraan sektor buruk yang masih menunggu untuk ditarik balik. Sekiranya anda ingin mengetahui lebih lanjut mengenai S.M.A.R.Atribut t dan maknanya, anda boleh mula melihat wikipedia s.M.A.R.T halaman.

Dalam output kita juga dapat melihat log ujian yang dilakukan pada peranti:

Struktur Log -Test Smart Revision Nombor 1 Num Test_Descripti - # 4 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 18 - # 5 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 0 - # 6 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 0 - 

Di dalam Test_description lajur, kita dapat melihat pelbagai jenis ujian telah dijalankan, dan semuanya selesai tanpa kesilapan. Di bahagian seterusnya kita akan melihat apakah perbezaan di antara mereka dan bagaimana untuk melancarkan ujian pada peranti penyimpanan.

Ujian pintar yang ada

The Smartctl Utiliti boleh digunakan untuk melancarkan pelbagai ujian diri:

  • pendek
  • panjang
  • Pengangkut (peranti ATA sahaja)
  • Pilih (peranti ATA sahaja)

Mari kita lihat dengan cepat apakah perbezaan di antara mereka.

The pendek Ujian dimaksudkan dengan cepat memeriksa masalah yang paling biasa yang boleh didapati di peranti penyimpanan. Ujian ini perlu mengambil masa tidak lebih dari 10 minit: persembahan mekanikal, elektrik dan membaca cakera diperiksa.

The panjang Ujian pada dasarnya adalah versi yang lebih tepat dari ujian "pendek". In dapat meluangkan banyak masa untuk disiapkan: Seperti yang dinyatakan dalam manual SmartCTL, ia boleh bertahan dari puluhan minit hingga beberapa jam.

The pengangkut Ujian dimaksudkan untuk memeriksa kemungkinan kerosakan berlaku semasa pengangkutan peranti. Biasanya mengambil masa beberapa minit untuk menyelesaikan ujian pengangkut. Ia hanya tersedia di peranti ATA.

The pilih Ujian, seperti "pengangkut", hanya tersedia pada peranti ATA, dan dimaksudkan untuk memeriksa hanya julat LBA yang ditentukan (alamat blok logik). Pelbagai alamat ditentukan semasa melancarkan ujian. Sebagai contoh, untuk memeriksa alamat dari 10 hingga 20 (termasuk), kami akan menjalankan:

$ sudo smartctl -t pilih, 10-20 

Adalah mungkin untuk menentukan maksimum 5 julat LBA yang berbeza untuk memeriksa dengan mengulangi -t pilihan:

$ sudo smartctl -t pilih, 0-5 -t pilih, 5-10 


The -t pilihan adalah pendek untuk --ujian dan digunakan untuk melaksanakan ujian dengan segera.

Menjalankan ujian

Kami melihat apakah ujian yang mungkin dapat kami jalankan dengan Smartctl utiliti. Sekarang mari kita lihat bagaimana untuk melancarkan ujian. Seperti yang kita lihat pada akhir bahagian sebelumnya, -t Pilihan digunakan untuk menjalankan ujian dengan segera; Kita mesti menyediakan jenis ujian yang ingin kita jalankan sebagai hujah pilihan. Untuk melaksanakan a pendek ujian pada /dev/sda peranti yang akan kami jalankan:

$ sudo smartctl -t short /dev /sda smartctl 6.6 2017-11-05 R4594 [ARMV6L-LINUX-5.4.51+] (binaan tempatan) Hak Cipta (c) 2002-17, Bruce Allen, Christian Franke, www.Smartmontools.org === permulaan seksyen segera dan ujian sendiri === arahan penghantaran: "Laksanakan rutin ujian diri pendek pintar dengan segera dalam mod luar talian". Drive Command "melaksanakan rutin ujian diri pendek pintar dengan segera dalam mod luar talian" berjaya. Ujian telah bermula. Sila tunggu 2 minit untuk ujian selesai. Ujian akan selesai selepas thu 24 Sep 14:39:05 2020 Gunakan SmartCtl -x untuk Mengurangkan Ujian. 

Output arahan melaporkan masa yang kita harus menunggu ujian selesai dan tarikh dan masa apabila ia selesai. Selepas selang waktu yang ditentukan, untuk memeriksa hasil ujian yang dapat kami jalankan:

$ sudo smartctl -a /dev /sda 

Seperti yang anda dapat melihat ujian (yang pertama dalam senarai - #1) dan hasilnya telah ditambahkan ke dalam senarai log. Ia selesai tanpa kesilapan:

Struktur Log Smart Revision Log Smart Nums 1 Num Test_Descripti - # 4 Lanjutan Luar Talian Selesai Tanpa Kesalahan 00% 21 - # 5 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 18 - # 6 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 0 - # 7 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 0 - 

Adalah mungkin untuk mengetahui anggaran masa ujian yang akan diambil untuk diselesaikan. Maklumat sedemikian harus dimasukkan ke dalam output smartctl -a /dev /sdx perintah, tetapi boleh diminta dengan jelas dengan melancarkan Smartctl dengan -c pilihan (pendek untuk --kemampuan). Berikut adalah garis yang menarik dalam output:

$ sudo smartctl -c /dev /sda [...] pendek masa pengundian yang disyorkan rutin diri: (2) minit. Rutin ujian diri yang dilanjutkan masa pengundian yang disyorkan: (157) minit. Rutin Pengawal Self-Test Rutin yang Disyorkan Masa Pengundian: (5) Minit. [...] 

Mari jalankan ujian pengangkut, sekarang:

$ sudo smartctl -t pengangkut /dev /sda 

Kami menunggu 5 minit, dan kemudian periksa hasilnya. Seperti yang dijangkakan ujian kini muncul dalam senarai, dan bernasib baik tidak ada kesilapan yang ditemui:

Struktur Log -Test Smart Revision Nombor 1 NUM Test_Description Status Baki Sepanjang Hayat (Jam) LBA_OF_FIRST_ERROR # 1 Pengangkut di luar talian selesai tanpa ralat 00% 11286 - # 2 Pendek Luar Talian Dilengkapkan Tanpa Kesalahan 00% 11286 - # 3 Pendek Offline Selesai Tanpa Kesalahan 00% 9590 - # 4 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 2941 - # 5 Lanjutan Offline Selesai Tanpa Kesalahan 00% 21 - # 6 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 18 - # 7 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 0 - # 8 Pendek Luar Talian Selesai tanpa ralat 00% 0 - 


Sekarang, untuk yang sederhana pilih ujian:

$ sudo smartctl -t pilih, 100-150 /dev /sda smartctl 6.6 2017-11-05 R4594 [ARMV6L-LINUX-5.4.51+] (binaan tempatan) Hak Cipta (c) 2002-17, Bruce Allen, Christian Franke, www.Smartmontools.org === permulaan seksyen segera dan ujian sendiri === Perintah penghantaran: "Laksanakan rutin ujian diri terpilih pintar dengan segera dalam mod luar talian". Span start_lba ending_lba 0 100 150 command drive "Laksanakan rutin ujian diri terpilih pintar dengan segera dalam mod luar talian" berjaya. Ujian telah bermula. 

Ujian ini berjaya diselesaikan:

Struktur Log Smart Revision Log Smart Nombor 1 NUM Test_Descripti - # 4 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 9590 - # 5 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 2941 - # 6 Lanjutan Offline Selesai Tanpa Kesalahan 00% 21 - # 7 Pendek Luar Talian Selesai Tanpa Kesalahan 00% 18 - # 8 Pendek Luar Talian Selesai Selesai Tanpa kesilapan 00% 0 - # 9 Pendek di luar talian selesai tanpa ralat 00% 0 - 

Sekali lagi, keputusan ujian dimasukkan ke dalam output yang dihasilkan apabila SmartCTL dilancarkan dengan -a pilihan; Sekiranya seseorang mahu memberi tumpuan hanya pada kayu balak, sebaliknya, dia boleh menggunakannya -L pilihan (--log) dan nyatakan jenis kayu yang harus dipaparkan. Untuk memaparkan sahaja ralat Log, seseorang akan berjalan:

$ sudo smartctl -l ralat /dev /sda 

Untuk memasukkan juga Selftests Log, sebaliknya:

$ sudo smartctl -l ralat -l selftest /dev /sda 

Bila Smartctl dilancarkan dengan -a pilihan ralat, Selftests dan Selektif Log dimasukkan ke dalam output untuk peranti ATA.

Kesimpulan

Dalam tutorial ini kita melihat cara memasang Smartmontools pakej pada beberapa pengagihan Linux yang paling banyak digunakan dan cara menggunakannya Smartctl utiliti untuk memeriksa status s.M.A.R.Parameter t pada peranti penyimpanan. Kami juga melihat apakah ujian yang mungkin dapat kami jalankan, dan apakah perbezaan di antara mereka. Kami juga melihat cara melancarkan ujian dan bagaimana hasilnya. Dalam artikel seterusnya kita akan melihat cara menjadualkan ujian menggunakan Smartd Daemon, dan bagaimana untuk dimaklumkan dengan e -mel apabila ralat ditemui. Tinggal!

Tutorial Linux Berkaitan:

  • Cara mengkonfigurasi SmartD dan diberitahu mengenai cakera keras ..
  • Perintah Pemeriksaan Kesihatan Asas Linux
  • Pengoptimuman Prestasi Linux: Alat dan Teknik
  • Ubuntu 20.04 Pemantauan Sistem dengan Widget Conky
  • Ubuntu 22.04 Pemantauan Sistem dengan Widget Conky
  • Alat Pemantauan Sistem Terbaik untuk Linux
  • Pengenalan kepada Automasi, Alat dan Teknik Linux
  • Cara Memisahkan Pemacu USB di Linux
  • Cara Membina Aplikasi TKInter Menggunakan Objek Berorientasikan ..
  • Cara Menggunakan Google Drive di Linux