wildlife

Archive for Tutorials

Überprüfen des Patchstands von Kaspersky Anti-Virus Produkten über das Administration Kit

// January 8th, 2010 // 1 Comment » // IT, Kaspersky, Security, Tutorials

Um den Patchstand der Anti-Virus Produkte (z.B. Kaspersky Anti-Virus für Windows Workstation MP4, Network Agent 8) mit dem Administration Kit zu überprüfen, kann beim Administration Kit 8 das "Protokoll über Versionen von Kaspersky-Lab-Anwendungen" genutzt werden. Allerdings müssen hier noch weitere Optionen aktiviert werden.

Dazu öffnet man die Eigenschaften des Protokolls und wechselt auf den Reiter "Details" und klickt dort auf  den Button "Hinzufügen":

(more...)

Magix Music Cleaning Lab 2008 und andere ältere Programmversionen unter Windows 7 installieren

// January 6th, 2010 // No Comments » // IT, Tutorials

Nachdem ich gerade feststellen durfte, dass sich Magix Music Cleaning Lab 2008 aufgrund eines Fehlers nicht unter Windows 7 installieren lässt, habe ich ein wenig gesucht und bin auf die Lösung gestoßen.

Scheinbar ist in der Installationsdatei (MSI-Paket) eine Überprüfung der Betriebssystemversion enthalten. Aufgrund dessen, dass Magix Music Cleaning Lab 2008 bereits vor der Veröffentlichung von Windows 7 verkauft und ausgeliefert wurde, war dieses Betriebssystem noch nicht bekannt und daher schlägt die Installation fehl. Der Trick ist hierbei, den Kompatibilitätsmodus von Windows 7 zu aktivieren. Dazu öffnet man die Dateieigenschaften der setup.exe:

und aktiviert unter dem Reiter "Kompatibilität" die Option "Programm im Kompatibilitätsmodus ausführen für:" und wählt im Dropdown-Feld "Windows Vista (Service Pack 2) aus:

Anschließend lässt sich die Installation wie gewohnt und ohne Probleme durchführen.

Batch-Script zum rekursiven Löschen von Dateien und Verzeichnissen

// January 5th, 2010 // 3 Comments » // IT, Tutorials

Aufgrund eines aktuellen Anlass (Servus Michi ;) ), habe ich mich gerade mal daran gemacht ein Batchscript zu schreiben, mit dem man Dateien und Verzeichnisse unterhalb eines anzugebenden Pfades löschen kann. Viele nutzen hierfür einfach den DOS-Befehl "RD". Dieser löscht jedoch das angegebene Verzeichnis selbst mit. Mir war es jedoch wichtig, dass das angegebene Verzeichnis bestehen bleibt.

Zu Beginn wird das entsprechende Verzeichnis in eine Variable geschrieben, um das Script schnell für andere Arbeiten anzupassen. Alternativ kann natürlich mit der Übergabe von Parametern gearbeitet werden. Als nächstes wird eine FOR-Schleife abgearbeitet, bei der zuerst alle Unterverzeichnisse aufgelistet und diese dann mitttels RD rekursiv gelöscht werden. Damit sind die Verzeichnisse bereits erledigt. Danach werden mit dem Befehl DEL noch die im Verzeichnis selbst enthaltenen Dateien gelöscht und der Ordner ist leer.

Hier das Script:

set deldir=C:\xxx\yyy\zzz

for /F "Tokens=*" %%i IN ('Dir /AD /B "%DELDIR%"') DO RD /Q /S "%DELDIR%\%%i"
del /F /S /Q "%DELDIR%\*.*"

Über Feedback oder Verbesserungsvorschläge in den Kommentaren freue ich mich.

Klingeltöne für das iPhone selbst erstellen

// January 4th, 2010 // 4 Comments » // IT, Tutorials, iPhone

Die bereits installierten Klingeltöne des iPhones sind nicht wirklich schön und nach einiger Zeit werden sie langweilig. Da leider nicht einfach mp3-Dateien als Klingelton in den Eigenschaften des iPhones angegeben werden können, habe ich eine Anleitung erstellt, nach der man eigene Klingeltöne erstellen und einbinden kann.

Dazu nimmt man das Lied, welches man als Klingelton nutzen möchte, in die Musik Mediathek auf:

Anschließend wechselt man in die Eigenschaften des Lieds (Rechtsklick auf den Track > Informationen) und gibt unter Optionen bei "Starten bei" und "Stoppen bei" den Teil des Tracks an, welchen man später als Klingelton nutzen möchte. Wichtig hierbei ist, dass die Dauer nicht über 30 Sekunden sein darf:

(more...)

Windows-Funktionen unter Windows 7 schneller finden

// December 30th, 2009 // 4 Comments » // IT, Tutorials

Auf Stoibär habe ich einen Windows 7 Tweak gefunden, der einem wirklich viel Arbeit abnehmen kann, gut funktioniert und einfach geekig ist.

Da Microsoft bei nahezu jeder neuen Version des Betriebssystems die Funktionen an anderer Stelle versteckt, ist es oft ein Krampf diese wiederzufinden. So sind die installierten Programme z.B. nicht mehr unter Software sondern unter Programme und Funktionen zu finden. Um Abhilfe zu schaffen, legt einfach einen neuen Ordner mit dem Namen

GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}

an und öffnet diesen. Et Voilà, sämtliche Funktionen schön sortiert auf einen Blick.

USBDeview zum Löschen von USB-Geräten unter Windows

// December 28th, 2009 // No Comments » // IT, PocketPC, Tutorials

Nachdem ich mir gestern testweise ein ROM mit Windows Mobile 6.5 auf meinem MDA Vario III (HTC TyTN II / Kaiser) installiert habe, hatte ich große Probleme mit der Synchronisierung. Zu Beginn war das Problem, dass sozusagen noch das Gerät im Windows Mobile-Gerätecenter aktiv war, welches das 6.1er ROM installiert hatte. Die Erstellung einer Partnerschaft mit dem neuen Gerät schlug fehl, die alte Partnerschaft konnte nicht gelöscht werden.

Was tun? Nach kurzer Suche stieß ich dann auf USBDeview:

USBDeview is a small utility that lists all USB devices that currently connected to your computer, as well as all USB devices that you previously used. For each USB device, extended information is displayed: Device name/description, device type, serial number (for mass storage devices), the date/time that device was added, VendorID, ProductID, and more...
USBDeview also allows you to uninstall USB devices that you previously used, and disconnect USB devices that are currently connected to your computer. You can also use USBDeview on a remote computer, as long as you login to that computer with admin user. (via Nirsoft)

Um das neue Mobil-Gerät neu erkennen zu lassen, habe ich es vom Computer getrennt, mit USBDeview das entsprechende Geräte "deinstalliert" und den PDA wieder mit dem Computer verbunden. Nun wurde es erfolgreich erkannt.

Wer also Altlasten an USB-Geräten loswerden oder einfach Treiber nochmal neu laden möchte, kann auf dieses Tool zurückgreifen.

  USBDeview (61.8 KiB, 105 hits)

Teamspeak 3 – Umstellen von SQLite auf MySQL

// December 27th, 2009 // 37 Comments » // IT, Tutorials

Wenn die Performance bei Einsatz von Teamspeak 3 mit SQLite etwas schwächelt oder größere Teamspeak 3 Server genutzt werden sollen, empfiehlt sich ein Umstieg auf eine MySQL-Datenbank. Dabei kann man wie folgt vorgehen. Die Anleitung basiert auf einem Linux-Betriebssystem, auf welchem sqlite3 bereits installiert ist. Sollte sqlite noch nicht installiert sein, kann man dies z.B. über "zypper install sqlite3" oder "apt-get install sqlite3" nachinstallieren. SQLite 1 bzw. 2 reichen hier leider nicht, da sonst beim Export die Fehlermeldung "Unable to open database "ts3server.sqlitedb": file is encrypted or is not a database" erscheint.

Als erstes benötigen wir einen Dump der bestehenden SQLite-Datenbank des Teamspeak 3 Servers. Diesen erstellen wir über den Befehl:

sqlite3 ts3server.sqlitedb .dump .quit >> ts3  sqldump.sql

Damit der sqlite-Export auch noch in ein passendes Format für MySQL kommt, müssen folgende Änderungen (am Besten in einem Editor, wie z.B. Notepad++, Vi) vorgenommen werden:

  1. alle " durch ` ersetzen
  2. alle Zeilen löschen, welche folgende Befehle enthalten:
    1. BEGIN TRANSACTION;
    2. COMMIT;
    3. sqlite_sequence
  3. ersetzen von "autoincrement" durch "auto_increment"
  4. Nun einfach die .sql-Datei in MySQL (z.B. mittels phpMyAdmin, mySQLdumper, etc.) importieren

Import der Datenbank in MySQL

Anschließend sollte die Datenbankstruktur ungefähr wie folgt aussehen:

Struktur in MySQL-Datenbank nach Import

Nun müssen wir Teamspeak 3 noch mitteilen, wo die MySQL-Datenbank gefunden werden kann und mit welchen Anmeldedaten zugegriffen werden muss, um die Verbindung erfolgreich aufbauen zu können. Dazu legen wir die Datei "ts3db_mysql.ini" an:

vim ts3db_mysql.ini

In dieser Datei speichern wir nun die benötigten Informationen. Die Werte müssen natürlich entsprechend Eurer MySQL-Konfiguration angepasst werden:

[config]
 host='SERVERNAMEorIP'
 port='usually3306'
 username='DBusername'
 password='1234xyz'
 database='TS3'
 socket=

Anschließend lassen wir uns entweder eine ini-Datei mit den Startparametern für Teamspeak 3 über "./ts3server_linux_x86 createinifile=1" erstellen oder bearbeiten die bereits bestehende Datei. Wichtig ist, dass die drei folgenden Werte wie beschrieben angepasst werden:

dbplugin=ts3db_mysql
dbpluginparameter=ts3db_mysql.ini
dbsqlcreatepath=create_mysql/

Danach können wir den Teamspeak 3 Server mit der neuen ini-Datei starten:

./ts3server_linux_x86 inifile=ts3server.ini

Wenn wir uns nun mit dem Teamspeak 3 Client auf den Server verbinden sehen wir, dass der Server nun mit MySQL als Basis läuft:

# ./ts3server_linux_x86 inifile=server.ini
Logging started
2009-12-27 09:52:08.890190|INFO    |ServerLibPriv |   | Server Version: 3.0.0-beta5 [Build: 9462]
2009-12-27 09:52:08.891803|INFO    |DatabaseQuery |   | dbPlugin name:    MySQL plugin, (c)TeamSpeak Systems GmbH
2009-12-27 09:52:08.891917|INFO    |DatabaseQuery |   | dbPlugin version: 1
2009-12-27 09:52:09.195127|INFO    |Accounting    |   | Licensing Information
2009-12-27 09:52:09.195985|INFO    |Accounting    |   | licensed to       : Torsten
2009-12-27 09:52:09.196600|INFO    |Accounting    |   | type              : Non-profit
2009-12-27 09:52:09.197240|INFO    |Accounting    |   | starting date     : Tue Dec 22 00:00:00 2009
2009-12-27 09:52:09.197768|INFO    |Accounting    |   | ending date       : Wed Dec 22 00:00:00 2010
2009-12-27 09:52:09.198248|INFO    |Accounting    |   | max virtualservers: 10
2009-12-27 09:52:09.198680|INFO    |Accounting    |   | max slots         : 512
2009-12-27 09:52:09.218065|INFO    |FileManager   |   | listening on x.x.x.x:30033
2009-12-27 09:52:09.250340|INFO    |VirtualServer |  1| listening on x.x.x.x:9987
2009-12-27 09:52:09.251054|INFO    |Query         |   | listening on x.x.x.x:10011

XDebug – Installation und suche nach Performanceproblemen auf Webservern

// December 27th, 2009 // 14 Comments » // Blog / Website, IT, Tutorials

Um den Performanceproblemen auf den Grund zu kommen, hat mir Uli Xdebug empfohlen. Xdebug ist ein Debugger und Profiler Tool für PHP:

The Xdebug extension helps you debugging your script by providing a lot of valuable debug information. The debug information that Xdebug can provide includes the following:

  • stack traces and function traces in error messages with:
    • full parameter display for user defined functions
    • function name, file name and line indications
    • support for member functions
  • memory allocation
  • protection for infinite recursions

Da Zypper, mit den Repositories von meinem Strato vServer, Xdebug leider nicht kannte, musste ich es manuell installieren. Dazu habe ich mir das aktuelle Paket in der Version 2.0.5 per wget geladen und entpackt:

wget http://xdebug.org/files/xdebug-2.0.5.tgz
tar xfvz xdebug-2.0.5.tgz

Da für die Ausführung phpize notwendig ist und mir das Paket autoconf fehlte, habe ich diese nachinstalliert (auf autoconf wird man nicht explizit hingewiesen, aber Google weiß ja alles):

zypper install php5-devel
zypper install autoconf

Anschließend führt man phpize aus, kompiliert die Sources und kopiert die Binary an einen Ort, den man gut wiederfindet:

phpize
./configure --enable-xdebug
make
cp modules/xdebug.so /to/wherever/you/want/it

Um das Modul für PHP zu aktivieren, gibt man die xdebug-Binary in der php.ini (bei mir /etc/php5/apache2/php.ini) an und startet den Webserver neu:

zend_extension="/wherever/you/put/it/xdebug.so"
/etc/init.d/apache2 restart

Anschließend kann man eine phpinfo-Datei auf dem Webserver erstellen um zu prüfen, ob das Modul erfolgreich eingebunden wurde.

xdebug integration on phpinfoIn der php.ini ergänzt man den o.g. Eintrag um die folgenden Einstellungen

xdebug.profiler_enable="0"
xdebug.profiler_output_dir="/tmp/xdebug"
xdebug.profiler_output_name="cachegrind.out.%u.%p"
xdebug.profiler_enable_trigger="1"

Ich empfehle enable auf 0 zu belassen und enable_trigger auf 1, so dass die Logs nur generiert werden, wenn die Webseite über "http://url-des-webhosts/?XDEBUG_PROFILE" aufgerufen wird. Dies verhindert, dass der Festplattenspeicher vollläuft, was wirklich schnell passieren kann. Als nächstes sollte noch das Verzeichnis erstellt werden (sofern nicht bereits vorhanden), welches wir unter output_dir angegeben haben:

mkdir -p /tmp/xdebug
chmod 1777 /tmp/xdebug/

Zur Auswertung stehen einem unter Windows WinCacheGrind oder unter Linux KCacheGrind zur Verfügung:

WinCacheGrind

Auf Feldstudie.net lagen die Probleme hauptsächlich bei den Plugins Global Translator, Similar Posts, WP-Syntax und WP-Ads. Ich habe diese nun entfernt. Außerdem habe ich das Javascript bzw. die Tab-Funktionalität aus der Sidebar entfernt und die letzten Kommentare über das Standardwidget eingebunden.

Zusammen mit der Reaktivierung der Compression (Deflate, GZip) konnte ich die Antwortzeit des Webservers von ca. 6-9 Sekunden auf 2-3 Sekunden senken. Ich denke, damit kann man getrost leben. :)

Dank geht wiedermal an Uli, der mir Xdebug empfohlen hat.