
Ich habe ein Problem mit einem Server, den ich nicht installiert habe. Der vorherige Mitarbeiter ist nicht mehr hier, um mir etwas zu erklären.
Einige Prozesse sind anscheinend aufgrund eines Festplattenfehlers abgestürzt, daher habe ich in den Protokollen gesucht und Zeilen wie diese gefunden /var/log/messages
:
kernel: [277146.149980] sd 0:1:0:0: [sda] Sense Key : Medium Error [current]
kernel: [277146.149986] sd 0:1:0:0: [sda] Add. Sense: Unrecovered read error
Durch Neustart und Verwendung fsck
wurde das Problem nicht behoben.
Ich habe keine Ahnung, ob die Festplatten auf einem Hardware- oder Software-RAID liegen. Ich weiß, dass LVM nicht auf der Maschine installiert ist. Backup ist hier kein Thema, dieser Server enthält keine Informationen auf seinen Festplatten, wichtige Daten werden über NFS gemountet. Ich kann die Maschine also bei Bedarf neu installieren, ohne mir Gedanken über den aktuellen Inhalt der Festplatten machen zu müssen.
Bei der Maschine handelt es sich um einen Dell PowerEdge R510, auf dem Debian Squeeze 64 Bit läuft. Die Diagnosetools des Herstellers (Dell) laufen nicht auf Debian Squeeze. Ich habe versucht, sie trotzdem zu installieren und auszuführen, aber sie funktionierten nicht, also muss ich die Diagnose manuell durchführen. Hier sind einige Informationen, die ich Ihnen geben kann.
Außerdem habe ich bei Bedarf physischen Zugriff auf die Maschine und habe gesehen, dass nur drei Festplatten vorhanden waren: drei SCSI-Seagate-Festplatten mit jeweils 600 GB.
# lshw -class disk
*-disk:0
description: SCSI Disk
product: Virtual Disk
vendor: Dell
physical id: 1.0.0
bus info: scsi@0:1.0.0
logical name: /dev/sda
version: 1028
size: 1675GiB (1798GB)
capacity: 1675GiB (1798GB)
capabilities: 15000rpm partitioned partitioned:dos
configuration: ansiversion=6 signature=cf241336
Wir sprechen also offensichtlich von einer virtuellen Festplatte mit 1800 GB, die die drei physischen Festplatten mit je 600 GB enthält. Die Konfiguration virtueller Festplatten kann anscheinend über das BIOS erfolgen. Wenn ich also die gesamte Maschine mit neuen Festplatten neu installieren muss, muss ich vor dem Booten einer ISO/Live-CD/PXE ins BIOS gehen, richtig?
# fdisk -l
Disk /dev/sda: 1798.7 GB, 1798651772928 bytes
3 heads, 52 sectors/track, 22519177 cylinders
Units = cylinders of 156 * 512 = 79872 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xcf241336
Device Boot Start End Blocks Id System
/dev/sda1 1 421 32812 de Dell Utility
/dev/sda2 * 434 27320 2097152 c W95 FAT32 (LBA)
/dev/sda3 27320 277715 19530752 83 Linux
/dev/sda4 277728 22519165 1734832129 5 Extended
/dev/sda5 277728 402918 9764864 82 L
Ich nehme an, dies ist die Bestätigung, dass es nur eine Festplatte gibt, eine virtuelle.
# smartctl -i /dev/sda
smartctl 5.40 2010-07-12 r3124 [x86_64-unknown-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
Device: Dell Virtual Disk Version: 1028
Device type: disk
Local Time is: Mon Jun 15 10:28:59 2015 CEST
Device does not support SMART
Es scheint legitim zu sein, da smartctl anscheinend nicht mit virtuellen Laufwerken funktioniert.
# cat /proc/scsi/scsi
Attached devices:
Host: scsi3 Channel: 00 Id: 00 Lun: 00
Vendor: TEAC Model: DVD-ROM DV-28SW Rev: R.2B
Type: CD-ROM ANSI SCSI revision: 05
Host: scsi0 Channel: 01 Id: 00 Lun: 00
Vendor: Dell Model: Virtual Disk Rev: 1028
Type: Direct-Access ANSI SCSI revision: 06
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: SEAGATE Model: ST3600057SS Rev: ES64
Type: Direct-Access ANSI SCSI revision: 05
Host: scsi0 Channel: 00 Id: 01 Lun: 00
Vendor: SEAGATE Model: ST3600057SS Rev: ES64
Type: Direct-Access ANSI SCSI revision: 05
Host: scsi0 Channel: 00 Id: 02 Lun: 00
Vendor: SEAGATE Model: ST3600057SS Rev: ES64
Type: Direct-Access ANSI SCSI revision: 05
Das ist also, was ich bisher habe. Ich nehme an, ich muss neue Festplatten kaufen und die Maschine neu installieren. Ich möchte also wissen: Ist auf dieser Maschine ein RAID konfiguriert? Woher weiß ich das? Weil ich die aktuelle Konfiguration exakt reproduzieren möchte. Ich gebe Ihnen gerne weitere Informationen, wenn Sie welche benötigen.
[BEARBEITEN] Hier ist die Ausgabe des lspci-Befehls.
# lspci
00:00.0 Host bridge: Intel Corporation 5500 I/O Hub to ESI Port (rev 13)
00:01.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 1 (rev 13)
00:03.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 3 (rev 13)
00:07.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 7 (rev 13)
00:09.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 9 (rev 13)
00:0a.0 PCI bridge: Intel Corporation 5520/5500/X58 I/O Hub PCI Express Root Port 10 (rev 13)
00:14.0 PIC: Intel Corporation 5520/5500/X58 I/O Hub System Management Registers (rev 13)
00:14.1 PIC: Intel Corporation 5520/5500/X58 I/O Hub GPIO and Scratch Pad Registers (rev 13)
00:14.2 PIC: Intel Corporation 5520/5500/X58 I/O Hub Control Status and RAS Registers (rev 13)
00:1a.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #4
00:1a.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #5
00:1a.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #2
00:1d.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #1
00:1d.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #2
00:1d.2 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #3
00:1d.3 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #6
00:1d.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #1
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 90)
00:1f.0 ISA bridge: Intel Corporation 82801JIR (ICH10R) LPC Interface Controller
00:1f.2 IDE interface: Intel Corporation 82801JI (ICH10 Family) 4 port SATA IDE Controller #1
00:1f.5 IDE interface: Intel Corporation 82801JI (ICH10 Family) 2 port SATA IDE Controller #2
01:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5716 Gigabit Ethernet (rev 20)
01:00.1 Ethernet controller: Broadcom Corporation NetXtreme II BCM5716 Gigabit Ethernet (rev 20)
02:00.0 Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
03:00.0 InfiniBand: QLogic Corp. InfiniPath QME7342 QDR HCA (rev 02)
06:03.0 VGA compatible controller: Matrox Graphics, Inc. MGA G200eW WPCM450 (rev 0a)
[BEARBEITEN2] So erfahren Sie die Anzahl der verfügbaren Controller:
# megacli -adpCount
Controller Count: 0.
Exit Code: 0x00
So drucken Sie alle Informationen zu den Controllern aus:
# megacli -adpallinfo -aALL
Exit Code: 0x00
Das bedeutet also vermutlich, dass kein Hardware-RAID vorhanden ist?
[BEARBEITEN3]
# ls -l /dev/disk/by-path
total 0
lrwxrwxrwx 1 root root 9 Jun 12 12:19 pci-0000:00:1f.5-scsi-0:0:0:0 -> ../../sr0
lrwxrwxrwx 1 root root 9 Jun 15 13:40 pci-0000:02:00.0-scsi-0:1:0:0 -> ../../sda
lrwxrwxrwx 1 root root 10 Jun 12 12:19 pci-0000:02:00.0-scsi-0:1:0:0-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Jun 12 12:19 pci-0000:02:00.0-scsi-0:1:0:0-part2 -> ../../sda2
lrwxrwxrwx 1 root root 10 Jun 12 12:19 pci-0000:02:00.0-scsi-0:1:0:0-part3 -> ../../sda3
lrwxrwxrwx 1 root root 10 Jun 12 12:19 pci-0000:02:00.0-scsi-0:1:0:0-part4 -> ../../sda4
lrwxrwxrwx 1 root root 10 Jun 12 12:19 pci-0000:02:00.0-scsi-0:1:0:0-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 Jun 12 12:21 pci-0000:02:00.0-scsi-0:1:0:0-part6 -> ../../sda6
# megaclisas-status
-- Controller informations --
-- ID | Model
-- Arrays informations --
-- ID | Type | Size | Status | InProgress
-- Disks informations
-- ID | Model | Status
[BEARBEITEN4]
Der sas2ircu
Befehl war hilfreich (siehediese Seite).
Ich habe es endlich geschafft, herauszufinden, ob RAID verwendet wurde: Starten Sie den Server neu, rufen Sie ein Konfigurationsdienstprogrammmenü auf (Strg + C) und sehen Sie, dass RAID0 konfiguriert ist. Ich habe den Befehl smartctl auf den /dev/sg*
Festplatten verwendet (smartctl funktionierte nicht /dev/sda*
).
smartctl -t long /dev/sg2
smartctl -l selftest /dev/sg2
Endlich wird mir angezeigt, bei welcher Festplatte Segmente ausgefallen sind. Problem also gelöst!
Antwort1
Diese Meldung zeigt an, dass eine oder mehrere der drei Festplatten ausfallen oder dass der Controller/die Kabel ausfallen. Das gesamte Setup scheint ein RAID0 aus drei Festplatten zu sein – eine sehr riskante Konfiguration. Ich würde so etwas tun: Sichern Sie die Daten (falls Sie möchten), demontieren Sie das RAID und holen Sie sich JBOD. Testen Sie jede einzelne Festplatte. Stellen Sie fest, welches Teil ausfällt. Ersetzen Sie es und konfigurieren Sie RAID 1. Stellen Sie das System wieder her/installieren Sie es neu.
Antwort2
Die lspci-Ausgabe:
02:00.0 Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
zeigt das Vorhandensein einer Hardware-RAID-Karte an.
Das richtige Tool zur Verwaltung dieser Art von Karte ist: sas2ircu
Weitere Informationen finden Sie hier: