11.07.2015 Aufrufe

c't magazin für computer technik 24/2013 - since

c't magazin für computer technik 24/2013 - since

c't magazin für computer technik 24/2013 - since

MEHR ANZEIGEN
WENIGER ANZEIGEN
  • Keine Tags gefunden...

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Praxis I Heim-ServerHajo SchulzDer Letzte macht das Licht ausHeim-Server mit Windows stromsparend betreibenEin Server in einem Heimnetzwerk hat selten rundum die Uhr etwas zu tun. Mit einem trickreichenPowerSheii-Skript schaltet er sich automatisch ab,sobald kein anderes Gerät mehr auf ihn zugreift.ie Grundidee des hier vorge­Konzepts bestehtDstelltendarin, dass ein Server nur dannzu laufen braucht, wenn überhauptandere Geräte im Netzaktiv sind, die auf ihn zugreifenwollen könnten. ln einem privatenHeimnetz ist die Anzahl dermöglichen Clients in der Regelüberschaubar, sodass der Servereinfach versuchen kann, nacheinandermit allen eine Verbindungaufzubauen. Scheiterndiese Versuche, kann er sichselbst in einen Schlafmodus versetzen,in dem er so lange bleibt,bis ihn ein anderes Gerät aufwecktoder es Zeit für regelmäßiganstehende Arbeiten wie einallnächtliches Backup ist.Das Abklappern der potenziellenClients lässt man am bestenein Skript erledigen, das überdie Aufgabenplanung von Windowsregelmäßig gestartet wird.Als Basis verwenden wir dieWindows PowerShell. Die Abfrage,ob ein bestimmter Rechnerim Netzwerk zu erreichen ist,übernimmt hier der Befehl Test­Connection. Mit der Option -Quietkann man seine Fehlermeldungenunterdrücken und bekommtals Ergebnis ein schlichtes $trueoder $false zurückgeliefert ohnemühsam Textausgaben auseinanderpfriemelnzu müssen.Unser Skript lstDaWer.psl, dasSie über den <strong>c't</strong>-Link unter diesemArtikel herunterJaden können,ist so organisiert, dass Siesämtliche Einstellungen, mitdenen Sie es an Ihre örtlichenGegebenheiten anpassen können(und müssen), auf der erstenBildschirmseite zu finden sind.Sie können es dazu in einem beliebigenTexteditor öffnen, zurNot reicht der mitgelieferte .,Editor"von Windows aka Notepad.Ein bisschen komfortabler gestaltetsich die Bearbeitung imPowerShell lSE (lntegrated ScriptingEnvironment), das bei jederPowerShell-lnstallation dabei ist.PowerSheii-Programmierer findenhier unter anderem dieMöglichkeit, Skripte Schritt fürSchritt ausführen zu lassen, umFehlern auf die Spur zu kommen.Bei seiner Umfrage, ob Clientsim Netz aktiv sind, berücksichtigtunser Skript sowohl Gerätemit statischer IP-Adresse alsauch solche, die ihre Netzadressedynamisch von einem DHCP­Server zugeteilt bekommen. Ersterekönnen Sie in die Liste namens$Statisch eintragen:$Statisch = @("192.168.1.10" # Büro-PC"192.168.1.20" # Fernseher"192.168.1.12" # Notebook);Die vergebenen IP-Adressenmüssen in Anführungszeicheneingeschlossen sein und jede aufeiner eigenen Zeile stehen. Alles,was in einer Zeile hinter einem #­Zeichen steht, ist ein Kommentarund wird von der PowerShellnicht weiter beachtet; wie aus-Trigger bearbeite nAufgabe starten: [Nach einem ZeitplanEi nstellungentart 2310<strong>2013</strong> D• OHJO :OO :-; D Zeionenübergreifende 'Synch.WieQerholung all 1 Tage!t Stunde'.,·Ifür die Dauer von:[j Alle ausgefQhrten Aufgaben am Ende der Wiederholungsdauer beendenLJ Aufgabe Ileenden nach: §'"geLJ Ablayfen: <strong>24</strong>.10.2014 1157:19 J11] Aktiviert1 TagZS:IL.'::m enübeJ } E ende S}'T hUm eine Aufgabe mehrmals am Tag ausführen zu lassen,wählt man zunächst einen täglichen Zeitplan; das Wiederholungsintervallfi ndet sich dann in den Erweiterten Einstellungen.IP-Adressen abzuklappern undzu prüfen, ob auf einer davon einGerät antwortet. Wenn Sie dasbrauchen, entfernen Sie bitte dieKommentarzeichen vor den beidenZeilen$DhcpStart = "192.168.1.32";$DhcpEnde = "192.168.1.64";und tragen die erste und die letzteAdresse des zu scannendenBereichs zwischen die Anführungszeichenein. Gerätschaften,die den Server gar nicht nutzen,etwa Druckern oder Webcams,sollten Sie in einem solchen Fallallerdings Adressen außerhalbdes gescannten Bereichs zuweisen,damit sie das Einschlafen desServers nicht verhindern.BetthupferlBevor sich unser Skript auf dieSuche nach möglichen Clientsbegibt, überprüft es noch, ob geradewichtige Programme, Batchesoder andere Skripte laufen,die nicht unterbrochen werdensollten. Die Namen, nach denenes dazu im Speicher fa hndet,können Sie in die drei Zeilen$Prozesse = @( "backup", "defrag" );$Batches = @( "rsyncStart.bat" );$Skripte = @( );222eintragen. ln $Prozesse gehörenausführbare Programme mit eigener.exe-Datei; die Endung darfaber nicht mit in das Skript geschriebenwerden. Die Batch-Dateienin $Batches sowie die Power­Sheii-Skripte in $Skripte sollten Siedagegen mit Endung eintragen.Bei diesen Einträgen sucht dasSkript im Speicher nach laufendenInstanzen von cmd.exe beziehungsweisepowershell.exe,bei denen der Skriptname Teil derKommandozeile ist.Die letzte Option, die Sie imSkript anpassen können, ist derEnergiesparmodus, in den esden Server schickt, wenn es herausgefundenhat, dass der imAugenblick arbeitslos ist. Voreingestelltist .,Hibernate", auch alsACPI-S4, Ruhezustand oder .,Suspendto Disk" bekannt. Die Alter<strong>c't</strong><strong>2013</strong>, Heft <strong>24</strong>

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!