HDD nicht automatisch beim Systemstart hochfahren
Der Martin
- sonstiges
0 Matthias Apsel0 Der Martin0 Alexander (HH)0 Der Martin0 michat0 Alexander (HH)
Hallo,
jetzt habe ich doch mal eine Frage ausgerechnet in einem Bereich, in dem ich eigentlich dachte, da kenne ich mich gut aus: PC-Hardware und Konfiguration.
Gegeben sei ein PC-System mit einer SSD, auf der das OS (Linux) und die sonstige Software installiert ist, und einer konventionellen HDD, die als reine Daten-Partition genutzt wird, und das nur gelegentlich. Beide Speichermedien sind per SATA (AHCI) angeschlossen.
Ich möchte nun eigentlich vermeiden, dass beim Einschalten des PCs bzw. beim Starten des OS die HDD mit anläuft. Ich würde sie gern "auf Standby" halten, so dass sie erst anläuft, wenn sie tatsächlich angesprochen wird. - Früher hätte ich versucht, die HDD einfach nicht im BIOS-Setup bekanntzugeben, aber die Zeiten sind ja lange vorbei (außerdem wäre sie beim Einschalten der Versorgungsspannung doch erstmal angelaufen).
Habe ich da eine Chance? Wenn ja, wie?
So long,
Martin
Om nah hoo pez nyeetz, Der Martin!
Ich möchte nun eigentlich vermeiden, dass beim Einschalten des PCs bzw. beim Starten des OS die HDD mit anläuft.
Ich denke, das wird nicht möglich sein, vor allem wegen
(außerdem wäre sie beim Einschalten der Versorgungsspannung doch erstmal angelaufen)
Ich würde sie gern "auf Standby" halten, so dass sie erst anläuft, wenn sie tatsächlich angesprochen wird.
Das Betriebssystem bietet doch Energiesparoptionen. Unter Windows Festplatte ausschalten nach n Minuten. Vielleicht reicht es dir schon, wenn du die Zeit für diese Festplatte (ich weiß nicht, ob es separate Einstellmöglichkeiten gibt) auf ein Minimum setzt,
Matthias
Hallo,
Das Betriebssystem bietet doch Energiesparoptionen. Unter Windows Festplatte ausschalten nach n Minuten. Vielleicht reicht es dir schon, wenn du die Zeit für diese Festplatte (ich weiß nicht, ob es separate Einstellmöglichkeiten gibt) auf ein Minimum setzt,
ich weiß, diese Möglichkeit gibt es - aber mir geht es ja gerade darum, dass die Platte gar nicht erst hochfährt. Hauptsächlich wegen des Geräuschs beim Einschalten. Ich hatte gehofft, es gäbe eine Möglichkeit, den Rechner zunächst geräuschlos zu starten, und die "große" Platte erst bei Bedarf im Betrieb zuzuschalten.
Ich dachte da an Staggered Spin-Up oder PUIS und hatte gehofft, dass vielleicht schon mal jemand Erfahrungen damit gesammelt hätte.
Schönen Sonntag,
Martin
Moin Moin!
Ich dachte da an Staggered Spin-Up oder PUIS und hatte gehofft, dass vielleicht schon mal jemand Erfahrungen damit gesammelt hätte.
Das findest Du fast ausschließlich im Server-Umfeld, wenn Platten an einem Hardware-RAID-Controller hängen, typischerweise in einer Storage-Lösung. Und dann eben auch nur, um zu verhindern, dass beim Hochfahren des Systems alle Platten simultam Maximalleistung aus dem Netzteil fordern. Wenn sich die Platten erst einmal drehen, dann bleiben sie in Rotation, bis jemand das System runterfährt oder den Stecker zieht.
Was versuchst Du eigentlich zu optimieren?
Wenn Du das System nicht ständig brauchst, dann lasse es abgeschaltet, wecke es manuell oder per WOL auf. (Oder alternativ über meine Bastelei aus der Zeit vor WOL, ACPI und APM.) Das spart deutlich mehr Energie als nur die eine Platte abzuschalten. Wenn Du nur die Datenplatte nicht ständig brauchst, das System aber dauernd laufen soll, dann überlasse dem Betriebssystem die Energieverwaltung. Lasse nicht genutzte Platten anhalten und bei Bedarf wieder aufwecken. Das einmalige "sinnlose" Hochfahren der "ungenutzten" Platten fällt bei einem dauernd laufenden System nicht weiter auf.
Wenn Du unbedingt den Lötkolben schwingen willst: SATA ist hot-plug-fähig. Sieh Dir den Power-Stecker mal genau an, zunächst wird GND verbunden, dann je eine der je drei Leitungen für +3,3V, +5V und +12V ("pre-charge"), dann die jeweils zwei anderen Leitungen für jede der drei Versorgungsspannungen. Mit etwas Phantasie und ein paar Relais-Kontakten oder MOS-FETs läßt sich da durchaus etwas aufbauen, das die Platte normgemäß von den Versorgungsspannungen abtrennt und wieder mit ihnen verbindet. Dann brauchst Du nur noch ein oder zwei Bit aus einem GPIO oder einem ungenutzten Port, um die Schaltelektronik zu steuern, und einen größeren Haufen Patches, damit die Platte nach ausreichend Leerlauf erst logisch, dann elektrisch abgetrennt wird, und bei Bedarf erst elektrisch, dann logisch wieder angedockt wird. Von solchen Basteleien würde ich mittlerweile allerdings sehr viel Abstand halten.
Alexander
Hallo,
Was versuchst Du eigentlich zu optimieren?
sagte ich doch: Die Geräuschentwicklung. Ich will ein System, das einen Großteil der Alltags-Aufgaben (Internet, e-Mail, Audio) lautlos erledigen kann, aber im Bedarfsfall auch auf das Videoarchiv auf ein bis zwei 1TB-Platten zugreifen kann.
[...] Das spart deutlich mehr Energie als nur die eine Platte abzuschalten.
Darum geht es mir nicht, wie gesagt.
Das einmalige "sinnlose" Hochfahren der "ungenutzten" Platten fällt bei einem dauernd laufenden System nicht weiter auf.
Bei einem System, das nicht dauernd läuft, sondern nur bei Bedarf eingeschaltet wird, schon.
Wenn Du unbedingt den Lötkolben schwingen willst: SATA ist hot-plug-fähig. Sieh Dir den Power-Stecker mal genau an, zunächst wird GND verbunden, dann je eine der je drei Leitungen für +3,3V, +5V und +12V ("pre-charge"), dann die jeweils zwei anderen Leitungen für jede der drei Versorgungsspannungen. Mit etwas Phantasie und ein paar Relais-Kontakten oder MOS-FETs läßt sich da durchaus etwas aufbauen, das die Platte normgemäß von den Versorgungsspannungen abtrennt und wieder mit ihnen verbindet. Dann brauchst Du nur noch ein oder zwei Bit aus einem GPIO oder einem ungenutzten Port, um die Schaltelektronik zu steuern, und einen größeren Haufen Patches, damit die Platte nach ausreichend Leerlauf erst logisch, dann elektrisch abgetrennt wird, und bei Bedarf erst elektrisch, dann logisch wieder angedockt wird.
An sowas dachte ich übrigens auch schon, der Ansatz gefällt mir gut. Den größeren Haufen Patches kann ich mir auch getrost sparen, wenn ich das Einschalten und Mounten per Script (evtl. FUSE-gesteuert?) und das Unmounten und Abschalten ebenfalls scriptgesteuert auslöse.
Von solchen Basteleien würde ich mittlerweile allerdings sehr viel Abstand halten.
Warum? Solche Projekte sind es doch unter anderem, die die Computerei reizvoll und spannend machen. Ich finde es eher schade, dass man heute nur noch selten sinnvolle Ansatzpunkte für eigene Hardware-Basteleien findet. In den späten 80er- bis frühen 90er-Jahren gehörten für mich Multimeter, Oszi und Lötkolben zum Computer so selbstverständlich dazu wie Ketchup zu Pommes.
Ciao,
Martin
Hi
schau dir mal man hdparm an. Dort gibt es verschiedene modi um idle oder stromsparmodi zu erreichen. Am passensten wohl:
--idle-immediate
Issue an ATA IDLE_IMMEDIATE command, to put the drive into a lower power state.
Usually the device remains spun-up.
--idle-unload
Issue an ATA IDLE_IMMEDIATE_WITH_UNLOAD command, to unload or park the heads and
put the drive into a lower power state. Usually the device remains spun-up.
-y Force an IDE drive to immediately enter the low power consumption standby mode,
usually causing it to spin down. The current power mode status can be checked
using the -C option.
Ich würde aber mal in einem linuxforum deiner distri (für Debian wäre das debianforum.de nachfragen).
bye
MH
Hi
nee, das ist wohl das passende:
-S set standby (spindown) timeout
(ich danken gar nicht erst einbinden scheitert an der notwendigen geräteerkennung beim booten)
bye
MH
Hallo,
nee, das ist wohl das passende:
-S set standby (spindown) timeout
nein, damit kann ich das anfängliche Anlaufen beim Einschalten auch nicht verhindern.
(ich danken gar nicht erst einbinden scheitert an der notwendigen geräteerkennung beim booten)
Also doch hardwaremäßig trennen und erst später zuschalten, sonst fährt die Platte ja schon beim BIOS-POST hoch:
"Hm? Hä? Ticktickticktick Uuuüüüiiiih... Ja, hier!" ;-)
Schöne Feiertage,
Martin
Moin Moin!
Also doch hardwaremäßig trennen und erst später zuschalten, sonst fährt die Platte ja schon beim BIOS-POST hoch:
"Hm? Hä? Ticktickticktick Uuuüüüiiiih... Ja, hier!" ;-)
Wenn Deine Platte tickt wie Omas Standuhr, ist's mit der Platte bald aus. Wie alt ist Dein letztes verifiziertes Backup?
Alexander
Hallo,
"Hm? Hä? Ticktickticktick Uuuüüüiiiih... Ja, hier!" ;-)
Wenn Deine Platte tickt wie Omas Standuhr, ist's mit der Platte bald aus.
nein, jede Platte tickert und rattert beim Einschalten kurz vor sich hin, bis sie selbst weiß, ob sie Männlein oder Weiblein ist. Ich hatte noch keine, die das nicht tut. Okay, normalerweise erst _nach_ dem Spin-Up, stimmt.
Wie alt ist Dein letztes verifiziertes Backup?
Von diesem Rechner? Zwei Tage.
Ciao,
Martin
Hallo,
(ich danken gar nicht erst einbinden scheitert an der notwendigen geräteerkennung beim booten)
Also doch hardwaremäßig trennen und erst später zuschalten, sonst fährt die Platte ja schon beim BIOS-POST hoch:
"Hm? Hä? Ticktickticktick Uuuüüüiiiih... Ja, hier!" ;-)
Nicht dass ich deinen Wunsch nicht verstehen und nachvollziehen kann. Aber das OS möchte eben wissen welche Hardware verbaut ist. Daher wusse das OS die Platte anlaufen lassen ( und du kannst vorgeben dass die Platte sich wieder schlafen legt, über hdparm) .
Wenn du schon das Anlaufen verhindern willst darfst du die Platte nicht einbauen. Du kannst ja auch keine zweite Graka oder Audika einbauen und sagen: Bitte liebes OS, erkenne die nicht. Weil das eben im Widerspruch stünde zu dem ganzen Aufwand der betrieben wurde um Hardware ohne Konfigaufwand durch den User ins System einbinden *zu können*.
Statt Löten ginge noch externes usb Laufwerk (tut für Mukke und Video) oder eSATA (so dein Controler nen externen eSATA Anschluß hat). Dafür bietet dan auch das OS wieder Untersützung.
bye
Michael
Moin Moin!
Statt Löten ginge noch externes usb Laufwerk (tut für Mukke und Video) oder eSATA (so dein Controler nen externen eSATA Anschluß hat). Dafür bietet dan auch das OS wieder Untersützung.
USB 2.0 ist verglichen mit USB 3.0 und (e)SATA grottenlangsam. OK für Flash-Sticks, Murks für Dauerbetrieb.
Allerdings kann man USB-Hotplug beim USB 1.1 und 2.0 relativ leicht mit zwei Paaren von Schaltkontakten simulieren. +5V und GND sind voreilend, D+ und D- werden etwas später verbunden. Entsprechend kann man mit zwei Schaltkontakt-Paaren erst +5V und GND verbinden, danach D+ und D-. Zum virtuellen Abstöpseln werden entsprechend erst D+ und D- getrennt, dann +5V und GND. Unterbrechen der +5V-Leitung hätte vor Urzeiten mal gereicht, bevor die USB-Erfinder aus lauter Leitungsnot irgendwelche Späßchen mit Widerständen an D+ und D- nach +5V oder GND getrieben hatten. Am wichtigsten bei USB bis 2.0 ist es, die Datenleitungen möglichst wenig zu stören. Kurze, möglichst gleich lange Wege, in Kabeln sauber verdrillt.
USB 3.0 ist USB 2.0 mit mehr Strom und zwei zusätzlichen Leitungspaaren (SSRX und SSTX) für die höheren, neuen Datenraten über zusätzliche Kontakte in neuen Steckern und Buchsen. Die müßte man theoretisch auch passend mit schalten, das wird bei den bei USB 3.0 üblichen Datenraten aber schon eine Herausforderung. SSRX und SSTX sind sehr störungsempfindlich.
Bei SATA sind Strom und Daten sauber getrennt, da ist es ausreichend, die Stromversorgung zu kappen. Schaltungstechnisch sind SATA-II (3 Gb/sec) und eSATA fast identisch. Die Stecker sind bewußt anders, um Verwechslungen zu vermeiden und Adapterverkäufe anzukurbeln. eSATA-Steckverbinder sind für deutlich mehr Steckzyklen spezifiziert als interne SATA-Steckverbinder. Außerdem müssen eSATA-Verbindungen mit relativ viel Pegel senden (interne SATA-Sender dürfen etwas "nuscheln", e-SATA-Sender nicht) und die eSATA-Empfänger müssen mit etwas schlechteren Pegeln klarkommen als die internen SATA-Empfänger.
eSATAp ist USB 2.0 und eSATA in einer zu beiden Systemen kompatiblen Buchse, wobei ein eSATAp-Gerät auch Strom (+5V/500mA) aus dem USB-Teil der Buchse "klauen" darf. eSATApD bringt außerdem noch weitere Kontakte für +12V mit.
Alexander
Hi,
Nicht dass ich deinen Wunsch nicht verstehen und nachvollziehen kann. Aber das OS möchte eben wissen welche Hardware verbaut ist.
ja, ich mochte dieses Plug&Play und Autoconfig noch nie wirklich. Früher[tm] hat man noch die I/O-Adressen jeglicher Hardware mit DIP-Schaltern eingestellt und diese Adressen auch in der Treiber-Konfiguration manuell gesetzt. Da wusste man noch, was wirklich läuft, und war nicht auf Gedeih und Verderb irgendeinem "magischen" Autoconfig-Blödsinn ausgeliefert.
Wenn du schon das Anlaufen verhindern willst darfst du die Platte nicht einbauen. Du kannst ja auch keine zweite Graka oder Audika einbauen und sagen: Bitte liebes OS, erkenne die nicht. Weil das eben im Widerspruch stünde zu dem ganzen Aufwand der betrieben wurde um Hardware ohne Konfigaufwand durch den User ins System einbinden *zu können*.
Genau das meine ich. Ich sehe das in der Regel nicht als Vorteil, sondern als Problemquelle.
Statt Löten ginge noch externes usb Laufwerk (tut für Mukke und Video) oder eSATA (so dein Controler nen externen eSATA Anschluß hat). Dafür bietet dan auch das OS wieder Untersützung.
Hmm. eSATA hab ich. Aber was ändert sich dadurch? Ich dachte, das wäre nur ein stabilerer Stecker als der herkömmliche SATA-Anschluss.
USB ginge natürlich auch, aber dann hätte ich immer noch das Problem, dass ich das Laufwerk irgendwie automatisch ein- und ausschalten muss. Ich will ja nicht jedesmal noch irgendwo rumfummeln und einen Schalter betätigen.
So long,
Martin
Moin Moin!
Hallo,
Was versuchst Du eigentlich zu optimieren?
sagte ich doch: Die Geräuschentwicklung.
Sorry, überlesen.
Ich will ein System, das einen Großteil der Alltags-Aufgaben (Internet, e-Mail, Audio) lautlos erledigen kann, aber im Bedarfsfall auch auf das Videoarchiv auf ein bis zwei 1TB-Platten zugreifen kann.
Tja, fang mit ab Werk leisen Platten an. Die drehen typischerweise relativ langsam (5400 oder 4200 U/min) und werden deswegen auch eher weniger warm. Die hängst Du entkoppelt auf (Gummirahmen) und baust ein gut gedämmtes Gehäuse drum herum. Schließlich schaltest Du noch das Acoustic Management an, wodurch die Platten zwar geringfügig langsamer, aber deutlich weniger nervig werden.
Die c't-Leute haben da in den letzten Jahren reichlich Recherche-Arbeit in einige Vorschläge für leise, flotte PCs gesteckt.
Und schließlich: Stell die Kiste in eine Ecke, in der sie am wenigsten nervt. Ich hab über Jahre meinen alten Server in einem ansonsten ungenutzten Räumchen bzw. im Keller stehen gehabt. Da hat das staubsaugerartige Geräusch der alten Profi-Hardware am wenigsten gestört.
Mein aktueller Server ist ein HP Proliant Microserver N36L, den gibt's mittlerweile nicht mehr. Der Nachfolger ist der N40L, mit etwas mehr CPU-Takt, aber ansonsten die gleiche Hardware. Ich nutze darin 4 Platten und eine externe SATA-Platte für's Backup. Die Maschine ist schon ohne Änderungen so leise, dass ich 1,5 m daneben problemlos arbeiten kann, am anderen Ende vom Zimmer gehen die Laufgeräusche komplett in den Hintergrundgeräuschen unter. Im Rest der Wohnung hört man auch mitten in der Nacht absolut nichts von der Maschine, nicht einmal während des Backup-Laufs.
Wenn Du unbedingt den Lötkolben schwingen willst: SATA ist hot-plug-fähig. Sieh Dir den Power-Stecker mal genau an, zunächst wird GND verbunden, dann je eine der je drei Leitungen für +3,3V, +5V und +12V ("pre-charge"), dann die jeweils zwei anderen Leitungen für jede der drei Versorgungsspannungen. Mit etwas Phantasie und ein paar Relais-Kontakten oder MOS-FETs läßt sich da durchaus etwas aufbauen, das die Platte normgemäß von den Versorgungsspannungen abtrennt und wieder mit ihnen verbindet. Dann brauchst Du nur noch ein oder zwei Bit aus einem GPIO oder einem ungenutzten Port, um die Schaltelektronik zu steuern, und einen größeren Haufen Patches, damit die Platte nach ausreichend Leerlauf erst logisch, dann elektrisch abgetrennt wird, und bei Bedarf erst elektrisch, dann logisch wieder angedockt wird.
An sowas dachte ich übrigens auch schon, der Ansatz gefällt mir gut. Den größeren Haufen Patches kann ich mir auch getrost sparen, wenn ich das Einschalten und Mounten per Script (evtl. FUSE-gesteuert?) und das Unmounten und Abschalten ebenfalls scriptgesteuert auslöse.
Hast Du einen groben Plan, wie übel FUSE bremst? Willst Du dann aus dem Userspace mit einer SATA-Platte reden und ATA und EXT2/3/4 nochmal im Userspace implementieren?
Die Idee, die Platte unmittelbar vor mount(8) einzuschalten und nach umount(8) wieder auszuschalten ist allerdings nicht schlecht. FUSE würde ich da rauslassen. Sieh Dir mal die diversen Automounter an, da sollte es irgendwo eine Möglichkeit geben, mount / umount über ein Script laufen zu lassen, wenn Du nicht ohnehin schon Scripte einsetzt.
Von solchen Basteleien würde ich mittlerweile allerdings sehr viel Abstand halten.
Warum?
Weil ich an meinen Daten hänge. Die Patches, die ich meinte, wären Kernel-Patches, die im Kernel einerseits rausfinden, wann Du die Platte nicht mehr brauchst und deswegen den Strom abschalten und andererseits im Kernel Schreib- und Lesezugriffe so lange blockieren, bis die Platte wieder läuft. Das alles, während die Platte aus Kernel- und Userspace-Sicht gemountet ist.
Solche Projekte sind es doch unter anderem, die die Computerei reizvoll und spannend machen. Ich finde es eher schade, dass man heute nur noch selten sinnvolle Ansatzpunkte für eigene Hardware-Basteleien findet. In den späten 80er- bis frühen 90er-Jahren gehörten für mich Multimeter, Oszi und Lötkolben zum Computer so selbstverständlich dazu wie Ketchup zu Pommes.
Klar. Ich schalte meinen Hauptrechner von einer (ab Werk vorhandenen) dedizierten Power-Taste in der Tastatur ein und aus, à la Mac. Mein Laserdrucker wird vom Server innerhalb von CUPS ein- und ausgeschaltet (eigener Daemon + eigenes CUPS-Backend + USB-Seriell-Adapter + Solid State Relais). Und im Keller arbeitet ein alter, umgestrickter Thin Client als Backup-Server, der mitten in der Nacht per WOL geweckt wird, um Daten vom Hauptserver auf eine externe Platte zu schaufeln. Router und Telefonanlage sind ebenfalls umgestrickt.
Alexander
Hallo,
Was versuchst Du eigentlich zu optimieren?
sagte ich doch: Die Geräuschentwicklung.
Sorry, überlesen.
Ich will ein System, das einen Großteil der Alltags-Aufgaben (Internet, e-Mail, Audio) lautlos erledigen kann, aber im Bedarfsfall auch auf das Videoarchiv auf ein bis zwei 1TB-Platten zugreifen kann.
Tja, fang mit ab Werk leisen Platten an. Die drehen typischerweise relativ langsam (5400 oder 4200 U/min) und werden deswegen auch eher weniger warm. Die hängst Du entkoppelt auf (Gummirahmen) und baust ein gut gedämmtes Gehäuse drum herum. Schließlich schaltest Du noch das Acoustic Management an, wodurch die Platten zwar geringfügig langsamer, aber deutlich weniger nervig werden.
das ist alles richtig, da werden die Platten flüsterleise. Bei üblicher Alltags-Geräuschkulisse ist das alles nicht weiter wild, da höre ich eine HDD gar nicht (wenn ich nicht gezielt lausche). In einem ruhigen Wohnzimmer am Abend ist "flüsterleise" aber immer noch unangenehm laut. Nicht ohne Grund habe ich ja schon ein komplett lüfterloses System, und nicht ohne Grund stelle ich gerade auf SSD um. Primär wegen des lautlosen Betriebs.
Ich schrecke ja schon auf, wenn drei Stockwerke tiefer jemand die Haustür ins Schloss fallen lässt. Das ist wohl der Nachteil, wenn man mit über 40 noch ein Gehör hat, auf das mancher 20jährige stolz sein könnte.
[...] am anderen Ende vom Zimmer gehen die Laufgeräusche komplett in den Hintergrundgeräuschen unter. Im Rest der Wohnung hört man auch mitten in der Nacht absolut nichts von der Maschine, nicht einmal während des Backup-Laufs.
Ja, ich sag ja: Solange ein nennenswerter Geräuschteppich da ist, ist das alles kein Thema. Aber wenn's richtig leise wird, ist jedes noch so leise Geräusch lästig.
Hast Du einen groben Plan, wie übel FUSE bremst?
Nein, habe ich nicht. Da fehlt mir bisher jegliche Erfahrung.
Willst Du dann aus dem Userspace mit einer SATA-Platte reden und ATA und EXT2/3/4 nochmal im Userspace implementieren?
Nein, auch das nicht. Der Gedanke war, nur beim ersten Request die Platte anzuwerfen (also ihre Stromversorgung einzuschalten), und davon abgesehen alle Requests an den eigentlichen Treiber durchzureichen. Aber ich gebe zu, ich kenne mich mit den Einzelheiten da noch nicht aus. Das wäre für mich Neuland mit einer Menge Lernpotential.
Die Idee, die Platte unmittelbar vor mount(8) einzuschalten und nach umount(8) wieder auszuschalten ist allerdings nicht schlecht. FUSE würde ich da rauslassen. Sieh Dir mal die diversen Automounter an, da sollte es irgendwo eine Möglichkeit geben, mount / umount über ein Script laufen zu lassen, wenn Du nicht ohnehin schon Scripte einsetzt.
Noch nicht, aber autofs habe ich für nicht permanent verfügbare Netzwerkverbindungen eh am Laufen. Damit könnte ich die sekundäre Platte bzw. deren automatisches Ein- und Ausschalten mit abfrühstücken, danke für den Denkanstoß.
In den späten 80er- bis frühen 90er-Jahren gehörten für mich Multimeter, Oszi und Lötkolben zum Computer so selbstverständlich dazu wie Ketchup zu Pommes.
Klar. Ich schalte meinen Hauptrechner von einer (ab Werk vorhandenen) dedizierten Power-Taste in der Tastatur ein und aus, à la Mac. Mein Laserdrucker wird vom Server innerhalb von CUPS ein- und ausgeschaltet (eigener Daemon + eigenes CUPS-Backend + USB-Seriell-Adapter + Solid State Relais). Und im Keller arbeitet ein alter, umgestrickter Thin Client als Backup-Server, der mitten in der Nacht per WOL geweckt wird, um Daten vom Hauptserver auf eine externe Platte zu schaufeln. Router und Telefonanlage sind ebenfalls umgestrickt.
Na also. Hättest mich sonst auch enttäuscht. :-)
Schöne Feiertage,
Martin
Moin Moin!
das ist alles richtig, da werden die Platten flüsterleise. Bei üblicher Alltags-Geräuschkulisse ist das alles nicht weiter wild, da höre ich eine HDD gar nicht (wenn ich nicht gezielt lausche). In einem ruhigen Wohnzimmer am Abend ist "flüsterleise" aber immer noch unangenehm laut.
Schmeiß den Server aus dem Wohnzimmer raus. Der Zuspieler darf bleiben, der darf lüfterlos von SATA oder LAN booten. Der Server kommt ins "Home Office", auf das oberste Regalbrett in der Besenkammer, oder in den Keller, dazwischen ein schnelles WLAN oder ein paar Meter Cat5 (oder besser), notfalls ein schnelles Powerline-System.
Hast Du einen groben Plan, wie übel FUSE bremst?
Nein, habe ich nicht. Da fehlt mir bisher jegliche Erfahrung.
Du kannst Dir ja mal in der WP ansehen, wie FUSE funktioniert.
"Die" Applikation macht einen normalen Dateisystem-Zugriff. Erster Übergang zwischen User-Space und Kernel-Space. Der Kernel merkt, dass dort FUSE läuft, und erzeugt eine Message an einen (von möglicherweise vielen) FUSE-Diensten. Zweiter Übergang zwischen User-Space und Kernel-Space. Der wiederum erzeugt (außer bei Spiel-Dateisystemen à la /dev/null, /dev/zero, /dev/full) einen oder mehrere weitere Kernel-Aufrufe (read/write auf Devices oder Dateien, Netzwerk-I/O), wiederum mit reichlich Übergängen zwischen User-Space und Kernel-Space. Schließlich erzeugt der FUSE-Dienst eine Antwort, die wiederum in den Kernel-Space muß und von dort an "die" Applikation zurückgereicht werden muß. Das sind zwei weitere Übergänge zwischen User-Space und Kernel-Space.
Mit Fuse sind also minimal zwei weitere Übergänge zwischen User-Space und Kernel-Space nötig, eher vier oder mehr. Und die sind leider sehr aufwendig und bremsen fürchterlich. Das ist ein Grundproblem fast aller gängigen Betriebssysteme.
Willst Du dann aus dem Userspace mit einer SATA-Platte reden und ATA und EXT2/3/4 nochmal im Userspace implementieren?
Nein, auch das nicht. Der Gedanke war, nur beim ersten Request die Platte anzuwerfen (also ihre Stromversorgung einzuschalten), und davon abgesehen alle Requests an den eigentlichen Treiber durchzureichen. Aber ich gebe zu, ich kenne mich mit den Einzelheiten da noch nicht aus. Das wäre für mich Neuland mit einer Menge Lernpotential.
Das war auch meine Idee, daher die Androhung der vielen Kernel-Patches. Linux ist mittlerweile sehr komplex geworden und für sehr viele Dinge wandern die Daten(zeiger) mittlerweile durch mehrere gestapelte Subsysteme. Daran etwas sauber und robust zu ändern ist alles andere als trivial.
In den späten 80er- bis frühen 90er-Jahren gehörten für mich Multimeter, Oszi und Lötkolben zum Computer so selbstverständlich dazu wie Ketchup zu Pommes.
Klar. Ich schalte meinen Hauptrechner von einer (ab Werk vorhandenen) dedizierten Power-Taste in der Tastatur ein und aus, à la Mac. [...]Na also. Hättest mich sonst auch enttäuscht. :-)
*g*
Schöne Feiertage,
Ebenso,
Alexander
Hallo,
Schmeiß den Server aus dem Wohnzimmer raus. Der Zuspieler darf bleiben, der darf lüfterlos von SATA oder LAN booten. Der Server kommt ins "Home Office", auf das oberste Regalbrett in der Besenkammer, oder in den Keller, dazwischen ein schnelles WLAN oder ein paar Meter Cat5 (oder besser), notfalls ein schnelles Powerline-System.
*stirnklatsch*
Na klar, Mensch. Manchmal sieht man wirklich den Wald vor lauter Bäumen nicht! Im Arbeitszimmer läuft doch sowieso ein kleiner Server 24/7 durch. Stimmt, der könnte natürlich auch noch das eine oder andere TB Videos vorhalten. Ein 100Mbit-LAN dürfte auch für Videoaufnahmen (direktes Streaming des MPEG-TS vom DVB-Empfänger) erstmal ausreichen, und mittelfristig wollte ich eh nach und nach auf Fast Ethernet umstellen. Da werden wohl die zwei Switches auf der Strecke zwischen Wohn- und Arbeitszimmer als erste dran glauben müssen ...
Mit Fuse sind also minimal zwei weitere Übergänge zwischen User-Space und Kernel-Space nötig, eher vier oder mehr. Und die sind leider sehr aufwendig und bremsen fürchterlich. Das ist ein Grundproblem fast aller gängigen Betriebssysteme.
Ja, das leuchtet mir ein. Das ändert zwar nichts an meinem Interesse, damit herumzuprobieren, aber effizient ist wohl etwas anderes.
Ciao,
Martin