Keine Fehler aber ich verstehe dann die Warnung bei testdisk bestimmt Falsch.
Ist das kein wirklicher Schaden sondern ein Hinweis?
nun, das sind ja zunächst zwei vollkommen unterschiedliche Sachen.
Mit fsck wird das Dateisystem überprüft, das auf der Partition /dev/da7 liegt. Dateisysteme liegen eigentlich immer auf irgendwelchen Partitionen und können eben auch kaputt gehen.
fsck prüft und/oder repariert Dateisysteme.
testdisk meckert etwas an, das an der Geometrie deiner Partitionen liegen würde. Das hat gar nichts mit dem Dateisystem darauf zu tun.
testdisk nutzt dabei das (veraltete) Verständnis, wie Festplatten aufgebaut sind und liest die Informationen aus dem Controller. Die Ausgabe von testdisk würde ich nicht ernst nehmen.
Aber trotzdem mal ein Beispiel für "schlecht gemacht".
Wie schon gesagt, vermute ich sehr stark, dass deine Platte bereits (intern) 4K-Sektoren hat. Sie meldet sich aber als 512B-Sektoren-Platte beim System. Wenn du nun eine Partition so anlegst, dass sie einem vielfachen von 512 entspricht (was ja in der ersten Annahme richtig wäre und deshalb von manch einem Installer auch so gemacht wird), kannst du aber sehr schnell "daneben" liegen und nicht die 4K-Sektor-Grenze treffen. Versteht man das? ich bleibe bei den ganz kleinen Zahlen:
wenn du eine Partition anlegst, die bei 1536 Byte endet, liegst du vollkommen gut, was 512B-Sektoren angeht, benutzt nämlich genau drei davon, 3 x 512 = 1536.
Wenn aber deine tatsächliche Sektoren-Größe 4K sei, also 4096, landest du ja mitten auf einem Sektor und wahrhaftig kann es sogar sein, dass du selbst oder ein Installer noch nicht mal in vielfachen von 512 gerechnet hatte, denn du könntest ja auch eine Partition bei 1500 Byte enden lassen, weil das eine schönere Zahl ist.
Wird klar, was ich meine?
Die verschiedenen Betriebssysteme wissen oft nicht, wie sie vorhandene Information nutzen und sehr viele User kümmern sich darum auch nicht.
Wenn aber Partitionen mitten in einem Sektor enden, ist das sehr schlecht, wenn ein anderes System die Information nun anders handhabt.
Dadurch werden leicht Überschneidungen erkannt, weil ein einziger Sektor ja von zwei Partitionen benutzt werden kann.
Günstigerweise legt man deshalb Partitionen immer genau auf die Grenzen der Sektoren und lässt zwischen ihnen zur Sicherheit auch noch etwas freien Platz. Also, das muss nicht sein, schadet aber auch nichts. Freier Platz nach der letzten Partition ist wichtiger.
Nunja, was spricht dagegen, alle Platten so zu behandeln, dass sie 4K Sektoren hätten? Damit trifft man immer auch 2K, 1K und 512B Sektoren. Und deshalb nehme ich gleich 1M und treffe noch mehr mögliche Sektoren, die es derzeit noch gar nicht gibt. Ist eben sehr viel einfacher zu rechnen.
Mal das Layout von einem meiner zuletzt angefertigten Knoppix-Sticks als Beispiel:
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
pit@Celsius ~:- > mmls -B /dev/da0
GUID Partition Table (EFI)
Offset Sector: 0
Units are in 512-byte sectors
Slot Start End Length Size Description
000: Meta 0000000000 0000000000 0000000001 0512B Safety Table
001: ------- 0000000000 0000204799 0000204800 0100M Unallocated
002: Meta 0000000001 0000000001 0000000001 0512B GPT Header
003: Meta 0000000002 0000000033 0000000032 0016K Partition Table
004: 000 0000204800 0000409599 0000204800 0100M EFI
005: ------- 0000409600 0000614399 0000204800 0100M Unallocated
006: 001 0000614400 0245555199 0244940800 0116G
007: ------- 0245555200 0245759999 0000204800 0100M Unallocated
|
Also, alles zu erklären, würde hier sicher zu weit gehen. Das System meiner Wahl hat leider kein so tolles Tool, wie gparted. Die Ausgabe von mmls zeigt zwei Partitionen, eine 100M große EFI und eine 116G große, die ich mal DATA nenne und es zeigt als Unallocated die freien Bereiche (in diesem Fall 100M) vor und nach jeder Partition. Weiter oben erklärte ich schon, dass ich heute lieber sogar auf 100M gehe und nicht mehr auf 1M. Und ich bitte zu bemerken, dass hier das Tool ebenfalls 512B-Sektoren-Größe ausgibt.
vielleicht noch eine andere Ausgabe zum gleichen Sachverhalt:
|
Quellcode
|
1
2
3
4
5
6
7
|
pit@Celsius ~:- > gpart show da0
=> 34 245759933 da0 GPT (117G)
34 204766 - free - (100M)
204800 204800 1 efi (100M)
409600 204800 - free - (100M)
614400 244940800 2 ms-basic-data (117G)
245555200 204767 - free - (100M)
|
Das mag dazu genügen.
smartctl
Das grafische Tool heißt gsmartcontrol, womit man sich einen Überblick verschaffen kann und dann auch Statistiken zu den Platten ansehen oder (eingeschränkt, vor allem im Betrieb) auch testen kann (womöglich nur als super-user).
Also, wenn hier viele Errors gelistet sind, ist das super schlecht.
Bei HDs kommen immer mal wieder Errors vor (vor allem bei HDs), die nicht zu wichtig genommen werden müssen. Aber ein schlechtes Zeichen sind sie jedenfalls. Und es gibt nicht wenige User, die auf die Angaben trauen und Platten tauschen, wenn smartctl entsprechende Meldungen absetzt.
Also, smartctl ist ja der Befehl, den auch gsmartcontrol nutzt, der aber auch als Dämon laufen kann und so konfiguriert, dass er nicht nur dauerhaft überwachen kann, sondern auch Ereignisse meldet (etwa per Email). Wenn ich damit auf eine meiner Platten sehe und "error" herausfische, dann sehe ich:
|
Quellcode
|
1
2
3
4
5
6
7
8
9
|
pit@Celsius ~:- > smartctl -a /dev/ada0 | grep -i error
without error or no self-test has ever
Error logging capability: (0x01) Error logging supported.
SCT Error Recovery Control supported.
187 Uncorrectable_Error_Cnt 0x0032 100 100 000 Old_age Always - 0
195 ECC_Error_Rate 0x001a 200 200 000 Old_age Always - 0
199 CRC_Error_Count 0x003e 100 100 000 Old_age Always - 0
SMART Error Log Version: 1
No Errors Logged
|
und das ist gut, aber womöglich etwas doof zu lesen und daher der Tip, mit der GUI mal zu spielen.
Wie zuverlässig die Angaben von smartctl wirklich sind, da scheiden sich die Geister der Praktiker. Ich nehme sie nicht allzu ernst und habe es auch nicht als daemon laufen, bin aber auch privat und Endanwender.
Jedenfalls können wir damit viel besser viel mehr sehen, als ohne es.