Wenn ich mich recht erinnere, hatten doch Festplatten mal mehr Sektoren, als man eigentlich nutzen konnte. Diese waren gedacht dafür, dass etwaige Ausfälle von Sektoren ausgeglichen werden können. Und ich meine, mal gelesen zu haben, dass das auch noch bei SSDs gilt. Kann es nicht sein, dass diese fehlenden 944 Sektoren genau dafür gedacht sind?
Linux Systemplatte reparieren unter Raspi?
- ralfi1988
- Thread is marked as Resolved.
Registriere dich jetzt, um exklusive Vorteile zu genießen! Als registriertes Mitglied kannst du Inhalte herunterladen und profitierst von einem werbefreien Forum.
Mach mit und werde Teil unserer Community!
Mach mit und werde Teil unserer Community!
-
-
Solche "zusätzlichen" Sektoren liegen im "Servicebereich" der HDD/SSD und tauchen nicht in der Größenangabe des Speichermediums auf. Man kann diese nur mit entprechenden Tools wie smartctl o.ä. sehen. In deinem Fall wurden halt nicht die max. mögliche Anzahl der Sektoren für die Partition genutzt.
-
Ein ATA/SATA Device hat einen sichtbaren Bereich, der in Deinem Fall bei Sektor Nummer 234441648 endet, und darüberhinaus weitere 'Sektoren bis zum realen Geräteende, welcher Bereich "Host Protected Area" genannt wird. In diesen nicht sichtbaren Bereich können Verwaltungsdaten, Recovery Programme, Badblock Tables, Trim Sektoren, Passwörter o.Ä. vom Hersteller abgelegt werden.
In manchen Linux Distributionen ist ein dazugehöriges Systemverwaltungsprogramm "hdparm" vorinstalliert, mit dem ein erfahrener Admin, der auch man-pages lesen und verstehen kann, Anzeigen und Änderungen vornimmt, beispielsweise den sichtbaren Bereich verschiebt/verkleinert.
Servus !
-
-
Ok, verstehe - war nur so eine Idee von mir. Melde mich mal wieder ab, bin ab morgen wieder für ein paar Tage im Spital und danach wohl wieder deutlich bedient. Also nicht wundern, wenn ich mich jetzt wieder für mehr als eine Woche nicht melde.
-
Habe gerade den Thread als Erledigt markiert.
Kurze Info: Es hat sich nach langen Diskussionen herausgestellt, dass die SSD defekt ist. So ist es zwar möglich, auf die SSD Daten zu schreiben (neue Textdatei anlegen und diese mit Daten befüllen beispielsweise - oder Dateien in andere Verzeichnisse verschieben) - und im Dateimanager sah man auch diese Änderungen. Wenn man das Laufwerk aber aus- und danach wieder einhängt, sind all diese Änderungen verloren. Der Hersteller der SSD hat mir das nach einem Mail-Austausch auch bestätigt.
Ich finde das Verhalten von Linux irgendwie .... äh .... seltsam. Man schreibt Daten auf ein Laufwerk, man sieht diese veränderten oder neuen Daten - und bei nächstbester Gelegenheit stellt sich heraus: Genau nix ist passiert. Das gibt mir irgendwie zu denken ....
-
Dieses Verhalten habe ich schon mehrere Male bei SD Karten festgestellt. Du änderst was, siehst die Änderung und nach einem Reboot ist wieder der alte Stand da.
Das liegt daran dass solche Filesystemdinge im Speicher gecached werden. Das macht Windows wie Linux. Beim Runterfahren werden diese Dinge dann persistiert ... Nur leider geht das nicht weil die SD Karte oder -Platte defekt ist und icht mehr geschrieben werden kann. Somit hast Du nach einem Reboot wieder den alten Stand.
Ist wirklich ein sehr unangenehmer Effekt und es dauert das rauszufinden.
-
-
Danke für die erklärenden Worte. Und da stellen sich mir natürlich gleich wieder eine Menge Fragen, beispielsweise: Warum dauert es so lange, bis die neuen Daten persistiert werden? Oder: Würde Windows mehr Informationen liefern als Linux? Gibt es Möglichkeiten, dieses Persistieren softwareseitig anzustoßen? Was meldet die SSD zurück, wenn die Daten nicht persistiert werden können wegen diesem Defekt? Und warum reagiert Linux nicht darauf?
Fragen über Fragen ...
Aber egal, es ist, wie es ist. Der Hersteller hat mir zwar angeboten, ihm die SSD zu schicken und im Zuge der Garantie würde ich dann eine neue bekommen - aber nachdem ja sensible Daten drauf sind, werde ich wohl darauf verzichten. Weil eine 120GB SSD kostet ja nicht die Welt, der Schaden ist also eher gering. Sowohl monetär, als auch sonst. War ja nur ein Test-System.
Danke jedenfalls für Eure Bemühungen!
-
...
Ich finde das Verhalten von Linux irgendwie .... äh .... seltsam. Man schreibt Daten auf ein Laufwerk, man sieht diese veränderten oder neuen Daten - und bei nächstbester Gelegenheit stellt sich heraus: Genau nix ist passiert. Das gibt mir irgendwie zu denken ....
Die Anzahl der Schreibzugriffe auf eine SSD / SD-Karte bzw. USB-Stick o. andere Flashspeicher sind begrenzt. Ein weitere Punkt ist Größe der Speicherblöcke. D.h. willst Du eine 1kB große Datei speichern und der Speicherblock auf der SSD ist z.B. 64 kB groß, müsste i.d.R. der gesamte 64 kB Speicherblock neu geschrieben werden, was mit der Zeit die Lebensdauer der SSD verkürzt. Daher werden die Daten "gesammelt" und erst dann geschrieben, wenn z.B. 64 kB Daten zum speichern da sind. Mit dem sync Befehl bzw. beim "sauberen" Aushängen eines Datenträgers bzw. beim Runterfahren des Systems, sollten die Daten ( egal mit welcher Speichergröße ) auf das Speichermedium geschrieben werden.
-
Mit dem sync Befehl bzw. beim "sauberen" Aushängen eines Datenträgers bzw. beim Runterfahren des Systems, sollten die Daten ( egal mit welcher Speichergröße ) auf das Speichermedium geschrieben werden.
Das dumme ist nur dass der Flashspeicher keinen Fehler ans OS meldet wenn nicht mehr geschrieben werden kann
.
Der Cache bleibt beim sync erhalten und wird weiterhin genutzt. Damit denkt man man haette die Datei geaendert. Vermutlich wird der Cache bei einem umount geloescht und bei einem mount wieder neu vom Flashspeicher gelesen. Das habe ich aber nie genauer untersucht. Ich habe den Effekt immer nach einem Reboot festgestellt.
-
-
Das dumme ist nur dass der Flashspeicher keinen Fehler ans OS meldet wenn nicht mehr geschrieben werden kann
BTRFS kann damit z.B. umgehen, da nach dem Schreiben überprüft wird, ob das Geschriebene wirklich dem entspricht, was geschrieben werden sollte.
Falls man keine Datenbank betreibt, wäre BTRFS eine Option, um Bit Rot zu vermeiden.
-
Am Alter liegt es definitiv nicht - siehe das Protokoll von smartctl:
Code
Display Moresmartctl 7.2 2020-12-30 r5155 [aarch64-linux-5.15.84-v8+] (local build) Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Device Model: JAJS300M120C Serial Number: AB202100000310008209 Firmware Version: T1125A0 User Capacity: 120.034.123.776 bytes [120 GB] Sector Size: 512 bytes logical/physical Rotation Rate: Solid State Device Form Factor: 2.5 inches TRIM Command: Available Device is: Not in smartctl database [for details use: -P showall] ATA Version is: ACS-3 T13/2161-D revision 4 SATA Version is: SATA 3.2, 6.0 Gb/s (current: 3.0 Gb/s) Local Time is: Thu Mar 16 08:37:55 2023 CET SMART support is: Available - device has SMART capability. SMART support is: Enabled AAM feature is: Unavailable APM feature is: Disabled Rd look-ahead is: Enabled Write cache is: Enabled DSN feature is: Unavailable ATA Security is: Disabled, NOT FROZEN [SEC1] === 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: ( 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: (0x11) SMART execute Offline immediate. No Auto Offline data collection support. Suspend 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: (0x0002) Does not save 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: ( 10) minutes. SMART Attributes Data Structure revision number: 1 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME FLAGS VALUE WORST THRESH FAIL RAW_VALUE 1 Raw_Read_Error_Rate -O--CK 100 100 050 - 0 5 Reallocated_Sector_Ct -O--CK 100 100 050 - 0 9 Power_On_Hours -O--CK 100 100 050 - 116 12 Power_Cycle_Count -O--CK 100 100 050 - 151 160 Unknown_Attribute -O--CK 100 100 050 - 0 161 Unknown_Attribute PO--CK 100 100 050 - 100 163 Unknown_Attribute -O--CK 100 100 050 - 187 164 Unknown_Attribute -O--CK 100 100 050 - 3903 165 Unknown_Attribute -O--CK 100 100 050 - 21 166 Unknown_Attribute -O--CK 100 100 050 - 4 167 Unknown_Attribute -O--CK 100 100 050 - 9 168 Unknown_Attribute -O--CK 100 100 050 - 2000 169 Unknown_Attribute -O--CK 100 100 050 - 100 175 Program_Fail_Count_Chip -O--CK 100 100 050 - 0 176 Erase_Fail_Count_Chip -O--CK 100 100 050 - 0 177 Wear_Leveling_Count -O--CK 100 100 050 - 0 178 Used_Rsvd_Blk_Cnt_Chip -O--CK 100 100 050 - 0 181 Program_Fail_Cnt_Total -O--CK 100 100 050 - 0 182 Erase_Fail_Count_Total -O--CK 100 100 050 - 0 192 Power-Off_Retract_Count -O--CK 100 100 050 - 42 194 Temperature_Celsius -O---K 100 100 050 - 47 195 Hardware_ECC_Recovered -O--CK 100 100 050 - 5099 196 Reallocated_Event_Count -O--CK 100 100 050 - 0 197 Current_Pending_Sector -O--CK 100 100 050 - 0 198 Offline_Uncorrectable -O--CK 100 100 050 - 0 199 UDMA_CRC_Error_Count -O--CK 100 100 050 - 0 232 Available_Reservd_Space -O--CK 100 100 050 - 100 241 Total_LBAs_Written ----CK 100 100 050 - 13240 242 Total_LBAs_Read ----CK 100 100 050 - 6523 245 Unknown_Attribute -O--CK 100 100 050 - 8675 ||||||_ K auto-keep |||||__ C event count ||||___ R error rate |||____ S speed/performance ||_____ O updated online |______ P prefailure warning General Purpose Log Directory Version 1 SMART Log Directory Version 1 [multi-sector log support] Address Access R/W Size Description 0x00 GPL,SL R/O 1 Log Directory 0x01 SL R/O 1 Summary SMART error log 0x02 SL R/O 1 Comprehensive SMART error log 0x03 GPL R/O 1 Ext. Comprehensive SMART error log 0x04 GPL,SL R/O 8 Device Statistics log 0x06 SL R/O 1 SMART self-test log 0x07 GPL R/O 1 Extended self-test log 0x10 GPL R/O 1 NCQ Command Error log 0x11 GPL R/O 1 SATA Phy Event Counters log 0x24 GPL R/O 88 Current Device Internal Status Data log 0x25 GPL R/O 32 Saved Device Internal Status Data log 0x30 GPL,SL R/O 9 IDENTIFY DEVICE data log 0x80-0x9f GPL,SL R/W 16 Host vendor specific log SMART Extended Comprehensive Error Log Version: 1 (1 sectors) No Errors Logged SMART Extended Self-test Log Version: 1 (1 sectors) No self-tests have been logged. [To run self-tests, use: smartctl -t] Selective Self-tests/Logging not supported SCT Commands not supported Device Statistics (GP Log 0x04) Page Offset Size Value Flags Description 0x01 ===== = = === == General Statistics (rev 1) == 0x01 0x008 4 151 --- Lifetime Power-On Resets 0x01 0x010 4 116 --- Power-on Hours 0x01 0x018 6 867699934 --- Logical Sectors Written 0x01 0x020 6 6577901 --- Number of Write Commands 0x01 0x028 6 427543028 --- Logical Sectors Read 0x01 0x030 6 5958733 --- Number of Read Commands 0x07 ===== = = === == Solid State Device Statistics (rev 1) == 0x07 0x008 1 0 --- Percentage Used Endurance Indicator |||_ C monitored condition met ||__ D supports DSN |___ N normalized value SATA Phy Event Counters (GP Log 0x11) ID Size Value Description 0x0001 4 0 Command failed due to ICRC error 0x0002 4 0 R_ERR response for data FIS 0x0005 4 0 R_ERR response for non-data FIS 0x000a 4 1 Device-to-host register FISes sent due to a COMRESET
Demzufolge hat die SSD gerade mal 151 Einschaltvorgänge und 116 Aktivstunden hinter sich gebracht. Nö, hier handelt es sich mit höchster Wahrscheinlichkeit um ein defektes Produkt. Dieses Protokoll habe ich auch an den Hersteller geschickt und wie schon geschrieben, geht man dort von einem Hardwarefehler aus.
Ein "Überprüfen" würde vermutlich auch nichts nützen. Denn es war möglich, dass ich eine Datei über den Dateimanager neu anlege, diese mit Daten fülle, den Dateimanager schließe, den Dateimanager neu starte und dann diese Datei einlese. Die Daten waren vorhanden.
Die einzigen Programme, die auf diesen Defekt hinwiesen (im Nachhinein interpretiert), waren die Tools, welche den vermeintlichen Fehler (Stichwort Superblock) beseitigen wollten, hatten zwar die Änderungen vorgenommen - aber am Schluss doch festgestellt, dass der Fehler nach wie vor vorhanden ist. Ähnlich wie GParted, mit dessen Hilfe ich alle Partitionen auf der SSD platt machen wollte; dort hat oberflächlich auch alles funktioniert (gab also keine Fehler beim Durchführen der Änderungen), aber am Ende waren die bisherigen Partitionen noch immer vorhanden. Auch dort muss offensichtlich versucht worden sein, den Cache zu schreiben ... was ja wegen dem Hardware-Defekt nicht geht.
Naja - Pech gehabt. Übrigens, falls es interessiert: Es handelt sich um eine SSD von Intenso. Habe gestern noch ein wenig gestöbert im Netz und da gibt es doch einige Meldungen, die von der Qualität deren Produkte nicht so recht überzeugt sind. Daraus lerne ich: Nächstes Mal doch ein paar Euro mehr investieren ...
-
Ein "Überprüfen" würde vermutlich auch nichts nützen. Denn es war möglich, dass ich eine Datei über den Dateimanager neu anlege, diese mit Daten fülle, den Dateimanager schließe, den Dateimanager neu starte und dann diese Datei einlese. Die Daten waren vorhanden.
Ja, sie waren wahrscheinlich noch im Cache. Das Dateisystem greift aber eine Ebene tiefer auf das Block-Gerät zu und greift nicht direkt auf den Cache zu, um z.B. einen neuen Block zu schreiben.
BTRFS hat man genau wegen dieser Probleme (Bit Rot) entwickelt. Das ZFS konnte man aufgrund der Lizenz nicht im Linux-Kernel einsetzen. Die GPLv2 ist inkompatibel mit der CCDL. Aber leider ist BTRFS nicht für alle Anwendungen geeignet. Datenbanken hassen BTRFS.
-
-
Aber leider ist BTRFS nicht für alle Anwendungen geeignet. Datenbanken hassen BTRFS.
... und BTRFS ist nicht OOTB mit RaspbianOS nutzbar. Ich hatte mal ein System testweise mit BTRFS aufgesetzt weil ich mal testen wollte ob man die BTRFS Snapshots mit raspiBackup nutzen kann. Irgendwie bin ich dann davon wieder abgekommen
-
Gibt es Möglichkeiten, dieses Persistieren softwareseitig anzustoßen?
Neben dem schon genannten, gibt es die Möglichkeit das Dateisystem mit der Option sync zum mounten. Dann werden Daten nicht im Cache vorgehalten, sondern direkt auf den Datenträger geschrieben. Das hat allerdings den Nachteil das es langsamer ist und besonders Flash Speicher schneller kaputt geschrieben werden. Ist also nicht unbedingt zu empfehlen.
QuoteWas meldet die SSD zurück, wenn die Daten nicht persistiert werden können wegen diesem Defekt? Und warum reagiert Linux nicht darauf?
Naja, wenn die SSD defekt ist, wird sie möglicherweise keine Probleme oder nichts melden. Das Dateisystem/Linux weiss dann auch nichts und kann nicht reagieren.
-
Am Alter liegt es definitiv nicht - siehe das Protokoll von smartctl:
Naja - Pech gehabt. Übrigens, falls es interessiert: Es handelt sich um eine SSD von Intenso. Habe gestern noch ein wenig gestöbert im Netz und da gibt es doch einige Meldungen, die von der Qualität deren Produkte nicht so recht überzeugt sind. Daraus lerne ich: Nächstes Mal doch ein paar Euro mehr investieren ...
Mein Hinweis war nur zur Erläuterung, des deiner Meinung nach seltsamen Verhaltens unter Linux gedacht. Wenn das mit den 116 Betriebsstunden ( wg. der obigen Fehlermeldung ) so stimmt, wird die Laufzeit mit Sicherheit nicht das Problem gewesen sein. Ich hatte auch schon mehrmals Probleme mit Produkten von dieser Marke, und diese wären nicht mehr meine erste Wahl. Die Reklamation hat aber immer ohne Probleme geklappt. Schlechter ist, wenn solche Probleme kurz nach dem Garantieende auftreten. Des weiteren sollte man im Hinterkopf behalten, dass die statistische Ausfallwahrscheinlichkeit eines Gerätes am Anfang bzw. zum Ende der Laufzeit, relativ hoch ist. ( Badewannenkurve )
-
-
Danke Euch ... dann ist das "seltsame" Verhalten wohl der SSD geschuldet und nicht dem OS. Mein "Erstaunen" kommt daher, dass ich doch schon Erfahrungen habe mit defekten Festplatten und noch keine mit defekten SSD's. Wieder was gelernt ...