Memantau dan memeriksa status SSD di Linux

Halo lagi. Terjemahan artikel berikut telah disiapkan khusus untuk siswa di kursus Administrator Linux . Ayo pergi!



Apa itu SMART?


SMART (kependekan dari Self-Monitoring, Analisis, dan Teknologi Pelaporan) adalah teknologi yang tertanam dalam drive seperti hard drive atau SSD. Tugas utamanya adalah memantau kondisi.

Faktanya, SMART mengontrol beberapa parameter selama operasi disk normal. Ini memonitor parameter seperti jumlah kesalahan baca, waktu memulai disk, dan bahkan keadaan lingkungan. Selain itu, SMART juga dapat menjalankan tes menggunakan drive.

Idealnya, SMART akan memprediksi kegagalan yang dapat diprediksi, seperti kegagalan yang disebabkan oleh keausan mekanis atau kerusakan permukaan disk, serta kegagalan yang tidak dapat diprediksi yang disebabkan oleh cacat yang tidak terduga. Karena disk biasanya tidak gagal secara tiba-tiba, SMART membantu sistem operasi atau administrator sistem mengidentifikasi disk yang akan segera gagal sehingga mereka dapat diganti dan kehilangan data dapat dihindari.

Apa yang tidak berlaku untuk SMART?


Semua ini, tentu saja, keren. Namun, SMART bukan bola kristal. Dia tidak dapat memprediksi kegagalan dengan probabilitas absolut dan tidak dapat menjamin bahwa drive tidak akan gagal tanpa peringatan. Dalam kasus terbaik, SMART harus digunakan untuk menilai kemungkinan gangguan.

Mengingat sifat statistik dari peramalan kegagalan, teknologi SMART sangat tertarik pada perusahaan yang menggunakan sejumlah besar perangkat penyimpanan. Untuk mengetahui seberapa akurat SMART dapat memprediksi kegagalan dan melaporkan perlunya mengganti disk di pusat data atau server mainframe, bahkan studi khusus telah dilakukan.

Pada 2016, Microsoft dan University of Pennsylvania melakukan studi terkait SSD .

Menurut penelitian ini, beberapa atribut SMART dianggap sebagai indikator yang baik untuk kegagalan yang tak terhindarkan. Secara khusus, artikel itu menyebutkan:

Kontra realokasi sektor :

Terlepas dari kenyataan bahwa teknologi yang mendasarinya sangat berbeda, indikator ini tetap diminati baik di dunia SSD maupun di dunia hard drive. Perlu dicatat bahwa karena fitur algoritma wear balancing yang digunakan dalam SSD, ketika beberapa sektor gagal, maka dengan probabilitas tinggi kita dapat mengasumsikan bahwa lebih banyak lagi akan gagal segera.

Kesalahan dalam loop Program / Hapus (P / E):

Ini adalah tanda masalah dengan peralatan memori flash utama yang terkait dengan fakta bahwa disk tidak dapat menghapus data dari blok atau menyimpannya di sana. Faktanya adalah bahwa proses produksi tidak sempurna, sehingga munculnya kesalahan seperti itu bisa diharapkan. Namun, memori flash memiliki jumlah siklus tulis / hapus yang terbatas. Karena alasan ini, peningkatan mendadak dalam jumlah kejadian dapat mengindikasikan bahwa disk tersebut mencapai batasnya, dan diharapkan sel-sel memori lain juga akan mulai gagal.

CRC dan kesalahan fatal ("Kesalahan Data"):

Peristiwa tipe ini dapat disebabkan oleh kesalahan penyimpanan atau masalah dengan saluran komunikasi internal drive. Indikator ini memperhitungkan kesalahan yang diperbaiki (dilaporkan ke sistem host tanpa masalah) dan kesalahan yang tidak diperbaiki (karena drive terkunci, yang memberi tahu sistem host bahwa itu tidak dapat dibaca). Dengan kata lain, kesalahan yang diperbaiki tidak terlihat oleh sistem operasi, namun, mereka mempengaruhi kinerja drive, meningkatkan kemungkinan penugasan kembali sektor tersebut.

Jumlah downshift SATA:

Karena gangguan sementara, masalah dengan saluran komunikasi antara drive dan host, atau karena masalah internal dengan drive, antarmuka SATA dapat beralih ke kecepatan transmisi sinyal yang lebih rendah. Menurunkan kecepatan koneksi di bawah level nominal memiliki efek yang jelas pada kinerja disk. Dengan demikian, indikator ini paling signifikan, terutama ketika berkorelasi dengan kehadiran satu atau lebih indikator sebelumnya.

Menurut penelitian, 62% SSD gagal menunjukkan adanya setidaknya satu dari gejala di atas. Di sisi lain, kita dapat mengatakan bahwa 38% dari drive yang diteliti gagal tanpa indikasi gejala ini. Studi tidak menyebutkan apakah ada laporan lain penolakan SMART untuk "gejala" lainnya. Karena alasan ini, Anda tidak dapat secara langsung menghubungkan nilai-nilai ini dengan kegagalan tanpa peringatan dalam 36% kasus dari sebuah artikel dari Google.

Sebuah studi oleh Microsoft dan University of Pennsylvania tidak mengungkapkan model disc tes, namun, menurut penulis, sebagian besar disc berasal dari pemasok yang sama selama beberapa generasi.

Studi ini juga mencatat perbedaan signifikan dalam keandalan antara model yang berbeda. Misalnya, model "terburuk" yang dipelajari menunjukkan tingkat kegagalan dua puluh persen 9 bulan setelah kesalahan pengalihan tugas pertama dan hingga 36 persen dari kegagalan dalam 9 bulan setelah kemunculan kesalahan data yang pertama. Model "terburuk" disebut generasi disk yang lebih tua yang dipertimbangkan dalam artikel.

Di sisi lain, dengan gejala yang sama seperti di atas, drive generasi baru gagal dalam 3% dan 20% sesuai dengan kesalahan yang sama. Sulit untuk mengatakan apakah angka-angka ini dapat dijelaskan oleh peningkatan dalam desain drive dan proses produksi, atau apakah efek usang memainkan peran di sini.

Hal paling menarik yang disebutkan dalam artikel (saya menulis tentang ini sebelumnya) adalah bahwa peningkatan jumlah kesalahan yang terdaftar dapat terjadi sebagai indikator yang mengkhawatirkan:

"Ada kemungkinan gejala yang tinggi yang mendahului kegagalan SSD, yang secara aktif memanifestasikan diri dan berkembang dengan cepat, sangat mengurangi masa pakai drive hingga beberapa bulan."

Dengan kata lain, satu kesalahan acak yang dilaporkan oleh SMART seharusnya tidak dianggap sebagai sinyal kegagalan yang akan terjadi. Namun, ketika SSD yang sehat mulai melaporkan lebih banyak kesalahan, Anda harus mengharapkan kegagalan jangka pendek atau menengah.

Tetapi bagaimana Anda tahu keadaan SSD Anda saat ini? Untuk memuaskan keingintahuan Anda, atau karena keinginan untuk mulai memonitor drive Anda, Anda dapat menggunakan smartctl pemantauan smartctl .

Menggunakan smartctl untuk memantau status SSD Anda di Linux


Untuk memantau status SMART drive Anda, saya sarankan menggunakan alat smartctl , yang merupakan bagian dari paket smartmontool (setidaknya di Debian / Ubuntu).

 sudo apt install smartmontools 

smartctl adalah alat baris perintah , tetapi ini terutama membantu dalam kasus di mana Anda perlu mengotomatisasi pengumpulan data, misalnya, dari server Anda.

Langkah pertama dalam menggunakan smartctl adalah memeriksa untuk melihat apakah drive Anda memiliki SMART dan didukung oleh alat ini:

 sh$ sudo smartctl -i /dev/sdb smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.9.0-6-amd64] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Model Family: Seagate Momentus 7200.4 Device Model: ST9500420AS Serial Number: 5VJAS7FL LU WWN Device Id: 5 000c50 02fa0b800 Firmware Version: D005SDM1 User Capacity: 500,107,862,016 bytes [500 GB] Sector Size: 512 bytes logical/physical Rotation Rate: 7200 rpm Device is: In smartctl database [for details use: -P show] ATA Version is: ATA8-ACS T13/1699-D revision 4 SATA Version is: SATA 2.6, 3.0 Gb/s Local Time is: Mon Mar 12 15:54:43 2018 CET SMART support is: Available - device has SMART capability. SMART support is: Enabled 

Seperti yang Anda lihat, hard drive internal laptop saya benar-benar mendukung SMART dan nyala. Jadi, bagaimana cara mendapatkan status SMART sekarang? Apakah ada kesalahan yang diperbaiki?

Melaporkan "tentang semua informasi disk SMART" adalah opsi -a :

 sh$ sudo smartctl -i -a /dev/sdb smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.9.0-6-amd64] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Model Family: Seagate Momentus 7200.4 Device Model: ST9500420AS Serial Number: 5VJAS7FL LU WWN Device Id: 5 000c50 02fa0b800 Firmware Version: D005SDM1 User Capacity: 500,107,862,016 bytes [500 GB] Sector Size: 512 bytes logical/physical Rotation Rate: 7200 rpm Device is: In smartctl database [for details use: -P show] ATA Version is: ATA8-ACS T13/1699-D revision 4 SATA Version is: SATA 2.6, 3.0 Gb/s Local Time is: Mon Mar 12 15:56:58 2018 CET SMART support is: Available - device has SMART capability. SMART support is: Enabled === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED See vendor-specific Attribute list for marginal Attributes. General SMART Values: Offline data collection status: (0x82) Offline data collection activity was completed without error. Auto Offline Data Collection: Enabled. Self-test execution status: ( 0) The previous self-test routine completed without error or no self-test has ever been run. Total time to complete Offline data collection: ( 0) seconds. Offline data collection capabilities: (0x7b) SMART execute Offline immediate. Auto Offline data collection on/off support. Suspend Offline collection upon new command. Offline surface scan supported. Self-test supported. Conveyance Self-test supported. Selective Self-test supported. SMART capabilities: (0x0003) Saves SMART data before entering power-saving mode. Supports SMART auto save timer. Error logging capability: (0x01) Error logging supported. General Purpose Logging supported. Short self-test routine recommended polling time: ( 2) minutes. Extended self-test routine recommended polling time: ( 110) minutes. Conveyance self-test routine recommended polling time: ( 3) minutes. SCT capabilities: (0x103f) SCT Status supported. SCT Error Recovery Control supported. SCT Feature Control supported. SCT Data Table supported. SMART Attributes Data Structure revision number: 10 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x000f 111 099 006 Pre-fail Always - 29694249 3 Spin_Up_Time 0x0003 100 098 085 Pre-fail Always - 0 4 Start_Stop_Count 0x0032 095 095 020 Old_age Always - 5413 5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always - 3 7 Seek_Error_Rate 0x000f 071 060 030 Pre-fail Always - 51710773327 9 Power_On_Hours 0x0032 070 070 000 Old_age Always - 26423 10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0 12 Power_Cycle_Count 0x0032 096 037 020 Old_age Always - 4836 184 End-to-End_Error 0x0032 100 100 099 Old_age Always - 0 187 Reported_Uncorrect 0x0032 072 072 000 Old_age Always - 28 188 Command_Timeout 0x0032 100 096 000 Old_age Always - 4295033738 189 High_Fly_Writes 0x003a 100 100 000 Old_age Always - 0 190 Airflow_Temperature_Cel 0x0022 056 042 045 Old_age Always In_the_past 44 (Min/Max 21/44 #22) 191 G-Sense_Error_Rate 0x0032 100 100 000 Old_age Always - 184 192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 104 193 Load_Cycle_Count 0x0032 001 001 000 Old_age Always - 395415 194 Temperature_Celsius 0x0022 044 058 000 Old_age Always - 44 (0 13 0 0 0) 195 Hardware_ECC_Recovered 0x001a 050 045 000 Old_age Always - 29694249 197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 1 198 Offline_Uncorrectable 0x0010 100 100 000 Old_age Offline - 1 199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age Always - 0 240 Head_Flying_Hours 0x0000 100 253 000 Old_age Offline - 25131 (246 202 0) 241 Total_LBAs_Written 0x0000 100 253 000 Old_age Offline - 3028413736 242 Total_LBAs_Read 0x0000 100 253 000 Old_age Offline - 1613088055 254 Free_Fall_Sensor 0x0032 100 100 000 Old_age Always - 0 SMART Error Log Version: 1 ATA Error Count: 3 CR = Command Register [HEX] FR = Features Register [HEX] SC = Sector Count Register [HEX] SN = Sector Number Register [HEX] CL = Cylinder Low Register [HEX] CH = Cylinder High Register [HEX] DH = Device/Head Register [HEX] DC = Device Command Register [HEX] ER = Error register [HEX] ST = Status register [HEX] Powered_Up_Time is measured from power on, and printed as DDd+hh:mm:SS.sss where DD=days, hh=hours, mm=minutes, SS=sec, and sss=millisec. It "wraps" after 49.710 days. Error 3 occurred at disk power-on lifetime: 21171 hours (882 days + 3 hours) When the command that caused the error occurred, the device was active or idle. After command completion occurred, registers were: ER ST SC SN CL CH DH -- -- -- -- -- -- -- 40 51 00 ff ff ff 0f Error: UNC at LBA = 0x0fffffff = 268435455 Commands leading to the command that caused the error were: CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name -- -- -- -- -- -- -- -- ---------------- -------------------- 60 00 08 ff ff ff 4f 00 00:45:12.580 READ FPDMA QUEUED 60 00 08 ff ff ff 4f 00 00:45:12.580 READ FPDMA QUEUED 60 00 08 ff ff ff 4f 00 00:45:12.579 READ FPDMA QUEUED 60 00 08 ff ff ff 4f 00 00:45:12.571 READ FPDMA QUEUED 60 00 20 ff ff ff 4f 00 00:45:12.543 READ FPDMA QUEUED Error 2 occurred at disk power-on lifetime: 21171 hours (882 days + 3 hours) When the command that caused the error occurred, the device was active or idle. After command completion occurred, registers were: ER ST SC SN CL CH DH -- -- -- -- -- -- -- 40 51 00 ff ff ff 0f Error: UNC at LBA = 0x0fffffff = 268435455 Commands leading to the command that caused the error were: CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name -- -- -- -- -- -- -- -- ---------------- -------------------- 60 00 00 ff ff ff 4f 00 00:45:09.456 READ FPDMA QUEUED 60 00 00 ff ff ff 4f 00 00:45:09.451 READ FPDMA QUEUED 61 00 08 ff ff ff 4f 00 00:45:09.450 WRITE FPDMA QUEUED 60 00 00 ff ff ff 4f 00 00:45:08.878 READ FPDMA QUEUED 60 00 00 ff ff ff 4f 00 00:45:08.856 READ FPDMA QUEUED Error 1 occurred at disk power-on lifetime: 21131 hours (880 days + 11 hours) When the command that caused the error occurred, the device was active or idle. After command completion occurred, registers were: ER ST SC SN CL CH DH -- -- -- -- -- -- -- 40 51 00 ff ff ff 0f Error: UNC at LBA = 0x0fffffff = 268435455 Commands leading to the command that caused the error were: CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name -- -- -- -- -- -- -- -- ---------------- -------------------- 60 00 00 ff ff ff 4f 00 05:52:18.809 READ FPDMA QUEUED 61 00 00 7e fb 31 45 00 05:52:18.806 WRITE FPDMA QUEUED 60 00 00 ff ff ff 4f 00 05:52:18.571 READ FPDMA QUEUED ea 00 00 00 00 00 a0 00 05:52:18.529 FLUSH CACHE EXT 61 00 08 ff ff ff 4f 00 05:52:18.527 WRITE FPDMA QUEUED 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% 10904 - # 2 Short offline Completed without error 00% 12 - # 3 Short offline Completed without error 00% 0 - SMART Selective self-test log data structure revision number 1 SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS 1 0 0 Not_testing 2 0 0 Not_testing 3 0 0 Not_testing 4 0 0 Not_testing 5 0 0 Not_testing Selective self-test flags (0x0): After scanning selected spans, do NOT read-scan remainder of disk. If Selective self-test is pending on power-up, resume after 0 minute delay. 

Memahami output dari perintah smartctl


Outputnya adalah banyak informasi yang tidak selalu mudah dimengerti. Bagian yang paling menarik mungkin adalah bagian yang diberi label “Atribut CERDIK Atribut Tertentu dengan Ambang Batas”. Ini melaporkan berbagai statistik yang dikumpulkan oleh perangkat SMART dan memungkinkan Anda untuk membandingkan nilai-nilai ini (saat ini atau terburuk untuk selamanya) dengan ambang batas tertentu yang ditentukan oleh pemasok.

Misalnya, inilah laporan saya tentang sektor yang dipindahkan pada disk:

 ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always - 3 

Anda mungkin memperhatikan atribut "Pra-gagal" . Artinya nilainya tidak normal. Jadi, jika nilainya melebihi ambang batas, probabilitas kegagalannya tinggi. Kategori "Old_age" lainnya digunakan untuk atribut yang sesuai dengan nilai "keausan normal".

Bidang terakhir (di sini dengan nilai "3") sesuai dengan nilai atribut asli yang dilaporkan drive. Biasanya angka ini memiliki makna fisik. Berikut adalah jumlah aktual dari sektor yang dipindahkan. Untuk atribut lain, ini mungkin suhu dalam derajat Celcius, waktu dalam jam atau menit, atau berapa kali kondisi tertentu telah dipenuhi untuk disk.

Selain nilai awal, drive yang diaktifkan SMART harus melaporkan "nilai yang dinormalisasi" (nilai bidang, terburuk, dan ambang batas). Nilai-nilai ini dinormalisasi dalam kisaran 1-254 (0-255 untuk nilai ambang). Firmware disk melakukan normalisasi ini menggunakan beberapa algoritma internal. Selain itu, produsen yang berbeda dapat menormalkan atribut yang sama dengan cara yang berbeda. Sebagian besar nilai disajikan sebagai persentase, dan semakin tinggi semakin baik, tetapi ini tidak selalu terjadi. Ketika parameter lebih rendah dari atau sama dengan nilai ambang yang ditentukan oleh pabrikan, disk dianggap salah dalam hal atribut ini. Ingatlah semua instruksi dari bagian pertama artikel, ketika atribut yang menunjukkan nilai "pra-gagal" masih gagal, kemungkinan besar disk akan segera gagal.

Sebagai contoh kedua, ambil "tingkat kesalahan pencarian" :

 ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 7 Seek_Error_Rate 0x000f 071 060 030 Pre-fail Always - 51710773327 

Bahkan (dan ini adalah masalah utama dengan pelaporan SMART), hanya penyedia yang memahami nilai tepat dari bidang masing-masing atribut. Dalam kasus saya, Seagate menggunakan skala logaritmik untuk menormalkan nilai. Jadi, "71" berarti sekitar satu kesalahan per 10 juta permintaan (10 pangkat 7,1). Lucu bahwa indikator terburuk sepanjang masa adalah satu kesalahan per 1 juta permintaan (10 ke tingkat 6).

Jika saya mengerti dengan benar, ini berarti bahwa kepala disk saya sekarang terletak lebih akurat daripada sebelumnya. Saya tidak memonitor dengan cermat disk ini, jadi saya menganalisis data yang diperoleh dengan sangat subyektif. Mungkin drive hanya harus "dijalankan" sedikit sejak dioperasikan? Atau mungkin ini adalah konsekuensi dari keausan mekanis bagian dan, oleh karena itu, sekarang ada sedikit gesekan? Dalam kasus apa pun, apa pun alasannya, nilai ini lebih merupakan ukuran kinerja daripada peringatan awal kesalahan. Jadi itu tidak terlalu mengganggu saya.

Selain kesalahan di atas dan tiga yang sangat mencurigakan yang direkam sekitar enam bulan lalu, disk ini dalam kondisi sangat baik (menurut SMART) untuk diska laptop, yang bekerja lebih dari 1100 hari (26.423 jam).

 ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 9 Power_On_Hours 0x0032 070 070 000 Old_age Always - 26423 

Karena penasaran, saya melakukan tes yang sama pada laptop yang jauh lebih baru yang dilengkapi dengan SSD:

 sh$ sudo smartctl -i /dev/sdb smartctl 6.5 2016-01-24 r4214 [x86_64-linux-4.10.0-32-generic] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Device Model: TOSHIBA THNSNK256GVN8 Serial Number: 17FS131LTNLV LU WWN Device Id: 5 00080d 9109b2ceb Firmware Version: K8XA4103 User Capacity: 256 060 514 304 bytes [256 GB] Sector Sizes: 512 bytes logical, 4096 bytes physical Rotation Rate: Solid State Device Form Factor: M.2 Device is: Not in smartctl database [for details use: -P showall] ATA Version is: ACS-3 (minor revision not indicated) SATA Version is: SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s) Local Time is: Tue Mar 13 01:03:23 2018 CET SMART support is: Available - device has SMART capability. SMART support is: Enabled 

Hal pertama yang menarik perhatian Anda adalah bahwa meskipun ada SMART, perangkat ini tidak ada dalam database smartctl . Tetapi ini tidak akan mencegah alat dari mengumpulkan data dari SSD, namun, itu tidak akan dapat melaporkan nilai yang tepat dari berbagai atribut khusus untuk penyedia:

 sh$ sudo smartctl -a /dev/sdb smartctl 6.5 2016-01-24 r4214 [x86_64-linux-4.10.0-32-generic] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED General SMART Values: Offline data collection status: (0x00) Offline data collection activity was never started. Auto Offline Data Collection: Disabled. Self-test execution status: ( 0) The previous self-test routine completed without error or no self-test has ever been run. Total time to complete Offline data collection: ( 120) seconds. Offline data collection capabilities: (0x5b) SMART execute Offline immediate. Auto Offline data collection on/off support. Suspend Offline collection upon new command. Offline surface scan supported. Self-test supported. No Conveyance Self-test supported. Selective Self-test supported. SMART capabilities: (0x0003) Saves SMART data before entering power-saving mode. Supports SMART auto save timer. Error logging capability: (0x01) Error logging supported. General Purpose Logging supported. Short self-test routine recommended polling time: ( 2) minutes. Extended self-test routine recommended polling time: ( 11) minutes. SCT capabilities: (0x003d) SCT Status supported. SCT Error Recovery Control supported. SCT Feature Control supported. SCT Data Table supported. SMART Attributes Data Structure revision number: 16 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x000a 100 100 000 Old_age Always - 0 2 Throughput_Performance 0x0005 100 100 050 Pre-fail Offline - 0 3 Spin_Up_Time 0x0007 100 100 050 Pre-fail Always - 0 5 Reallocated_Sector_Ct 0x0013 100 100 050 Pre-fail Always - 0 7 Unknown_SSD_Attribute 0x000b 100 100 050 Pre-fail Always - 0 8 Unknown_SSD_Attribute 0x0005 100 100 050 Pre-fail Offline - 0 9 Power_On_Hours 0x0012 100 100 000 Old_age Always - 171 10 Unknown_SSD_Attribute 0x0013 100 100 050 Pre-fail Always - 0 12 Power_Cycle_Count 0x0012 100 100 000 Old_age Always - 105 166 Unknown_Attribute 0x0012 100 100 000 Old_age Always - 0 167 Unknown_Attribute 0x0022 100 100 000 Old_age Always - 0 168 Unknown_Attribute 0x0012 100 100 000 Old_age Always - 0 169 Unknown_Attribute 0x0013 100 100 010 Pre-fail Always - 100 170 Unknown_Attribute 0x0013 100 100 010 Pre-fail Always - 0 173 Unknown_Attribute 0x0012 200 200 000 Old_age Always - 0 175 Program_Fail_Count_Chip 0x0013 100 100 010 Pre-fail Always - 0 192 Power-Off_Retract_Count 0x0012 100 100 000 Old_age Always - 18 194 Temperature_Celsius 0x0023 063 032 020 Pre-fail Always - 37 (Min/Max 11/68) 197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 0 240 Unknown_SSD_Attribute 0x0013 100 100 050 Pre-fail Always - 0 SMART Error Log Version: 1 No Errors Logged SMART Self-test log structure revision number 1 No self-tests have been logged. [To run self-tests, use: smartctl -t] SMART Selective self-test log data structure revision number 1 SPAN MIN_LBA MAX_LBA CURRENT_TEST_STATUS 1 0 0 Not_testing 2 0 0 Not_testing 3 0 0 Not_testing 4 0 0 Not_testing 5 0 0 Not_testing Selective self-test flags (0x0): After scanning selected spans, do NOT read-scan remainder of disk. If Selective self-test is pending on power-up, resume after 0 minute delay. 

Di atas Anda melihat output dari SSD baru. Data dapat dimengerti bahkan tanpa adanya normalisasi atau meta-informasi untuk data penyedia tertentu, seperti dalam kasus saya dengan "Unknown_SSD_Attribute." Saya hanya bisa berharap bahwa versi smartctl masa depan akan memiliki data pada model drive ini dalam database, dan saya dapat lebih mengidentifikasi masalah potensial.

Uji SSD Anda di Linux dengan smartctl


Sejauh ini, kami telah meninjau data yang dikumpulkan selama operasi drive normal. Namun, SMART juga mendukung beberapa perintah untuk pengujian offline untuk menjalankan diagnosa on-demand.

Pengujian offline dapat dilakukan selama operasi disk normal, kecuali ditentukan lain. Karena tes dan permintaan I / O host akan bersaing, kinerja disk akan turun selama pengujian. Spesifikasi SMART mendefinisikan beberapa jenis pengujian yang berdiri sendiri:

Pengujian singkat yang berdiri sendiri ( -t short )
Tes semacam itu akan memeriksa kinerja listrik dan mekanik, serta kinerja membaca disk. Pengujian otonom pendek biasanya hanya memakan waktu beberapa menit (biasanya dari 2 hingga 10).

Pengujian mandiri yang diperpanjang ( -t long )
Tes ini memakan waktu hampir dua kali lipat. Ini biasanya hanya versi yang lebih rinci dari tes mandiri singkat. Selain itu, tes ini akan memindai seluruh permukaan disk untuk mencari kesalahan data tanpa batas waktu. Durasi pengujian akan sebanding dengan ukuran disk.

Pengujian Pengiriman Mandiri ( -t conveyance )
Kit uji ini diusulkan sebagai cara yang relatif cepat untuk memeriksa kemungkinan kerusakan yang terjadi selama pengangkutan perangkat.

Berikut adalah contoh yang diambil dari drive yang sama dengan yang di atas. Saya sarankan Anda menebak di mana yang mana:

 sh$ sudo smartctl -t short /dev/sdb smartctl 6.5 2016-01-24 r4214 [x86_64-linux-4.10.0-32-generic] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION === Sending command: "Execute SMART Short self-test routine immediately in off-line mode". Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful. Testing has begun. Please wait 2 minutes for test to complete. Test will complete after Mon Mar 12 18:06:17 2018 Use smartctl -X to abort test. 

Cek sedang berlangsung. Mari kita tunggu selesainya untuk melihat hasilnya:

 sh$ sudo sh -c 'sleep 120 && smartctl -l selftest /dev/sdb' smartctl 6.5 2016-01-24 r4214 [x86_64-linux-4.10.0-32-generic] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF READ SMART DATA SECTION === 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% 171 - 

Mari kita jalankan tes yang sama di drive lain:

 sh$ sudo smartctl -t short /dev/sdb smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.9.0-6-amd64] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION === Sending command: "Execute SMART Short self-test routine immediately in off-line mode". Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful. Testing has begun. Please wait 2 minutes for test to complete. Test will complete after Mon Mar 12 21:59:39 2018 Use smartctl -X to abort test. 

Dan lagi, kami akan mengirimnya untuk tidur selama dua menit dan melihat hasilnya:

 sh$ sudo sh -c 'sleep 120 && smartctl -l selftest /dev/sdb' smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.9.0-6-amd64] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF READ SMART DATA SECTION === 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% 26429 - # 2 Short offline Completed without error 00% 10904 - # 3 Short offline Completed without error 00% 12 - # 4 Short offline Completed without error 00% 0 - 

Menariknya, dalam hal ini kita melihat bahwa produsen disk dan komputer tampaknya telah menguji disk tersebut (pada masa pakai 0 jam dan 12 jam). Saya sendiri jelas tidak terlalu peduli dengan kondisi drive daripada mereka. Jadi, karena saya sudah menunjukkan tes cepat, saya akan menjalankan tes lanjutan juga untuk melihat bagaimana ini terjadi.

 sh$ sudo smartctl -t long /dev/sdb smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.9.0-6-amd64] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION === Sending command: "Execute SMART Extended self-test routine immediately in off-line mode". Drive command "Execute SMART Extended self-test routine immediately in off-line mode" successful. Testing has begun. Please wait 110 minutes for test to complete. Test will complete after Tue Mar 13 00:09:08 2018 Use smartctl -X to abort test. 

Rupanya, kali ini akan menunggu lebih lama daripada saat tes singkat. Jadi mari kita lihat:

 sh$ sudo bash -c 'sleep $((110*60)) && smartctl -l selftest /dev/sdb' [sudo] password for sylvain: smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.9.0-6-amd64] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF READ SMART DATA SECTION === SMART Self-test log structure revision number 1 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error # 1 Extended offline Completed: read failure 20% 26430 810665229 # 2 Short offline Completed without error 00% 26429 - # 3 Short offline Completed without error 00% 10904 - # 4 Short offline Completed without error 00% 12 - # 5 Short offline Completed without error 00% 0 - 

Dalam tes terakhir, perhatikan perbedaan dalam hasil yang diperoleh dengan menggunakan tes pendek dan diperpanjang, bahkan jika mereka dilakukan satu demi satu. Yah, mungkin drive ini tidak dalam kondisi yang baik! Saya perhatikan bahwa tes berhenti setelah kesalahan pembacaan pertama. Karena itu, jika Anda ingin mendapatkan informasi lengkap tentang semua kesalahan membaca, Anda harus melanjutkan tes setelah setiap kesalahan. Saya mendorong Anda untuk melihat halaman manual smartctl (8) yang ditulis dengan sangat baik untuk informasi lebih lanjut tentang opsi -t select , N-max dan -t select untuk dapat melakukan ini:

 sh$ sudo smartctl -t select,810665230-max /dev/sdb smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.9.0-6-amd64] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION === Sending command: "Execute SMART Selective self-test routine immediately in off-line mode". SPAN STARTING_LBA ENDING_LBA 0 810665230 976773167 Drive command "Execute SMART Selective self-test routine immediately in off-line mode" successful. Testing has begun. 

 smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.9.0-6-amd64] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF READ SMART DATA SECTION === SMART Self-test log structure revision number 1 Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error # 1 Selective offline Completed without error 00% 26432 - # 2 Extended offline Completed: read failure 20% 26430 810665229 # 3 Short offline Completed without error 00% 26429 - # 4 Short offline Completed without error 00% 10904 - # 5 Short offline Completed without error 00% 12 - # 6 Short offline Completed without error 00% 0 - 

Kesimpulan


Jelas, SMART adalah teknologi tepat yang harus ditambahkan ke toolkit Anda untuk memantau kesehatan drive server Anda. SMART Disk Monitoring Daemon smartd(8) , .

, , SMART . , , – , , . , RAID !

, !

Source: https://habr.com/ru/post/id461929/


All Articles