Episches Problem gelöst: Windows 7 Explorer weckt NAS auf

  • Moin,


    Kann es sein das ich tatsächlich der erste bin der herausgefunden hat wie man verhindert das Windows 7 ständig ungefragt und ungebeten eine Verbindung zum NAS herstellt, sobald der Windows Explorer in irgendeiner Art und Weise gestartet wird? Ich hatte das Problem jetzt seitdem ich Windows 7 mit meinem NAS verwende und bin gerade so unglaublich glücklich das die Festplatte hier neben mir schläft und das nervige grüne Licht aus ist, ich kann es keinem sagen! (und muss mich deswegen hier unbedingt mitteilen und profilieren...) :p


    Also kennt noch jemand die Lösung oder muss ich, der Großmeister des Stand-by-Modus, euch in meiner unendlichen Weisheit erhellen? ^^

  • hallo Force,


    Zitat

    ch hatte das Problem jetzt seitdem ich Windows 7 mit meinem NAS verwende und bin gerade so unglaublich glücklich das die Festplatte hier neben mir schläft und das nervige grüne Licht aus ist, ich kann es keinem sagen! (und muss mich deswegen hier unbedingt mitteilen und profilieren...) :p


    na dann mal gz zu deiner problemlösung und deinem profilierungsdrang ^^

  • Na ob die Profilierung mit so einem kleinen NAS gelingt? :tongue:
    SCNR


    Dennoch interessieren mich Antworten, weil mein NAS auch des öfteres ungewollt aufwacht. Allerdings hat da mein altes Raidsonic NAS und mit Win XP auf dem früheren PC auch gemacht, so dass ich on einem generellen Windowsprobem bislang ausgegangen bin. Windows schaut halt mal öfters rum, was so alles im (Heim-)Netzwerk angeschlossen ist.

  • Na das würde mich auch einmal interessieren.
    Das ist mir auch aufgefallen.
    Bin aber davon ausgegangen, dass es bei mir an den Netzlaufwerken im Arbeitsplatz liegt, diese sollen sich ja automatisch verbinden.
    Da erscheint es ja nur logisch, dass dadurch die Festplatte aufgeweckt wird.

  • Servus,


    Also die Lösung ist getestet und funktioniert. Leider wollte QNAP mir kein neues NAS schenken, die Geizhälse.



    Folgender Windows Registry Tweak ist nötig:


    -snip-
    Windows Registry Editor Version 5.00


    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider]
    "RestoreConnection"=dword:00000000
    -snip-



    (Diese Zeilen in eine Textdatei kopieren und als "Netzwerk.reg" speichern. Dann die Netzwerk.reg doppelklicken und "zur Registrierung hinzufügen". Auf diese Weise kann der Tweak schnell auf mehreren PCs angewendet werden, oder nach einer Windows Installation gleich ruck zuck gesetzt werden. Selbstverständlich kann mann den Eintrag auch manuell via Registry Editor setzen, siehe unten, ist aber viel fumliger. Ich empfehle die Textdatei grad für Leute die den Registry Editor nicht mal kennen. Da sollte man sich besser nicht verklicken...)



    Was macht das, was soll das und kann ich mir damit was kaputt machen?


    -> Netzwerkverbindung werden erst beim Zugriff wiederhergestellt
    http://www.winfaq.de/faq_html/…linefaq.php?h=tip0246.htm
    (Nochmal zur Klarstellung es handelt sich um einen bestehenden Registry Eintrag, Standard ist "1". Auf "0" gesetzt werden Netzwerkverbindungen erst beim Zugriff wiederhergestellt und bis dahin schläft das NAS. Das funktioniert natürlich mit jedem NAS. Das Problem ist liegt ja im Standardverhalten von Windows 7 begründet und liegt nicht beim Gerät.)



    Was wenn es nicht klappt?


    Irgend ein anderer Dienst der auf dem NAS läuft ist schuld!
    Twonky Media weckt mein NAS nicht ungefragt auf, MLDonkey dagegen sehr wohl. Wenn mein NAS nicht schlafen geht, dann weil ich vergessen habe MLDonkey auszuschalten.
    (Bei mir läuft nichts anderes ausser Twonky Media und MLDonkey)





    Jetzt bitte alle einmal niederknien und meinen Google Skills huldigen! :)

  • u.U.


    Eine andere Lösung wäre dann viel trivialer,...... UNC Pfade nutzten

  • Hallo Großmeister des Standby-Modus,


    schönen Dank für den Tipp :thumb:


    Leider behebt dieser Registry Tweak nicht das Problem, dass Windows 7 beim öffnen des Explorers ungefragt eine Verbindung zu den Samba Shares herstellt (auch wenn ich kein Netzlaufwerk gemappt habe :!:) und damit die Platten aufweckt. :? Ich habe viele Dinge ausprobiert (zum Beispiel: http://blogs.technet.com/b/net…ry-network-resources.aspx oder http://www.synology-wiki.de/in…_Disk-Spin-Down_betreffen) und habe nach langer Suche nun einfach akzeptiert, dass man Windows dieses verhalten nicht einfach austreiben kann. Es bleibt einem lediglich das Deaktivieren der Netzwerkkennung. Dies wollte ich jedoch nicht, da ich sonst meine Heimnetzgruppe nicht mehr hätte benutzen können.


    Ich habe allerdings herausgefunden, dass die lock-Dateien von Samba Schuld am Aufwachen der Platten sind (bei mit unter /share/MD0_DATA/.locks), da hier Verbindungsdaten und ähnliche Informationen protokolliert werden. Ich werde nun versuchen die Daten von der Platte auf die Ramdisk zu verschieben. Interessante Posts zu dem Thema lassen sich hier http://forum.qnap.com/viewtopic.php?p=70735#p70735 oder hier http://forum.qnap.com/viewtopi…ilit=samba+solved#p211824 finden.


    Ich werde berichten, ob es klappt und wie ich es gelöst habe!

  • Hallo zusammen,


    hier wie versprochen eine kurze Zusammenfassung von meinem Weg zu schlafenden Platten in meinem NAS:


    • Zunächst habe ich im Admin Panel das Connection Logging deaktiviert. Ich habe es sowieso nie gebraucht... wer auf die Logs nicht verzichten möchte, muss dafür sorgen, dass die Dateien im Ordner /mnt/HDA_ROOT/.logs mit Symlinks auf die Ramdisk verschoben werden.
    • Im nächsten Schritt habe ich das Logging des Twonky Servers abgeschaltet. Spontan weiß ich leider nicht mehr, wo die Log Dateien auf der Platte gespeichert werden :?
    • Dann habe ich die Lock Dateien von Samba in den /tmp Ordner verschoben. Dies habe ich mit der Option lock directory in der smb.conf gelöst (Quelle: http://www.samba.org/samba/doc…conf.5.html#LOCKDIRECTORY). Die Dateien werden von Samba bei jedem Boot neu angelegt und ich konnte diesbezüglich bisher keinen negativen Seiteneffekte feststellen.
    • Als letztes habe ich die Dateien smbpasswd und smbusers über die smb.conf (siehe: http://www.samba.org/samba/doc…anpages-3/smb.conf.5.html) ebenfalls in den /tmp Ordner verschoben. Beim Ausführen der Datei autorun.sh lasse ich die beiden Dateien aus /etc/conf nach /tmp kopieren. Hinweis (ungetestet): Bei Änderungen an den Shares/Usern werden nur die Dateien im /etc/conf verändert; der Samba Server verwendet jedoch die Dateien aus dem /tmp Ordner. Um ein erneutes Kopieren wird man kaum herumkommen...


    Das war mein Weg :D Bei Fragen, einfach fragen ;)

  • Hallo Kunibald,


    sorry wenn ich einen alten Thread hervorkrame, aber du hast dazu aufgefordert bei Fragen sie auch zu stellen. ;)


    In meinem Fall kann ich das ständige "Aufwachen" des NAS daran festmachen, dass die Windows PCs alle 32 Minuten eine SAMBA Anfrage als guest schicken. Das lässt sich auch mit diversen registry tweaks nicht ändern und die einzige Möglichkeit dieses Verhalten abzustellen ist, bei allen PCs das NetBIOS zu deaktivieren und die UNC Pfade zu verwenden. Krieg ich hin, aber es ist nicht schön und meine Freundin stolpert immer wieder drüber. Daher bin ich natürlich an einer Lösung interessiert, die es mir erlaubt NetBIOS zu verwenden und das NAS nur zu wecken wenn ich es auch brauche.


    Vorweg: ich bin ein absoluter Laie auf diesem Gebiet, also bitte nicht lachen wenn ich unbedarfte Fragen stelle.
    Hab ich es soweit richtig verstanden, dass bei den SAMBA Anfragen Dateien benötigt werden, die auf der Festplatte des NAS liegen, weswegen diese gestartet werden muss? Diese Dateien hast du in den /tmp Ordner verschoben, der im RAM des NAS liegt und seitdem ist Ruhe eingekehrt.


    Ich hab ein paar Dinge, die du verlinkt hast durchgelesen, vieles aber nicht ganz verstanden und würde mich über Hilfe beim Zuordnen der Infos freuen.
    Z.B. ist hier unter "cache directory" die Rede davon, dass die meisten TDB Dateien im "lock directory" gespeichert sind, welches du ja komplett in den RAM verlegt hast. Und dass seit Samba 3.4.0 zwischen "persistent data" im "state directory" und "non-persistent data" im "cache directory" unterschieden wird.
    Sind die Dateien, die bei der Anfrage benötigt werden TDB Dateien, die hier unter denen die nicht preserved werden müssen und hat das was mit den "non-persistent data" im "cache directory" zu tun?
    Kann man dann dieses in den RAM legen und die Vorteile der schlafenden Festplatte haben ohne dass man bei Änderungen an den Shares/Usern extra herumkopieren muss wie du es ansprichst?
    Und wie passen da smbpasswd und smbusers ins Bild? Hier hast du die nicht erwähnt, oder? Ich mein, smbpasswd und smbusers klingen wichtig, oder werden die eh nicht benötigt, weil Windows ja die Anfrage als guest stellt?


    Danke für's Lesen und hoffentlich Klären meiner Fragen!


    mfg,
    Voodoochile

  • Hallo Voodoochile,


    wow sehr viel Informationen von dir... ich versuche mal kurz zu antworten (In der Kürze liegt die Würze ;))


    Zitat von "Voodoochile"

    Hab ich es soweit richtig verstanden, dass bei den SAMBA Anfragen Dateien benötigt werden, die auf der Festplatte des NAS liegen, weswegen diese gestartet werden muss? Diese Dateien hast du in den /tmp Ordner verschoben, der im RAM des NAS liegt und seitdem ist Ruhe eingekehrt.


    Korrekt!


    Zitat von "Voodoochile"

    Z.B. ist hier unter "cache directory" die Rede davon, dass die meisten TDB Dateien im "lock directory" gespeichert sind, welches du ja komplett in den RAM verlegt hast. Und dass seit Samba 3.4.0 zwischen "persistent data" im "state directory" und "non-persistent data" im "cache directory" unterschieden wird.


    Ebenfalls korrekt, jedoch habe ich festgestellt, dass der Qnap-SMB-Server nur auf die Option "lock directory" reagiert und Abgaben zu "state directory" und "cache directory" ignoriert.

    Zitat von "Voodoochile"

    Sind die Dateien, die bei der Anfrage benötigt werden TDB Dateien, die hier unter denen die nicht preserved werden müssen und hat das was mit den "non-persistent data" im "cache directory" zu tun?


    Ich befürchte die Frage verstehe ich nicht so ganz :-/ aber bei mir habe ich an dieser Stelle einfach mit dem "Holzhammer" angesetzt. Ich habe nicht erforscht auf welche Dateien im Speziellen zugegriffen wird, sondern habe stumpf alle (persistent und non-persistent) Dateien nach /tmp verschoben. Wie ich schon erwähnt hatte, werden dann auch die persistent Dateien beim reboot neu angelegt aber ich konnte bis heute keine negativen Effekte feststellen.


    Zitat von "Voodoochile"

    Kann man dann dieses in den RAM legen und die Vorteile der schlafenden Festplatte haben ohne dass man bei Änderungen an den Shares/Usern extra herumkopieren muss wie du es ansprichst?


    Wie ich auch schon erwähnt hatte, kann man sich ein paar Befehle in die autorun.sh schreiben, so dass das "herumkopieren" bei Boot erledigt wird. Änderst du etwas an den Usern, dann kannst du das Gerät einfach neustarten und die Einstellungen werden übernommen. Klar soweit?


    Zitat von "Voodoochile"

    Und wie passen da smbpasswd und smbusers ins Bild? Hier hast du die nicht erwähnt, oder? Ich mein, smbpasswd und smbusers klingen wichtig, oder werden die eh nicht benötigt, weil Windows ja die Anfrage als guest stellt?


    Schau doch einfach mal in die smbusers Datei rein... dort wirst du auch einen Eintrag für "guest" finden :D Die Erkenntnis hatte ich bei dem von dir erwähnten Post von mir noch nicht :D


    Ich hoffe das hilft dir erstmal weiter...


    Gruß, kunibald

  • Hallo Kunibald,


    danke für deine Rückmeldung!


    Zitat von "kunibald"

    Klar soweit?


    Aye Cap'n.
    Also zumindest soweit, dass ich mir noch Anleitung zum Editieren von smb.conf und autorun.sh suchen muss...


    Im Wesentlichen haben sich mein Überlegungen erübrigt, da du ja geschrieben hast, dass der Qnap-SMB-Server die Option "cache directory" ignoriert. Hab ich eigentlich nicht erwartet. Dachte es würde funktionieren, nachdem ich gelesen hatte, dass auf dem NAS Samba 3.5.2 läuft. Aber nochmal: ich bin absoluter Laie!
    Meine Überlegungen haben auf Laien-Annahmen basiert und ich wollte wissen, ob sie zutreffen könnten und es vielleicht genügen würde nur die "cache directory" in den RAM zu legen. Verpackt war das in der Frage, die du meintest nicht ganz zu verstehen.


    Nur zur Erklärung was ich mir gedacht hatte (leider schwierig es abzukürzen):
    In den Erklärungen der Samba Optionen wird erwähnt, dass so viele TDB Dateien im "lock directory" (bzw. state- und cache-directory) liegen. Dort ist aber nicht zu lesen, welche das sind. An anderer Stelle ist ja eine Tabelle mit einem Überblick von "preserved" und "non-preserved" TDBs zu finden. Dort fehlt mir aber wiederum die Information, ob das Dateien sind, die im lock-, state-, cache-directory, oder ganz wo anders liegen. Die nächste Information, die ich nicht finden konnte war, welche Dateien bei einem (NetBios?) Broadcast, wie ihn Windows alle 32 Minuten macht, abgefragt werden.


    Meine Annahmen waren, dass u.U. bei dem Broadcast die Login Infos nicht mit smbusers und smbpasswd abgeglichen werden müssen, weil der PC sich ja als guest meldet. Er versucht ja nur das NetBios zu aktualisieren, nicht sich gleich bei allen Nachbarn einzuloggen, oder doch?
    Es wäre zumindest logisch, wenn Dateien wie "browse.dat" und "login_cache.tdb", die ja laut Tabelle nicht preserved werden müssen, in der "cache directory" liegen würden, sofern die Option unterstützt wird versteht sich. Wenn bei dem halbstündlichen Herumfragen des PCs nur solche Datein benötigt würden, da nur der Broadcast geloggt wird oder was auch immer, dann müsste es ja genügen das "cache directory" in den RAM zu verfrachten, damit die Festplatte nicht starten muss.


    Soweit meine simplen Vorstellungen...


    mfg,
    Voodoochile

  • Hallo Voodoochile,


    Zitat von "Voodoochile"

    In den Erklärungen der Samba Optionen wird erwähnt, dass so viele TDB Dateien im "lock directory" (bzw. state- und cache-directory) liegen. Dort ist aber nicht zu lesen, welche das sind. An anderer Stelle ist ja eine Tabelle mit einem Überblick von "preserved" und "non-preserved" TDBs zu finden. Dort fehlt mir aber wiederum die Information, ob das Dateien sind, die im lock-, state-, cache-directory, oder ganz wo anders liegen.


    Ich habe das Ganze wie folgt verstanden:

    • lock-directory Dateien = state-directory Dateien + cache-directory Dateien
    • state-directory Dateien = preserved
    • cache-directory = non-preserved


    Zitat von "Voodoochile"

    Die nächste Information, die ich nicht finden konnte war, welche Dateien bei einem (NetBios?) Broadcast, wie ihn Windows alle 32 Minuten macht, abgefragt werden.


    Das kann ich dir auch nicht genau beantworten :-/


    Zitat von "Voodoochile"

    Meine Annahmen waren, dass u.U. bei dem Broadcast die Login Infos nicht mit smbusers und smbpasswd abgeglichen werden müssen, weil der PC sich ja als guest meldet. Er versucht ja nur das NetBios zu aktualisieren, nicht sich gleich bei allen Nachbarn einzuloggen, oder doch?


    Ob er versucht sich überall einzuloggen, kann ich dir ebenfalls nicht beantworten. Ich kann dir aber sagen, dass "guest" im Samba-Kontext ebenfalls ein User ist, der in der smbusers eingetragen ist. Daher wird auch für "guest" die Datei gelesen.


    Zitat von "Voodoochile"

    Es wäre zumindest logisch, wenn Dateien wie "browse.dat" und "login_cache.tdb", die ja laut Tabelle nicht preserved werden müssen, in der "cache directory" liegen würden, sofern die Option unterstützt wird versteht sich. Wenn bei dem halbstündlichen Herumfragen des PCs nur solche Datein benötigt würden, da nur der Broadcast geloggt wird oder was auch immer, dann müsste es ja genügen das "cache directory" in den RAM zu verfrachten, damit die Festplatte nicht starten muss.


    Da stimmt ich dir zu :thumb:


    Falls jemand detailliertere Analysen zu dem Thema hat: immer her damit! :D Auch bzgl. der Tatsache, dass der Qnap-SMB-Server die cache- und state-directory Einstellungen ignoriert...


    Gruß, kunibald