LinuxLiveCD
Wofür brauch ich eine LinuxLiveCD
Oft hat man das Problem, dass man einen Fehler mit seinem geliebten Thinkpad hat und oft erstmal nicht weiß, ob ein Hardware- oder Softwareproblem vorliegt. Egal, ob das Problem auf Windows, Linux, Unix, MacOS oder sogar OS/2 vorliegt, ist es oft hilfreich ein Betriebsystem von CD zu booten. um einfach ausschließen zu können, ob ein Hardwareproblem vorliegt.
Diese Seite soll einen groben Überblick über die gängigen Linux Live CDs und deren Funktionsumfang geben.
Manchmal möchte man auch einfach nur mal schauen was "die andere Seite" so bietet. Hierzu gibt es am Ende der Seite einige Informationen.
Hardware testen
Jede hier verlinkte LiveCD bringt alle gängingen Treiber mit die zum Grundbetrieb ausreichen. Leider muss man, gerade wenn es um ClosedSource-Treiber geht, auch Abschnitte machen. Oft ist anstelle des Nvidia-Treibers "nur" der Nouveau-Treiber integriert und für die AMD-Karten der Radeon. Diese können zwar oft ein Bild darstellen haben aber Probleme mit 3D und Stromspartechniken.
Für den Hardware-Check aber mehr als ausreichend.
Was ist meine Festplatte?
Man hat unter Linux nicht das gewohnte C/D/E etc pp Format wie unter Windows. Unter Linux sind die Festplatten unter /dev/ als z.B. sda sdb etc pp zu finden. Die jeweilige Partition einer Festplatte ist die Zahl hinter sda also Zum Beispiel /dev/sda1 Um rauszufinden welche Festplatte angeschlossen ist, kann man einerseits dmesg nutzten oder smartmontools.
dmesg | grep sd | grep logical
Als Ausgabe bekommt man z.B.:
[ 1.573718] sd 0:0:0:0: [sda] 117229295 512-byte logical blocks: (60.0 GB/55.8 GiB)
Somit ist die verbaute HDD sda. Die zweite Platte, ggf. im Ultrabay-Schachte, wäre dann sdb. Alternativ kann man mit
smartctl -a /dev/sda | grep -i "device Model"
sehen das die sda-Festplatte eine
Device Model: OCZ-VERTEX3
ist.
Festplatte, defekte Sektoren checken
Für diese Aufgabe gibt es das Tool badblocks. Bei badblocks muss man aufpassen, benutzt man die falschen Schalter werden alle Daten überschrieben. Eine sicherer Möglichkeit zum checken der Festplatte, und zum behalten der Daten, mit badblocks ist:
badblocks -vs /dev/sda
Der Vorgang dauert natürlich je nach Festplattengröße u.U, einige Stunden.
Festplatte, Health-Status checken
Für diese Aufgabe gibt es das Tool smartmontools. Um einen überblick aller bisher gesammelten Daten zu kriegen reicht ein:
smartctl -a /dev/sda
als Ausgabe erhält man dann:
smartctl 5.43 2012-06-30 r3573 [x86_64-linux-3.5.3-1-ARCH] (local build) Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net === START OF INFORMATION SECTION === Model Family: SandForce Driven SSDs Device Model: OCZ-VERTEX3 Serial Number: OCZ-M4UX04RDGF216K51 LU WWN Device Id: 5 e83a97 e107fa043 Firmware Version: 2.15 User Capacity: 120.034.123.776 bytes [120 GB] Sector Size: 512 bytes logical/physical Device is: In smartctl database [for details use: -P show] ATA Version is: 8 ATA Standard is: ACS-2 revision 3 Local Time is: Wed Sep 12 01:15:55 2012 CEST 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 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: ( 2097) seconds. Offline data collection capabilities: (0x7f) SMART execute Offline immediate. Auto Offline data collection on/off support. Abort 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: ( 1) minutes. Extended self-test routine recommended polling time: ( 48) minutes. Conveyance self-test routine recommended polling time: ( 2) minutes. SCT capabilities: (0x0021) SCT Status 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 120 120 050 Pre-fail Always - 0/0 5 Retired_Block_Count 0x0033 100 100 003 Pre-fail Always - 0 9 Power_On_Hours_and_Msec 0x0032 099 099 000 Old_age Always - 1089h+22m+15.040s 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 245 171 Program_Fail_Count 0x0032 000 000 000 Old_age Always - 0 172 Erase_Fail_Count 0x0032 000 000 000 Old_age Always - 0 174 Unexpect_Power_Loss_Ct 0x0030 000 000 000 Old_age Offline - 24 177 Wear_Range_Delta 0x0000 000 000 000 Old_age Offline - 0 181 Program_Fail_Count 0x0032 000 000 000 Old_age Always - 0 182 Erase_Fail_Count 0x0032 000 000 000 Old_age Always - 0 187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0 194 Temperature_Celsius 0x0022 030 030 000 Old_age Always - 30 (Min/Max 30/30) 195 ECC_Uncorr_Error_Count 0x001c 100 100 000 Old_age Offline - 0/0 196 Reallocated_Event_Count 0x0033 100 100 003 Pre-fail Always - 0 201 Unc_Soft_Read_Err_Rate 0x001c 100 100 000 Old_age Offline - 0/0 204 Soft_ECC_Correct_Rate 0x001c 100 100 000 Old_age Offline - 0/0 230 Life_Curve_Status 0x0013 100 100 000 Pre-fail Always - 100 231 SSD_Life_Left 0x0013 100 100 010 Pre-fail Always - 0 233 SandForce_Internal 0x0000 000 000 000 Old_age Offline - 432 234 SandForce_Internal 0x0032 000 000 000 Old_age Always - 437 241 Lifetime_Writes_GiB 0x0032 000 000 000 Old_age Always - 437 242 Lifetime_Reads_GiB 0x0032 000 000 000 Old_age Always - 574 SMART Error Log not supported SMART Self-test Log not supported 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.
Folgende Werte sind hier Grundsätzlich erstmal interessant:
- RAW_READ_ERROR_RATE Das gibt aus wieviele Lesefehler es bis dato gab. Solange THRESH unter WORST ist ist alles tuffig
- POWER_ON_HOUERS_AND_MSEC gibt an wie lange die SSD/HDD insgesamt schon lief
- POWER_CYCLE_COUNT ist bei einer SSD uninteressant, bei einer HDD ist dies sehr interessant.
Bei einer SSD gibt es noch interessantere Werte:
- LIFETIME_WRITES_GIB und LIFETIME_READS_GIB .. sollte selbsterklärend sein :)
Da drunter kommen noch zwei wichtige Informationen:
- SMART_ERROR_LOG_VERION: 1
- NO ERRORS LOGGED
und
- SMART SELF-TEST log ....
- hier stehen dann Informationen über den Selftest.
Nicht jede HDD / SSD unterstützt Error-Log (meine Vertex3 zb nicht) und Self-Test. Der "Nachteil" an SMART ist das es keine festen Normen für SMART gibt. Jeder Hersteller implementiert es so wie er will. D.h. die Daten sind nur bedingt glaubwürdig, gerade wenn da sowas steht wie "Kein Fehler" oder so. Wenn irgendwo ein Fehler aber geschrieben steht sollte man sich um seine Datensicherheit schon einen Kopf machen ;)
RamChecken
Ram testen geht, im vergleich zum Festplatten checken, relativ einfach. Oft haben die LiveCDs im Grub-Menu den Eintrag MemTest86+. Diesen einfach auswählen und den Test mindestens 24h laufen lassen. Oft sind 48h besser. Ram kann erst sehr spät mit Fehler rauskommen. Memtest von einer laufenden Console einer LiveCD auszuführen ist nicht zu empfehlen, da die LiveCD selber auch Ram verbraucht welcher nicht getestet werden kann.
Temperaturen überprüfen
Jede aktuelle LiveCD hat lm_sensors an Board. Dies ist relativ leicht zu bedienen. Am Anfang tippt man einfach nen:
sensors-detect
ein. Da braucht man eigentlich nur lange Enter drücken. Nachdem der Detekt durchlief listet er auf welche Module für welches Gerät zuständig ist Hier ein Beispiel meines CoreI7 aufm GByte-Board (x200s Daten werden nachgereicht, habs gerade nicht zur Hand)
Driver `it87': * ISA bus, address 0x290 Chip `ITE IT8728F Super IO Sensors' (confidence: 9) Driver `coretemp': * Chip `Intel digital thermal sensor' (confidence: 9)
Also muss man mit
modprobe it87 modprobe coretemp
beide Module laden und bekommt danach bei einem
sensors
folgende Ausgaben
coretemp-isa-0000 Adapter: ISA adapter Physical id 0: +36.0°C (high = +80.0°C, crit = +98.0°C) Core 0: +30.0°C (high = +80.0°C, crit = +98.0°C) Core 1: +31.0°C (high = +80.0°C, crit = +98.0°C) Core 2: +35.0°C (high = +80.0°C, crit = +98.0°C) Core 3: +31.0°C (high = +80.0°C, crit = +98.0°C)
it8728-isa-0290 Adapter: ISA adapter in0: +1.04 V (min = +0.00 V, max = +3.06 V) in1: +2.02 V (min = +0.00 V, max = +3.06 V) in2: +2.95 V (min = +0.00 V, max = +3.06 V) in3: +2.99 V (min = +0.00 V, max = +3.06 V) in4: +0.08 V (min = +0.00 V, max = +3.06 V) in5: +1.27 V (min = +0.00 V, max = +3.06 V) in6: +1.50 V (min = +0.00 V, max = +3.06 V) 3VSB: +3.36 V (min = +0.00 V, max = +6.12 V) Vbat: +3.29 V fan1: 1336 RPM (min = 0 RPM) fan2: 1110 RPM (min = 0 RPM) fan3: 1400 RPM (min = 0 RPM) fan4: 1896 RPM (min = 0 RPM) temp1: +37.0°C (low = +127.0°C, high = +127.0°C) sensor = thermistor temp2: +25.0°C (low = +127.0°C, high = +127.0°C) sensor = thermistor temp3: +26.0°C (low = +127.0°C, high = +80.0°C) sensor = thermistor intrusion0: ALARM
Es werden also nicht nur Temperaturen ausgelesen sondern auch die Stromversorgung und Lüfter. Je nach Model / Board können die Informationen anders aussehen. Hier beim coreI7, ab Core2Duo sollte die Unterstützung gelten, wird CoreTemp unterstützt was für jede Core die Temperatur ausliest. PhysicalID ist die Headspreader-Temperatur welche auch u.a. auf ark.intel.com als max. Temp angegeben wird. Die restlichen Sensoren, temp1/2/3 sind in dem Fall Motherboard/Umgebungsluft-Sensoren.