LinuxLiveCD
Wozu braucht man eine LinuxLiveCD
Oft hat man das Problem, dass man einen Fehler mit seinem geliebten Thinkpad hat und 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, dass 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.
Informationen über das Gerät
Alle hier genannten Befehle müssen auf einer Konsole ausgeführt werden. Folgende Konsolenemulatoren sollten euch, je nach LiveCD, bereitstehen. Gnome, KDE und xfce bieten an via ALT-F2 Befehle auszuführen.
Gnome
gnome-terminal
KDE
konsole
xfce
terminal
Sonstige
urxvt
Wenn die LiveCD mit einer grafischen Oberfläche startet könnt ihr auch mit STRG-ALT-F1 auf das tty, einer richtigen Konsole, wechseln. Je nach System ist die grafische Oberfläche dann wieder mit ALT-F2 bzw. ALT-F7 oder ALT-F8 zu erreichen.
BITTE BEACHTET DAS DIE BEFEHLE UNTER HARDWARE TESTEN ALS ROOT AUSGEFÜHRT WERDEN MÜSSEN. SEID VORSICHTIG BEI ROOT AKTIONEN!!!!
Bei Ubuntu reicht es vor jeden root-Befehl einfach ein sudo vorzusetzten. Bei anderen Distributionen muss man sich mit
su root
oder
su -
oder
su
als root einloggen.
Wie finde ich meine Festplatte?
Man hat unter Linux nicht die gewohnten C:, D:, E: etc. Laufwerksbezeichnungen, wie unter Windows. Unter Linux sind die Festplatten unter /dev/ als z.B. sda sdb (manchmal auch hda, hdb etc.) usw. 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.
USB-Geräte anzeigen
Dafür ist bei jeder Distribution das Programm
lsusb
vorhanden. Einfach lsusb eintippen
Bus 001 Device 002: ID 046d:c531 Logitech, Inc. Bus 005 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 006 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 006 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 005 Device 003: ID 045e:00db Microsoft Corp. Natural Ergonomic Keyboard 4000 V1.0 Bus 005 Device 005: ID 0bb4:0c02 HTC (High Tech Computer Corp.) Dream / ADP1 / G1 / Magic / Tattoo (Debug) Bus 006 Device 003: ID 0409:005a NEC Corp. HighSpeed Hub Bus 006 Device 004: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode) Bus 006 Device 005: ID 058f:6362 Alcor Micro Corp. Flash Card Reader/Writer
Somit sieht man dann welche USB-Geräte aktuell angeschlossen sind. Vorsicht: UMTS-Module werden OFT als USB-Geräte erkannt!
PCI/PCIe-Geräte anzeigen
Dafür ist bei jeder Distribution das Programm
lspci
vorhaden. Einfach lspci eintippen
00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09) 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) 00:01.1 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port (rev 09) 00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04) 00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05) 00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5) 00:1c.3 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 4 (rev b5) 00:1c.4 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 5 (rev b5) 00:1c.6 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 7 (rev b5) 00:1c.7 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 8 (rev b5) 00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05) 00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev a5) 00:1f.0 ISA bridge: Intel Corporation P67 Express Chipset Family LPC Controller (rev 05) 00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family SATA AHCI Controller (rev 05) 00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05) 01:00.0 VGA compatible controller: NVIDIA Corporation GF110 [GeForce GTX 570 HD] (rev a1) 01:00.1 Audio device: NVIDIA Corporation GF110 High Definition Audio Controller (rev a1) 02:00.0 USB controller: Etron Technology, Inc. EJ168 USB 3.0 Host Controller (rev 01) 03:00.0 Audio device: Creative Labs X-Fi Titanium series [EMU20k2] (rev 03) 04:00.0 PCI bridge: Integrated Technology Express, Inc. Device 8892 (rev 10) 05:02.0 FireWire (IEEE 1394): VIA Technologies, Inc. VT6306/7/8 [Fire II(M)] IEEE 1394 OHCI Controller (rev c0) 06:00.0 USB controller: Etron Technology, Inc. EJ168 USB 3.0 Host Controller (rev 01) 07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06) 08:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9172 SATA 6Gb/s Controller (rev 11)
Gelegentlich kommt es vor das, gerade bei neuer Hardware, nur UNKNOWN-Devices oder so steht. Dann reicht es als root
update-pciid
einzutippen. Dann synct er die lokale Datenbank mit der Online-Datenbank und dann sollten alle Geräte richtig angezeigt werden. Zum Updaten der PCI-ID-Datenbank wird eine bestehende Internetverbindung vorrausgesetzt. Sollte der PC keine Verbindung haben, man aber mit einem PC eine Internetverbindung haben kann man anhand der Verndor-ID hier auch händisch nachschauen:
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 Abstriche 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.
Festplatte, defekte Sektoren überprüfen
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 überprüfen
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 (eine Vertex3 z.B. 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 ;)
Festplattentemperatur überprüfen
Einige LiveCDs haben hddtemp an Board
hddtemp /dev/sdb
ergibt
/dev/sdb: SAMSUNG HD204UI: 26°C
bei einer SSD kann es zu "Fehlmessungen" kommen, dann wird dort 0, -127 oder 96 angezeigt. Viele SSDs haben keinen Temperatursensors an Board.
RAM überprüfen
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. Nicht selten treten erst sehr spät Speicherfehler auf.
Memtest von einer laufenden Console einer LiveCD auszuführen ist nicht zu empfehlen, da die LiveCD selber auch RAM in Anspruch nimmt welcher nicht getestet werden kann.
Sound überprüfen
Um zu testen ob der Sound funktioniert muss man erstmal schauen ob die Karte ansich erkannt wurde. Entweder mit:
alsamixer
oder
cat /proc/asound/cards
Wenn man es mit dem alsamixer macht, kann man, wenn man mehrere Soundkarten hat, mit F6 durch die Soundkarten umschalten.
Wenn dort die Soundkarte zu finden ist müssen wir der Soundkarte noch Geräusche entlocken. Aplay eignet sich dafür hervorragend und sollte auf jeder LiveCD dabei sein:
aplay /usr/share/sounds/alsa/Noise.wav
Wenn ihr nun nichts hört schaut im Alsamixer ob nicht irgendwas gemutet ist, das sieht man daran das unten MM unter den Reglern steht. Ein grünehinterlegtes OO zeigt an das es entmutet ist. Mit den Pfeiltasten könnt ihr laut/leiser machen, mit m muten/entmuten.
Aplay spielt erstmal nur auf dem Defaultausgabegerät etwas ab. Wenn man nun mehrer Soundkarten hat, z.B. noch einen HDMI/DP-Anschluss, ist das natürlich schlecht.
Aber auch das können wir lösen. Einfach mit
aplay -L
alle Soundkartenausgänge anzeigen lassen.
Wenn wir nun mit aplay -L die Liste der Ausgänge angezeigt bekommen können wir nun mit:
aplay -D default /usr/share/sounds/alsa/Noise.wav
in dem Fall den default-Ausgang ansprechen.
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, welches Modul 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 Modell / System 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.
LinuxLiveCDs
Die gängingen LinuxLiveCDs sollten die Folgenden sein:
Fedora und Ubuntu sollten bekannt sein. Bieten zu den oben genannten Tools auch noch eine komplett installierbare, anfängerfreundliche Linuxumgebung an.
PuppyLinux ist eine Linuxdistribution gerde für älterer Geräte mit wenig RAM.
Knoppix wird eigentlich als reine LiveCD entwickelt. Eine Installation ist zwar auch möglich, aber deren Hauptaugenmerk liegt auf den Live-Betrieb
Etwas spezieller geht es mit grml und gparted zu. Grml ist rein auf testen ausgelegt. Es gibt kein Testtool, ob nun Netzwerk oder Hardware, welches grml nicht an Board hat. Es bietet ebenfalls eine grafische Oberfläche an und lässt sich zudem auch als StandAlone-System installieren. Es bassiert auf Debian-Testing.
Gparted bietet euch eine grafische Oberfläche zum Partitionieren von Festplatten und auch das erstellen von Images / Kopieren von Partitionen an.
Memtest86+, testet den RAM
LiveCD brennen / USB-Stick erstellen
Alle diese LIVE-ISOs lassen sich auch auf einen USB-Stick verfrachten. Dafür gibt es die Programme: