Raspberry PI mit SSD und S.M.A.R.T.
Für verschiedene Zwecke haben wir diverse Raspberry PIs im Einsatz. Zum Beispiel als 3D Druckserver mit OctoPrint. Normalerweise wird ein Raspberry mit microSDHC Speicherkarten betrieben. Diese kommen jedoch früher oder später meist an Grenzen, die einem nicht so in die Lebensplanung passen. Höchste Zeit also, auf eine SSD zu setzen, entweder gleich von Anfang an, oder eben wenn es klemmt:
Seit einiger Zeit kann der Raspberry ja auch direkt von der SSD booten, so daß die microSDHC Karten eigentlich nur dafür benötigt werden, das dafür notwendige Bit mittels program_usb_boot_mode=1 in der /boot/config.txt zu setzten.
Danach kann man gleich die z.B. durch etcher mit dem Betriebssystem der Wahl geflashten SSD anschließen und den Rechenzwerg starten. Oder man migriert sein existierendes System via dd von der microSDHC Karte auf die neue SSD. Ich habe beim ersten Versuch mit einer Kombination aus beidem gearbeitet, d.h. zuerst die SSD geflasht, dann die einzelnen dadurch entstandenen Partitionen mittels sudo dd if/dev/sdX of=/dev/sdX status=progress von der SDHC auf die SSD kopiert. Bei der Gelegenheit habe ich, um jeglichen Kalamitäten beim Bootvorgang aus dem Weg zu gehen, die /etc/fstab auf die Verwendung von UUIDs umgestellt, was nicht nur eine einfache Übung sondern wegen der Änderung der Laufwerksbezeichnungen durch den Austausch in jedem Fall notwendig ist.
Gute Erfahrungen habe ich mit den SSDs von SanDisk gemacht, die mit günstigen SATA2USB Adaptern an den Raspberry angeschlossen werden können. Sicherlich gibt es auch schnellere SSDs, das Geld ist jedoch angesichts diverser Beschränkungen des Raspberrys besser anderswo angelegt. Wichtig ist für mich hier vor allem, daß die Platte ohne aktiven USB Hub, d.h. nur mit der vom Raspberry zur Verfügung gestellten maximalen Spannung von 1,2A läuft.
Der SATA2USB Adapter meldet sich nach der Eingabe von sudo smartctl /dev/sdX mit der Id "Unknown USB bridge [0x152d:0x0578 (0x3202)]" und ist dementsprechend ein JMicron JMS567, der auf alle weiteren Aufrufe mittels sudo smartctl -a -d sat /dev/sdX korrekt angesprochen werden kann.
smartctl 6.6 2016-05-31 r4324 [armv7l-linux-4.19.60-v7+] (local build) Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Device Model: SanDisk SSD PLUS 240GB Serial Number: 19172C804389 LU WWN Device Id: 5 001b44 8b814e836 Firmware Version: UF5000RL User Capacity: 240.065.183.744 bytes [240 GB] Sector Size: 512 bytes logical/physical Rotation Rate: Solid State Device Form Factor: 2.5 inches Device is: Not in smartctl database [for details use: -P showall] ATA Version is: ACS-2 T13/2015-D revision 3 SATA Version is: SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s) Local Time is: Mon Jul 29 11:26:28 2019 CEST SMART support is: Available - device has SMART capability. SMART support is: Enabled === START OF READ SMART DATA SECTION === SMART Status not supported: Incomplete response, ATA output registers missing SMART overall-health self-assessment test result: PASSED Warning: This result is based on an Attribute check. General SMART Values: Offline data collection status: (0x00) Offline data collection activity was never started. Auto Offline Data Collection: Disabled. Self-test execution status: ( 32) The self-test routine was interrupted by the host with a hard or soft reset. Total time to complete Offline data collection: ( 120) seconds. Offline data collection capabilities: (0x15) SMART execute Offline immediate. No Auto Offline data collection support. Abort Offline collection upon new command. No Offline surface scan supported. Self-test supported. No Conveyance Self-test supported. No 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: ( 42) minutes. SMART Attributes Data Structure revision number: 1 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 5 Reallocated_Sector_Ct 0x0032 100 100 000 Old_age Always - 0 9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 47 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 52 165 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 107 166 Unknown_Attribute 0x0032 100 100 --- Old_age Always - 2 167 Unknown_Attribute 0x0032 100 100 --- Old_age Always - 0 168 Unknown_Attribute 0x0032 100 100 --- Old_age Always - 4 169 Unknown_Attribute 0x0032 100 100 --- Old_age Always - 296 170 Unknown_Attribute 0x0032 100 100 --- Old_age Always - 0 171 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 0 172 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 0 173 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 2 174 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 47 184 End-to-End_Error 0x0032 100 100 --- Old_age Always - 0 187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0 188 Command_Timeout 0x0032 100 100 --- Old_age Always - 0 194 Temperature_Celsius 0x0022 057 047 000 Old_age Always - 43 (Min/Max 18/47) 199 UDMA_CRC_Error_Count 0x0032 100 100 --- Old_age Always - 0 230 Unknown_SSD_Attribute 0x0032 100 100 000 Old_age Always - 128851640350 232 Available_Reservd_Space 0x0033 100 100 005 Pre-fail Always - 100 233 Media_Wearout_Indicator 0x0032 100 100 --- Old_age Always - 391 234 Unknown_Attribute 0x0032 100 100 000 Old_age Always - 817 241 Total_LBAs_Written 0x0030 100 100 000 Old_age Offline - 383 242 Total_LBAs_Read 0x0030 100 100 000 Old_age Offline - 418 244 Unknown_Attribute 0x0032 000 100 --- Old_age 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] Selective Self-tests/Logging not supportedAuch wenn nicht alle S.M.A.R.T. Tests durchgeführt werden können, ist es doch möglich, die wichtigsten Test durchzuführen, die einem Auskunft über ein eventuell baldiges Ableben des Datenträgers geben können, hier mal ein 2 minütiger Kurztest mittels sudo smartctl -t short -d sat /dev/sdX nach 47 Stunden Laufzeit der Platte, den man sich mittels sudo smartctl -a -d sat /dev/sdX ansehen kann:
(...) SMART Error Log Version: 1 No Errors Logged 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% 47 - Selective Self-tests/Logging not supportedWeitere Tests werden dann entsprechend in der Ausgabe ergänzt, die aktuellen Ergebnisse stehen dann immer an erster Stelle der Ausgabe.
HINWEIS:
Alle gemachten Angaben sind ohne Gewähr auf Funktion und Richtigkeit. Für eventuell entstehende Schäden übernehmen wir keinerlei Haftung. Sämtliche Veränderungen geschehen auf Eure Verantwortung und Gefahr.
Irgendwie muss ich das alles finanzieren, daher sind die allermeisten Links Affiliate. D.h.: Solltet Ihr über diese Links zu einem Onlinehändler geraten und dort etwas bestellen, bekomme ich eine kleine Provision, für Euch ändert das am Preis natürlich nichts.