SMART monitoring on Windows

Well, there is most likely no way to know before-hand that a disk will fail. But you could try to read the signs. And what a surprise, there is help already available. This S.M.A.R.T. thingy could be of help; SMART collects a lot of data of your disks, which can be used to evaluate how “well” your disk is doing. This could show some up-coming trouble.

To read the SMART-Data, there exists quite a few programs. For Linux you would most likely use smartmontool, and fortunatly, these tools are also available for Windows!

Getting and Installing smartmontool

  1. Just download the latest Windows-Installer from sourceforge, which will install all needed binaries.
  2. Edit the smartd.conf to meet your needs
  3. Either run smartd in daemon-mode, or as a Windows Service

Configuration

The DEVICESCAN option allows to detect all available devices and add them to the monitoring list; but I like to tailor my config-files a little. So I comment-out the DEVICESCAN and add some options of my own:

   hda -a -o on -S on -I 194 -I 231 -I 9 -m sysmsgbox

This will monitor my 1st disk, and ignore some measures (-I 194 -I 231 -I 9) like thermal stuff. Besides that I would like to carry out all of the typical tests (-a), do selftests (-o on) and collect statical data (-S on). Finally I would like to get a popup (‘-m sysmsgbox’; this is just available in the windows version) if something is going wrong

Pimp my Windows!

Themes

Bereits seit Windows 2000 gibt es die Möglichkeit das Look&Feel von Windows mit Themes anzupassen.

Das von Microsoft entwickelte msstyle-Format erlaubt es, das Erscheinungsbild von Windows komplett anzupassen. Leider müssen dafür die msstyle-Vorlagen digital signiert sein, und das ist das Problem an der ganzen Sachen.

Eine Lösung dafür ist es, die uxtheme.dll von Microsoft auszutauschen, so daß auch nicht signierte Styles verwendet werden können. Grundsätzlich gibt es zwei Möglichkeiten um die uxtheme.dll zu patchen: manuell oder mit einem Multi-Patcher. Der Vorteil des Multi-Patchers ist, daß er das Betriebssystem automatisch erkennt und die DLL entsprechend austauscht. Bei dem manuellen Weg muss zunächst de Windows Dateischutz (Windows File Protection) umgangen werden, um die uxtheme.dll auszutauschen.

Der Weg über den Multi-Patcher ist recht einfach. Zunächst den aktuellen Patcher downloaden und dann ausführen. Dieser erkennt Windows XP RTM/SP1/SP2 und Windows 2003 automatisch und tauscht die entsprechende DLL aus. Wenn das Programm ausgeführt und der Button “Patch” getätigt wurde, muss so lange gewartet werden, bis der Windows-Dateischutz anspringt und meldet, dass Dateien durch unbekannte Dateien ersetzt wurden. Das Ersetzen der geänderten Datei durch den Windows-Dateischutz mit den Originaldateien muss über den Button “Abbrechen” verhindert werden, da sonst der Patchvorgang nicht erfolgreich abgeschlossen werden kann. Nach einem Neustart können nicht signierte Visual Styles verwendet werden.

Um das ganze manuell durchzuführen sind ein paar mehr Schritte notwendig. Zunächst muss die für das Betriebssystem passendende uxtheme.dll heruntergeladen werden (uxtheme für Windows 2003 Server, uxtheme für Windows XP SP2).

  1. Um den Windows Dateischutz zu umgehen muss zunächst im VerzeichnisC:\WINDOWS\System32\dllcache die Datei UXTheme.dll durch die heruntergeladene ausgetauscht werden.
  2. Das System muss als nächstes im abgesicherten Zustand gestartet werden (F8 beim Starten drücken)
  3. anschließend kann die uxtheme.dll im ‘system32’-Verzeichnis ausgetauscht werden. Dazu am besten folgendes in einer DOS-Box ausführen:
       ren %SystemRoot%\system32\uxtheme.dll uxtheme.bak
       copy %SystemRoot%\system32\dllcache\uxtheme.dll %SystemRoot%\system32\

Nachdem die uxtheme.dll gepatched wurde können nun beliebige visuelle Styles geladen werden. Dabei gibt es eine Vielzahl von Styles, die Windows XP bereits einen Hauch von Vista geben. Dazu zählt zum Beispiel ein Hauch von dem neuen Glas-Effekt.

Mehr Pimpin’

Wohin geht der Weg beim Pimpen von Windows?

Aber das Pimpin’ des Desktops geht noch weiter, hier sind ein paar Links, die Ausblicke auf das noch Mögliche geben.

Ganz besonders begeistert bin ich von BumpTop. Auf YouTube gibt es auch ein Video mit einer Demo des Desktops. Bei BumpTop geht es um eine ganz neue Art von Desktop-Organisation.

Für wen BumpTop noch zu abgehoben ist (zumal es ja auch bisher nur einen Prototypen gibt), der kann sich vielleicht mit einem Zwischending zwischen Vista und BumpTop anfreunden. Bei SphereSite geht es um die 3D-Darstellung von Windows.

Sehr ultimativ ist auch das Bery Project für Linux. Dabei handelt es sich ähnlich wie bei Vista auch um jede Menge visuelle Designs wie Glas und 3D Effekte.

Outlook: Umleiten vs. Weiterleiten

Im Ergebnis sind beide Funktionen gleich. Allerdings wird die Weiterleitung von Outlook selbst durchgeführt, die Regel funktioniert also nur wenn Outlook ausgeführt wird (da die Regel also von dem Client ausgeführt wird, wird dies auch als “Client-Regel” bezeichnet). Bei einer Umleitung handelt es sich um eine sogenannt Server-Regel. Wie der Name schon sagt wird diese Regel auf dem Exchange-Server ausgeführt, also auch wenn Outlook nicht ausgeführt wird.

Dummerweise wird in der Übersicht der Regeln nicht mehr angezeigt ob es sich um eine Client- oder eine Server-Regel handelt (vor Outlook 2003 wurde das immer angezeigt).

Ein weiterer Unterschied zwischen “Umleitung” und “Weiterleitung” ist, daß bei einer Weiterleitung die eMail genauso weitergeleitet wird, als wenn man in Outlook “weiterleiten” auswählt. Das bedeutet, daß die eMail beim weiterleiten verändert wird, indem zum einen dem Betreff “Fwd:” (o.ä.) vorangestellt wird, und das der eigentliche Nachrichtentext als Zitat eingefügt wird. Dadurch kann der Empfänger einer weitergeleiteten eMail auch erkennen, von wem diese eMail weitergeleitet wurde.

Bei umgeleiteten eMails wird die eMail direkt an den Empfänger gesendet, ohne daß diese zuvor verändert wird. Für den Empfänger sieht es so aus, als ob der Absender die eMail direkt an ihn gesendet hätte. Von wem die eMail umgeleitet wurde ist nicht zu erkennen.

Symbolische Links

Die Möglichkeit Junction Points in NTFS anzulegen existiert bereits seit Windows 2000. Allerdings geht das nicht direkt mit Bordmitteln, sondern es wird ein zusätzliches Tool von Microsoft benötigt.

Um NTFS Junction Points anzulegen wird das Programm linkd.exe benötigt, welches jeweils im Windows Resource Kit enthalten ist.

Mit linkd Zielverzeichnis Quellverzeichnis kann ein Link erstellt werden.

NOTE: Microsoft strongly recommends:

Use NTFS ACLs to protect junction points from inadvertent deletion.

Use NTFS ACLs to protect files and directories targeted by junction points from inadvertent deletion or other file system operations.

Never delete a junction point using Explorer, a del /s command, or other file system utilities that walk recursively into directory trees. These utilities will affect the target directory and all subdirectories. Instead, use the utilities described below to delete junction points.

Use caution when applying ACLs or changing file compression in a directory tree that includes NTFS Junction Points.

Do not create namespace cycles with NTFS or DFS junction points.

Place all your junction points at a secure location in a namespace where you can test them out in safety, and other users will not mistakenly delete them or walk through them.

Link: Windows 2003 Resource Kit Tools

Windows NT schneller starten

Windows NT erwartet bekanntlich beim Hochfahren immer die Eingabe von Username und Passwort. In vielen Bereichen ist dieses Sicherheitsfeature aber eher hinderlich. Durch entsprechende Einträge in der Registry können Sie die Anmeldung automatisieren. Legen Sie dazu folgende Schlüssel an: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\WinLogonmit diesen Werten:

 AutoAdminLogon (REG_SZ) = "1"
 DefaultPassword (REG_SZ) = "<Betreffendes Passwort>"
 DefaultUserName (REG_SZ) = "<Betreffenden Username>"
 DefaultDomain (REG_SZ) = "<Betreffende Domain>"

Der Eintrag Default Domain wird nur benötigt, wenn Sie sich tatsächlich an einer Domain anmelden

Putty Einstellungen übernehmen

Um Einstellungen von Putty von einem System auf ein anderes zu übertragen, können die Einstellungen aus der Registry des Rechners exportiert werden und auf einem neuen Rechner wieder importiert werden. Anschließend stehen alle Einstellungen und Sitzungen auf dem neuen System zur Verfügung.

Die Einstellungen befinden sich in der Registry unter HKCU\Software\SimonTatham. Einfach diesen Baum in eine *.reg Datei exportieren und diese dann wieder einlesen.

Der Export kann einfach mit dem Befehl regedit /e putty.reg HKEY_CURRENT_USER\Software\SimonTatham exportiert und mit regedit /s putty.reg wieder importiert werden.

Service Pack 2 in Windows-XP-CD integrieren

Für die Integration wird zum einen das SP2 für XP als auch die original Installations-CD benötigt.

  1. Als erstes muss die Original-CD auf die Festplatte kopiert werden. Es wird davon ausgegangen, daß die CD in nach E:\XP_INST kopiert wird.
  2. Anschließend wird das SP2 mit dem Parameter /integrate:<Pfad>. Pfad ist dabei der Ordner, in dem sich die Original-Dateien der Installations-CD befinden, in diesem Fall also E:\XP_INST. Dabei darf kein Leerzeichen zwischen integrate: und dem Pfad stehen. Als Ergebnis erhält im Wurzelverzeichnes des SP2 eine Datei win51ip.SP2.
  3. Mit Nero kann das Image nun auf CD gebrannt werden. Dazu wird ein neue Projekt vom Typ CD-ROM (Boot) erstellt. Der benötigte Bootblock kann hier heruntergeladen werden. Als Emulation sollte Keine Emulation verwendet werden, der Name für den Bootblock ist beliebig, Ladesegment 0C70 und 4 Bootblocks.

Link: Service Pack 2 in Windows-XP-CD integrieren

Active-Directory Migration auf Windows 2003

Installation eines W2K3-Servers in einer W2K-Domain, und Migration der Domain auf W2K3:

Vor der Installation sollte mit dcdiag überprüft werden, ob die Domäne ordnungsgemäß funktioniert. Sollten DNS-Einträge müssen diese zunächst repariert werden.

  1. Auf dem W2k-Server die W2k3-CD einlegen und adprep.exe /forestprep aus dem Verzeichnis i386aufrufen. Anschließend kontrollieren, ob die Domäne erfolgreich vorbereitet wurde. Dazuadsiedit.msc starten und unter CN=Configuration nach einem Eintrag CN=ForestUpdates suchen. Unterhalb von diesem Eintrag sollte ein weiterer Eintrag CN=Windows2003Update zu finden sein.
  2. Mit adprep /domainprep die Änderungen der Domäne an alle Server propagieren. Anschließend wieder im adsiedit kontrollieren ob die Änderungen richtig eingetragen wurden. Dazu unter ‘Domain\DC=[domäne], DC=[tld]\CN=System\CN=DomainUpdates’ nach dem EintragCN=Windows2003Update suchen.
  3. Nachdem die Domäne für das Update soweit vorbereitet ist, kann der W2K3-Server installiert/gestartet werden. Dort auf der Kommandozeile das Programm dcpromo ausführen, und den Server zum Domänen-Controller machen.

Abschließend muss der neue Server noch zum Betriebsmaster, PDC und Schemamaster heraufgestuft werden, um den alten W2K-Server abzulösen. Wenn der alte Server auch DNS-Server war, dann muss der neue Server ebenfalls zum DNS-Server gemacht werden, und bei dem alten Server ggf. als DNS-Server eingetragen werden (Netzwerkverbindungen), damit der alte Server sich bei dem neuen DNS-Server registrieren kann. Nun muss nur noch der globale Katalog zu dem neuen Server transferiert werden. DazuActive Directory-Standorte und -Dienste aufrufen und unterSites\[Standortname]\Servers\[neuer Server Name]\NTDS Settings bei den Eigenschaften den Haken bei globaler Kalatog machen. Danach müssen sich die Server einmal replizieren, was irgendwann automatisch geschieht, oder per repadmin.exe /syncall erzwungen werden kann. Nun kann der Haken bei globaler Katalog bei den NTDS Settings des alten Servers entfernt werden, und der alte Server kann mit dcpromo zum normalen Mitgliedserver herabgestuft werden.

Link: Migration von Windows 2000 Domänen auf Windows Server 2003

FTP per Batch

Mit Hilfe des Kommandozeilen FTP-Programms lassen sich auch ganze FTP-Sitzungen automatisieren.

Dazu muss zunächst eine FTP Steuerdatei angelegt werden, in der alle Befehle für die FTP-Sitzung aufgeführt sind.

Ein solche Steuerdatei könnte so aussehen:

 open ftp.meine-domain.org
 meinAccount
 meinPasswort
 bin
 prompt
 cd /pub/incoming
 mput *.doc
 cd /pub/
 mget *.xls
 quit

In diesem Beispiel wird eine Verbindung zum FTP-Server ftp.meine-domain.org mit dem Login meinAccount und dem Passwort meinPasswort. Anschließend wird in den Binary-Modus gewechselt und der Prompt deaktiviert, damit keine interaktiven Fragen vom FTP-Server kommen. Schließlich wird in das Verzeichnis /pub/incoming gewechselt und dort werden alle doc Dateien aus dem aktuellen lokalen Verzeichnis hochgeladen. Danach werden alle xls Dateien aus dem FTP-Verzeichnis /pub in das aktuelle Verzeichnis heruntergeladen. Nur im Zusammenhang mit mget und mput können Wildcarts bei den Dateinamen verwendet werden.

Damit das ganze beispielsweise automatisiert in einem Schedule ablaufen kann, muß diese FTP-Sitzung nun noch aus einer Batch-Datei aus aufgerufen werden:

 @echo off
 cd c:\
 ftp.exe -s:mySession.ftp > mySession.log

Mit dem Parameter -s: wird dem FTP-Programm mitgeteilt, die angegebene Sitzungsdatei zu verarbeiten. Zur besseren Kontrolle werden sämtliche Ausgaben der FTP-Sitzung in die Protokolldatei mySession.log gespeichert.

Download Beispiel: ftp_per_batch