Wie vermeide ich ein Hochfahren der Festplatte beim Systemstart? (Ubuntu von SSD)

8

Dank hdparm -B1 /dev/sdbmeiner Festplatte dreht sich beim Einschalten beim Booten nicht mehr hoch. Nach Abschluss der BIOS-POST-Meldungen und dem Starten von Ubuntu erhält die Festplatte jedoch ein Signal über das SATA-Datenkabel und dreht sich hoch.

Wenn Sie das Datenkabel belassen (aber immer noch mit angeschlossenem SATA-Stromkabel), kann das System vollständig von meiner SSD gestartet werden, ohne die Festplatte zu drehen.

Was bewirkt, dass sich die Festplatte dreht? Vielleicht Grub2?


Edit: Nein, scheint nicht Grub2 zu sein, das das Laufwerk hochfährt. Ich habe Grub so eingerichtet, dass sein Menü ohne Timer angezeigt wird. Nichts passiert, bis ich die Ubuntu-Standard-Boot-Option drücke, und einige Sekunden später dreht sich das Laufwerk.


Edit: dmesg | grep sdb:

[    7.080043] ata2.00: qc timeout (cmd 0xef)
[    7.080057] ata2.00: failed to IDENTIFY (SPINUP failed, err_mask=0x4)
[    9.830035] ata2: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[    9.836555] ata2.00: ATA-8: SAMSUNG HD105SI, 1AJ10001, max UDMA/133
[    9.836564] ata2.00: 1953525168 sectors, multi 0: LBA48 NCQ (depth 31/32)
[    9.842364] ata2.00: configured for UDMA/133
[    9.842644] scsi 1:0:0:0: Direct-Access     ATA      SAMSUNG HD105SI  1AJ1 PQ: 0 ANSI: 5
[    9.843249] sd 1:0:0:0: [sdb] 1953525168 512-byte logical blocks: (1.00 TB/931 GiB)
[    9.843270] sd 1:0:0:0: Attached scsi generic sg1 type 0
[    9.843487] sd 1:0:0:0: [sdb] Write Protect is off
[    9.843497] sd 1:0:0:0: [sdb] Mode Sense: 00 3a 00 00
[    9.843590] sd 1:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[    9.844091]  sdb:
[    9.845127] scsi 2:0:0:0: CD-ROM            ATAPI    iHDS118   5      RL0C PQ: 0 ANSI: 5
[    9.851182] sr0: scsi3-mmc drive: 48x/48x cd/rw xa/form2 cdda tray
[    9.851191] Uniform CD-ROM driver Revision: 3.20
[    9.851554] sr 2:0:0:0: Attached scsi CD-ROM sr0
[    9.851802] sr 2:0:0:0: Attached scsi generic sg2 type 5
[    9.942896]  sdb1
[    9.943773] sd 1:0:0:0: [sdb] Attached SCSI disk
Oliver
quelle
Was hast du auf der Festplatte? Vielleicht versucht ureadahead, etwas Unbedeutendes zwischenzuspeichern? Könnten Sie auch die zugehörigen Einträge / etc / fstab für das Laufwerk veröffentlichen?
M. Tibbits
Meine Festplatte enthält Daten wie manuelle PDF-Dateien, StarTrek-Episoden, ... Keine Programmdateien, keine Konfigurationsdateien oder so.
Oliver
1
fstab => / dev / sdb1 / media / data ext2 noatime, user, noauto 0 2
Oliver

Antworten:

0

Ziemlich sicher, dass es das Kernelmodul für den Controller ist, das nach Festplatten sucht, das bewirkt, dass sich Ihre Festplatte dreht. Wenn ich etwas falsch liege und es sich wirklich um ein Modul für Ihre Festplatte handelt, können Sie das Laden dieses Moduls während des Startvorgangs blockieren. Schauen Sie sich die Blacklists unter an /etc/modprobe.d/.

djeikyb
quelle
Klingt einfach. Muss ich nur eine Zeile "sd" in die blacklist.conf einfügen? Wie wäre es mit der SSD, von der ich annehme, dass sie auch mit dem Modul SD gestartet wird?
Oliver
Eheh, offensichtlich ist es unerwünscht, das SD-Modul auf die schwarze Liste zu setzen. Ich denke, die einzige Hoffnung wäre, wenn Ihre Festplatte ein modulspezifisches Modul benötigt. Aber es beantwortet die Frage "Was bewirkt, dass sich die Festplatte dreht?".
Djeikyb
1

Ich denke, Sie wollten hdparm -snicht sagen , -B1was APM-kompatible Festplatten (was so ziemlich nur Laptop-Festplatten bedeutet) auffordert, nach einer kurzen Zeit der Inaktivität automatisch in den Standby-Modus zu wechseln. Auch Western Digital-Festplatten scheinen den -sBefehl zum Einschalten im Standby-Modus nicht zu akzeptieren , haben jedoch einen Jumper auf der Rückseite, mit dem Sie ihn aktivieren können.

Der Kernel-SD-Treiber (scsi disk) startet die Festplatte beim ersten Zugriff, was beim Booten zum Scannen der Partitionstabelle geschieht. Es wird auch das Laufwerk nach dem Aufwecken Neustart von standardmäßig suspendieren, aber Sie können das deaktivieren , indem er 0an /sys/block/sda/device/scsi_disk/*/manage_start_stop.

Normalerweise mache ich das und setze dann Laufwerke, mit denen ich hdparm -ynach einem Neustart nicht arbeiten möchte, manuell aus .

Mein letztes Motherboard-BIOS würde die Laufwerke, die im Standby-Modus eingeschaltet wurden, einfach nicht erkennen, aber mein neues Asus Sandy Bridge One ist anscheinend "intelligent" genug, um zu bemerken, dass sich das Laufwerk im Standby-Modus befindet, und es zu starten.

psusi
quelle
Nein, ich meinte -B1. Die Option -s legt nur die Spin-Down-Zeit im Leerlauf fest, wie Sie beschrieben haben. Zum Beispiel kann -B255 Laufwerke auf "konstanten Lauf" setzen, um ein Herunterfahren, Hochfahren usw. zu verhindern und so die Lebensdauer der Festplatte auf einigen Laptops zu erhöhen (afaik, selbst wenn Sie einen -s-Timer einstellen, wird dies dann ignoriert). Das Schreiben von 0 in / sys / block / sdb / ... funktioniert wie ein Zauber in Bezug auf den Lebenslauf von STR / S3, danke! Ein hochgefahrenes Laufwerk dreht sich wieder hoch und ein heruntergefahrenes Laufwerk bleibt beim Fortsetzen heruntergefahren. Perfekt! :)
Oliver
Verdammt ... nach einem Neustart zeigt / sys / block / sdb / ... wieder "1" an. Daher lässt die Wiederaufnahme von STR / S3 die Festplatte in jedem Fall immer noch hochfahren.
Oliver
@Oliver: nein das ist -S, nicht -s.
Psusi
Hoppla! Entschuldigung, du hast recht. Ich habe -S verwendet, um eine Spindown-Zeit einzustellen. Ich erinnere mich, dass ich -s ... verwendet habe, einschließlich der Flagge --yes-i-know-what-i-mache-. Aber das war nach der Verwendung von -B1. Die Option -s schien keine weiteren Auswirkungen auf mein System zu haben.
Oliver
0

Ich würde die Protokolle für sdb (1) nachschlagen, beginnend mit dmesg:

dmesg | grep /dev/sdb
Benutzer unbekannt
quelle
Ich habe mir dmesg bereits angesehen, weiß aber nicht, wie ich die Zeilen interpretieren soll (siehe oben). Irgendwelche Ideen? Vielen Dank.
Oliver
Nein, tut mir leid, keine Ideen. Aber ich bin nicht im HDD-Geschäft, also vielleicht jemand anderes ...
Benutzer unbekannt
@Oliver Vielleicht könnte es helfen, die Zeilen auf paste.ubuntu.com zu posten und einen Link anzugeben .
Nanofarad
@ObsessiveFOSS: Ich denke, er hat diese Zeilen in seinen Beitrag eingefügt.
Benutzer unbekannt
0

Linux sucht beim Booten auf allen Festplatten nach Partitionen und liest daher die Partitionstabelle aller angeschlossenen Festplatten. Dies allein würde Ihr Spin-up verursachen, aber es kann zusätzliche Ursachen geben.

Für eine eingehende Analyse erstellt AFAIK, die Backend-Tools für ureadahead, eine Liste der Geräteblöcke, die während des Startvorgangs gelesen werden. Sie können die Protokolle verwenden, um zu bestimmen, welche Festplattenblöcke gelesen werden. Dies ist ein erster Schritt, um die Ursache Ihrer Spin-ups zu ermitteln.

Träumer
quelle