Hallo Linuxer,
ich habe grade ein Problem, und keine Ahnung wo es herkommt:
System: AMD64X2, 4GB RAM, NVIDIA Chipsatz, 2 SATA-Platten (80-GB ExcelStore und 160 GB SAMSUNG)
BS ist Debian Lenny, Kernel 2.6.26-1-amd64
Seit ca. zwei Wochen friert der Rechner zeitweise ein, nach ca. 1 bis 2 Minuten läuft dann wieder alles, nach einem Spindown und Spinup der 80 GB - Platte. Der Fehler tritt unregelmässig auf, bei verschiedenen Anwendungen, und ist nicht reproduzierbar.
Das Intervall zwischen zwei solchen "Stehern" ist zwischen 30 Minuten und 6 Stunden. Ich habe mich im Netz schlau gemacht und beide Platten mit "badblocks" und den SMART-Tests sowie mit e2fscheck und Reiserfscheck überprüft, keine Fehler.
Test-Tools der beiden Hersteller ergaben ebenfalls keine Fehler.
kern.log sieht so aus:
Dec 1 10:06:25 Donald kernel: [ 4788.255283] ata1: EH in SWNCQ mode,QC:qc_active 0x7 sactive 0x7
Dec 1 10:06:25 Donald kernel: [ 4788.255290] ata1: SWNCQ:qc_active 0x3 defer_bits 0x4 last_issue_tag 0x1
Dec 1 10:06:25 Donald kernel: [ 4788.255291] dhfis 0x3 dmafis 0x0 sdbfis 0x0
Dec 1 10:06:25 Donald kernel: [ 4788.255294] ata1: ATA_REG 0x50 ERR_REG 0x0
Dec 1 10:06:25 Donald kernel: [ 4788.255296] ata1: tag : dhfis dmafis sdbfis sacitve
Dec 1 10:06:25 Donald kernel: [ 4788.255298] ata1: tag 0x0: 1 0 0 1
Dec 1 10:06:25 Donald kernel: [ 4788.255300] ata1: tag 0x1: 1 0 0 1
Dec 1 10:06:25 Donald kernel: [ 4788.255309] ata1.00: exception Emask 0x0 SAct 0x7 SErr 0x0 action 0x6 frozen
Dec 1 10:06:25 Donald kernel: [ 4788.255315] ata1.00: cmd 61/e8:00:6d:f1:7f/02:00:03:00:00/40 tag 0 ncq 380928 out
Dec 1 10:06:25 Donald kernel: [ 4788.255316] res 40/00:01:01:4f:c2/00:00:00:00:00/00 Emask 0x4 (timeout)
Dec 1 10:06:25 Donald kernel: [ 4788.255319] ata1.00: status: { DRDY }
Dec 1 10:06:25 Donald kernel: [ 4788.255324] ata1.00: cmd 61/68:08:5d:f4:7f/00:00:03:00:00/40 tag 1 ncq 53248 out
Dec 1 10:06:25 Donald kernel: [ 4788.255325] res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
Dec 1 10:06:25 Donald kernel: [ 4788.255327] ata1.00: status: { DRDY }
Dec 1 10:06:25 Donald kernel: [ 4788.255332] ata1.00: cmd 60/20:10:af:1a:4f/00:00:08:00:00/40 tag 2 ncq 16384 in
Dec 1 10:06:25 Donald kernel: [ 4788.255333] res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
Dec 1 10:06:25 Donald kernel: [ 4788.255335] ata1.00: status: { DRDY }
Dec 1 10:06:25 Donald kernel: [ 4788.255341] ata1: hard resetting link
Dec 1 10:06:26 Donald kernel: [ 4788.835296] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
Dec 1 10:06:26 Donald kernel: [ 4788.866416] ata1.00: configured for UDMA/133
Dec 1 10:06:26 Donald kernel: [ 4788.866436] ata1: EH complete
Dec 1 10:06:26 Donald kernel: [ 4788.866546] sd 0:0:0:0: [sda] 160836480 512-byte hardware sectors (82348 MB)
Dec 1 10:06:26 Donald kernel: [ 4788.866565] sd 0:0:0:0: [sda] Write Protect is off
Dec 1 10:06:26 Donald kernel: [ 4788.866568] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
Dec 1 10:06:26 Donald kernel: [ 4788.866599] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
Ich bin jedenfalls mit meinem Latein am Ende, ich hoffe es kann jemand helfen.
Danke im Voraus
Borowitsch
-
Linux 14.981 Themen, 106.344 Beiträge
Wenn du eine SATA Festplatte hast, brauchst du hdparm nicht. Mit hdparm schaltet man den UDMA Modus bei IDE Festplatten ein (man kann ersatzweise den UDMA Modus bei einer IDE Festplatte mit der Kernel-Option "USE DMA BY DEFAULT" aktivieren, ist aber bei den neueren Kerneln veraltet) . Aber bei SATA muß man das nicht tun. SATA Festplatten werden wie SCSI Festplatten vom Linuxkernel angesteuert. Ich wüßte nicht das man bei SATA Festplatten den UDMA Modus einschalten kann.
Ich habe hier auch Debian lenny mit einem AMD64 bit Prozessor und habe hdparm nicht installiert.
In den neueren Linuxkernel versucht der Treiber selbst den passenden Modus einzuschalten.
Vielleicht ist in der /etc/hdparm.conf Datei ein Fehler. /etc/hdparm.conf wird automatisch installiert, wenn man das Paket hdparm installiert.
Lösche mal die Datei /etc/hdparm.conf oder verschiebe sie. Oder deinstallier das Paket hdparm am besten.
Paketbeschreibung hdparm von Debian lenny:
hdparm
Festplattenparameter für hohe Leistung einstellen
Abfragen/Setzen der Festplattenparameter für Linux-IDE-Laufwerke.
Primärer Gebrauch ist die Aktivierung von irq-unmasking und IDE
multiplemode.
Oder der acpid macht Probleme.
/etc/acpi/events$ ls
powerbtn powerbtn-acpi-support
Ich habe im selbst kompilierten Kernel alle acpid Funktionen deaktiviert:
Power management options ---> ACPI (Advanced Configuration and Power Interface) Support ---> ACPI (Advanced Configuration and Power Interface) Support │ │
│ │ [*] Deprecated /proc/acpi files │ │
│ │ [*] Deprecated power /proc/acpi directories │ │
│ │ [*] Future power /sys interface │ │
│ │ [*] Deprecated /proc/acpi/event support │ │
│ │ AC Adapter │ │
│ │ Battery │ │
│ │ Button │ │
│ │ Fan │ │
│ │ Processor │ │
│ │ ASUS/Medion Laptop Extras │ │
│ │ Toshiba Laptop Extras │ │
│ │ [ ] Debug Statements │ │
│ │ Smart Battery System │ │
│ │
Ich habe nur ein paar Verzeichnisse angeben, aber alle anderen Optionen deaktiviert.
Ich nutze dieses Mainboard von ASROCK (mit NForce Chipsatz) :
http://www.asrock.com/mb/overview.asp?Model=939N68PV-GLAN
Ich kann dir nur anbieten meine Kernelkonfigurationsdatei config per E-mail zu senden. Die kannst du in das Verzeichnis /usr/src/linux-source-2.6.26 kopieren und gibst den Befehl
"make && make modules && make modules_install" in der Konsole ein und installierst den Betriebsystemkern /usr/src/linux-source-2.6.26/arch/x86/boot/bzImage nach /boot/vmlinuz-2.6.26-10-AMD64.
Danach startest du das Script update-grub als root. Damit wird die Konfigurationsdatei /boot/menu.lst aktualisiert.
Um den Betriebsystemkern zu übersetzen mußt du folgende Pakete installieren:
-build-essential
-linux-sources-2.6.26-10
-libncurses5-dev
Geh in das Verzeichnis /usr/src/linux-source-2.6.26 rein und tippe den Befehl "make menuconfig" in die Konsole. Dabei öffnet sich ein Dialog in dem normalerweise alle wichtigen Kerneloptionen aktiviert sein sollten , wenn du ein Nforce basiertes mainboard nutzt. Eventuell ist der Sound falsch eingestellt:
Hier gibt es Informationen wie der richtige Sound Treiber für NForce heißt:
http://www.nvidia.de/object/linux_nforce_1.23_de.html
Mehr kann ich dir auch nicht empfehlen. Den Standardkernel von Debian nutze ich nicht.