www.sciforce.de

Technologie, Multimedia und der ganze Rest…

Durchsuche Beiträge in Howto

Da seit ewigen Zeiten tatsächlich mal wieder eine App auf meinem iPhone hing, wollte ich diese wie gewohnt durch längeres Halten des Home-Buttons beenden. Das einzige was dadurch aktiv wurde, war die Sprachsteuerung. Also habe ich mal kurz im Netz recherchiert und die Lösung ist simpel:

  • Wenn die fehlerhafte App aktiv ist, drückt man den Ausschalter so lange, bis der Ausschalten-Slider eingeblendet wird
  • Nun drückt man etwa 6 Sekunden den Homebutton und die Anwendung wurde beendet

Ich musste heute auf einem Linux-System ohne grafische Oberfläche eine Konfigurationsdatei anpassen. Hierbei sollte der alte Servername an vielen Stellen gegen den neuen Hostname ausgetauscht werden. Natürlich kann man die einzelnen Fundstellen von Hand editieren, aber im “Vi” gibt es einen schönen Ausdruck, mit dem ein String gesucht und ersetzt werden kann.

Wer “Vi” nicht kennt, es handelt sich hierbei um einen Editor (der über extrem viele Shortcuts und Anpassungsmöglichkeiten verfügt), der auf jedem Linux-/Unix-System zu finden ist. Die Bedienung ist etwas gewöhnungsbedürftig, ermöglicht aber nach etwas Einarbeitungszeit extrem schnelles Editieren und Coden.

Nun aber zum “Suchen und Ersetzen” mit vi:

Möchte man alle Fundstellen gegen einen neuen String austauschen, so bringt folgendes Kommando das gewünschte Ergebnis:

:%s/string_alt/string_neu /g

Möchte man nur eine Zeichenkette austauschen, so lässt man einfach das “/g” weg.

Da hierbei reguläre Ausdrücke verwendet werden, ist es wichtig vor speziellen Zeichen, wie z.B. einem Punkt, den so genannten Escapecharacter einzufügen. Hierbei handelt es sich um einen Backslash “\”. Statt . würde man also \. eingeben.

Wichtig !!!
Seid vorsichtig mit Befehlen im Terminal, ausgeführte Befehle können euer System dauerhaft schädigen und zu Datenverlusten führen. Also verschafft euch zuerst das notwendige Wissen und verwendet erst dann das Terminal. Ich hafte nicht für Schäden, die durch die Anwendung meiner Howtos entstehen.

Wichtig !!!

Seid vorsichtig mit Befehlen im Terminal, ausgeführte Befehle können euer System dauerhaft schädigen und zu Datenverlusten führen. Also verschafft euch zuerst das notwendige Wissen und verwendet erst dann das Terminal. Ich hafte nicht für Schäden, die durch die Anwendung meiner Howtos entstehen.

Links:

In der aktuellen WordPress Version 2.8.3 kann ein Angreifer eine Schwachstelle ausnutzen, um den Admin auszusperren. Hierbei wird ein Fehler im Mechanismus für das Zurücksetzen des Passworts ausgenutzt. Bis ein Patch verfügbar ist, kann man die Lücke wie folgt schließen:

Öffnet in einem Editor die Datei wp-login.php in eurer aktuellen WordPress Installation. Springt zur Zeile 190 und ersetzt die Zeile

if  ( empty( $key ) )

durch

if  ( empty( $key ) || is_array( $key ) )

So sieht also der neue Codeblock aus:

if ( empty( $key ) || is_array( $key ) )
return new WP_Error(‘invalid_key’, __(‘Invalid key’));

if ( empty( $key ) || is_array( $key ) )

return new WP_Error(‘invalid_key’, __(‘Invalid key’));

Sollte man euch bereits ausgesperrt haben, so empfiehlt WordPress die Verwendung eines Notfallscripts, mit dem ihr euren Zugang wieder freischalten könnt. Hierfür müsst ihr per SSH auf euren Webspace zugreifen können.
Links:

Ich bin heute auf ein geniales Tool gestoßen, um Ubuntu (oder eine andere Linux-Distro) per USB-Stick zu installieren. Das eignet sich natürlich besonders für Geräte ohne DVD-Laufwerk, wie z.B. die aktuellen Netbooks, oder eben für mein kleines Thinkpad X61s. Das Tool von dem ich hier schreibe nennt sich UNetbootin, ist Open Source und kann von sourceforge.net in einer Windows- und einer Linux-Version geladen werden. Ich habe mich für die Windows-Variante entschieden. Nach dem Herunterladen und Entpacken des Programms kann es auch direkt ohne Installation gestartet werden.

unetbootin_01.jpg

Als erstes wählt man die zu installierende Linux-Variante aus, in meinem Fall Ubuntu. Anschließend wählt man das zugehörige ISO-Image aus, das man von der jeweiligen Distributions-Homepage geladen hat. Als Typ kommt bei mir nur USB Drive in Frage und an dieser Stelle sollte man überprüfen, dass das angezeigte Laufwerk auch zu dem USB-Stick passt, denn dieser verliert bei einem Klick auf “OK” jegliche Daten und das Tool kopiert die notwendigen Installationsdaten auf den Stick und macht ihn bootfähig.

unetbootin_02.png

unetbootin_03.png

Nach der Installation kann man zwischen einem Neustart wählen, wenn das Linux auf dem aktuellen System aufgespielt werden soll, oder man beendet den Assistenten und nutzt den USB-Stick an jedem beliebigen Gerät, das von USB booten kann. Denkt daran, dass Ihr im BIOS das Booten von USB aktiviert!

Wenn ihr von dem USB-Stick hochfahrt, startet bei Ubuntu ein Live-Modus und ihr könnt zuerst mal Ubuntu etwas testen, oder ihr klickt auf dem Desktop auf Installieren. So einfach war es echt noch nie, ein Linux per USB-Stick zu nutzen. Also probiert es ruhig mal aus.

Links:

Bisher habe ich Wireshark immer per MacPorts oder mit Fink installiert, da jedoch mittlerweile ein Binary für Mac OS X existiert und dieses die neueste Version beinhaltet, installierte ich Version 1.2.1 direkt per DMG. Die Installation ist in der beigelegten Readme gut erklärt, doch nach dem ersten Start erhielt ich folgende Fehlermeldung:

wireshark_mibs_01

Der Grund hierfür ist eine fehlende Pfadangabe in den Einstellungen von Wireshark. Ruft also über das “Edit Menü” die “Preferences” auf, wechselt zu “Name Resolution” und klickt neben “SMI (MIB and PIB) paths” auf “Edit…”.

wireshark_mibs_03

Es öffnet sich ein neues Fenster, in dem Ihr auf “New” klicken und folgenden Pfad eintragen müsst:

/usr/share/snmp/mibs

wireshark_mibs_04

Mit “OK” alle Dialoge schließen, Wireshark neu starten und der Fehler sollte Geschichte sein.

Links:

Wer mit Windows Usern gemeinsam auf Netzlaufwerken arbeitet, der hat bestimmt schon oft die Frage gehört “Wo kommt denn die Datei .DS_Store her und was macht die?”. Auf Mac Systemen fällt diese versteckte Datei dem User selten bis gar nicht auf. Sie speichert individuelle Einstellungen eines Verzeichnisses, wie z.B. die Position von Icons, oder auch die Vorschaubilder für die Anzeige von Dateien im Finder. Um Probleme mit den genervten Windows Usern zu vermeiden, kann man die Erstellung von .DS_Store auf Netzlaufwerken verhindern (natürlich mit der Einschränkung, dass die darauf aufbauenden Funktionen auf diesem Laufwerk dann nicht verfügbar sind). Es gibt Tools, die das für einen erledigen, wie z.B. TinkerTool oder MacPilot, oder man tippt eine Zeile in das Terminal ein. Da bei mir MacPilot einen falschen Wert gesetzt hat, habe ich das ganze wie folgt per Terminal glatt gezogen:

Lesen der aktuellen Einstellung:

  • defaults read com.apple.desktopservices DSDontWriteNetworkStores
  • Wird hier ein false zurückgegeben, so wird .DS_Store auf Netzlaufwerken erzeugt

Einstellung ändern, so dass keine .DS_Store auf Netzlaufwerken erstellt wird:

  • defaults write com.apple.desktopservices DSDontWriteNetworkStores true

Das war es auch schon und die Windows User sind wieder glücklich ;)Links:

Wichtig !!!
Seid vorsichtig mit Befehlen im Terminal, ausgeführte Befehle können euer System dauerhaft schädigen und zu Datenverlusten führen. Also verschafft euch zuerst das notwendige Wissen und verwendet erst dann das Terminal. Ich hafte nicht für Schäden, die durch die Anwendung meiner Howtos entstehen.

Wichtig !!!

Seid vorsichtig mit Befehlen im Terminal, ausgeführte Befehle können euer System dauerhaft schädigen und zu Datenverlusten führen. Also verschafft euch zuerst das notwendige Wissen und verwendet erst dann das Terminal. Ich hafte nicht für Schäden, die durch die Anwendung meiner Howtos entstehen.

Da ich von mehreren Rechnern aus auf einen netzwerkfähigen HP LaserJet 1022n drucken möchte, sollen diese per IP auf den Drucker zugreifen. Unter Windows funktioniert dies auf Anhieb, da der angebotene Treiber auch erkannt wird. Unter Mac OS X ab Leopard funktioniert der von HP angebotene Treiber bei mir nicht mehr und so habe ich nach einer Alternative gesucht.

Der erste Gedanke war natürlich die Verwendung des Standard Postscript Treibers, doch dieses Modell unterstützt nur PCL. Da ich für aufwendigere Dokumente sowieso auf größeren Maschinen drucke, habe ich den Treiber des LaserJets 6L ausgewählt, der (fast) immer funktioniert. Auf dem Mac ist die Gutenprint-Version dieses Treibers vorhanden und er funktioniert wunderbar. Hier noch zwei Screenshots, welche die notwendige Konfiguration zeigen:

In letzter Zeit habe ich verschiedene Tools wie Voila oder LittleSnapper für das Erstellen von Screenshots getestet, aber gerade mit der Art der Bildablage war ich nicht zufrieden. In der Regel benötige ich die Bilder direkt für das Web und das geht am schnellsten mit den bereits in Mac OS X integrierten Shortcuts.

shift+cmd+3 = Screenshot des gesamten Bildschirms

shift+cmd+4 = Mit einem Fadenkreuz kann ein Bereich ausgewählt werden

shift+cmd+4 danach die Leertaste drücken = Umschalten auf intelligente Kamera die den aktuellen Bereich festhält

Die Screenshots werden automatisch auf dem Desktop abgelegt, will man diese nur in die Zwischenablage kopieren, so muss man beim Erstellen zusätzlich die ctrl-Taste drücken.

Das Dateiformat der erstellten Bilder ist png und da mir jpg lieber ist, habe ich das im Terminal angepasst. Hierfür startet man das Programm Terminal in den Dienstprogrammen und gibt folgenden Befehl ein:

defaults write com.apple.screencapture type jpg

Danach muss sich der aktuelle Benutzer nur noch abmelden und wieder anmelden, dann ist diese Einstellung aktiv. Wer wieder das Standardformat nutzen möchte, der tauscht in dem Befehl lediglich jpg gegen png aus.

Auf neueren Mac Tastaturen wurde Exposé und das Dashboard auf die Tasten “F3″ und “F4″ gelegt und auch grafisch so aufgedruckt. Bei der Mausbedienung ist dies auch granz praktisch, da die linke Hand die Tasten bequem erreichen kann. Will man nun aber lediglich alle Fenster der aktiven Applikation sehen, so ist hierfür die Taste “F10″ vorbelegt. Um “F10″ ohne Sonderfunktion zu betätigen, muss die Taste “fn” gehalten werden und genau dabei habe ich das Problem, dass ich zwei Hände benötige. Dies kann man auf einfache Art und Weise umgehen, denn folgende Shortcuts sind bereits hierfür reserviert:

F3 = Exposé

F4 = Dashboard

ctrl+F3 = Alle Fenster des aktiven Programms

alt+F3 = Ruft die Systemsteuerung mit dem Reiter Exposé/Spaces auf

cmd+F3 = Alle Fenster ausblenden

Diese Möglichkeit war mir neu und vielleicht hat noch jemand genau danach gesucht. Ich finds genial, da ich so ohne weitere Konfiguration und vor allem wieder einhändig Fenster schubsen kann.

Administratoren nutzen Nmap schon jeher für Netzwerkanalysen, Sicherheitsüberprüfungen und zur Fehlerbehebung. Es gibt kaum eine Plattform, auf der Nmap noch nicht läuft und so kann man es natürlich auch auf dem Mac einsetzen. Entweder man lädt das Binary von der Nmap Homepage oder man installiert es per Fink oder MacPorts. In meinem Fall habe ich es über Fink installiert und beim ersten Test spuckte das Terminal nur folgende Fehlermeldung des Befehls getinterfaces aus:

Starting Nmap 4.20 ( http://insecure.org ) at 2009-07-17 16:59 CEST
getinterfaces: Failed to open ethernet interface (vmnet8). A possible cause on BSD operating systems is running out of BPF devices (see http://seclists.org/lists/nmap-dev/2006/Jan-Mar/0014.html).
QUITTING!

Starting Nmap 4.20 ( http://insecure.org ) at 2009-07-17 16:59 CEST

getinterfaces: Failed to open ethernet interface (vmnet8). A possible cause on BSD operating systems is running out of BPF devices (see http://seclists.org/lists/nmap-dev/2006/Jan-Mar/0014.html).

QUITTING!

Nach kurzer Recherche wurde klar, dass es an meiner VMware Fusion Installation liegt. VMware Fusion ist eine Virtualisierungssoftware für den Mac, mit der man z.B eine Windows Installation in Mac OS X laufen lassen kann. Hierbei werden auch virtuelle Netzwerkinterfaces speziell für die virtuellen Maschinen angelegt, die in diesem Fall die Ausführung von Nmap verhindern.
Das Problem kann beseitigt werden, in dem man die virtuellen Netzwerke kurzfristig deaktiviert, Nmap ausführt und anschließend die virtuellen Netzwerke wieder aktiviert. VMware bietet hierfür bereits zwei Shellskripte an, die auch beim Starten und Herunterfahren des Mac für diesen Zweck eingesetzt werden.
Um das ganze nun mit einem Befehl auszuführen, habe ich mir ein kleines Shellskript gebastelt, dem die Nmap Parameter übergeben werden und als Ausgabe sieht der User lediglich das Ergebnis des Scans. Nmap muss als Administrator (sudo auf dem Mac) ausgeführt werden, also muss auch das Skript mit sudo gestartet werden. Hier das Skript:
#!/bin/sh
sudo /Library/Application\ Support/VMware\ Fusion/boot.sh –stop &>/dev/null
/sw/bin/nmap $@
sudo /Library/Application\ Support/VMware\ Fusion/boot.sh –start &>/dev/null

Das Skript wird folgendermaßen abgearbeitet:
  • Der erste Befehl hält die virtuellen Netzwerke an und die Ausgabe wird nicht in der Konsole dargestellt, sondern in den Müll geschoben
  • Der nächste Befehl führt Nmap aus und nimmt als Variable die Parameter entgegen, die der User dem Skript mitgibt. Hier muss eventuell ein anderer Pfad zu Nmap eingetragen werden!
  • Der letzte Befehl startet die virtuellen Netzwerke wieder
So kann es ausgeführt werden:
  • Um das Skript ausführen zu können, muss das Execute Flag gesetzt werden. Dies muss nur einmal auf das Skript angewandt werden.
    • chmod u+x skript.sh
  • Skript mit Nmap Parametern und sudo ausführen. Das System fragt nach dem Passwort des Benutzers, dieser muss Mac OS X administrieren dürfen. Hier ein Beispiel:
    • sudo ./skript.sh -sS www.domain.org
Links:
Powered by WordPress Web Design by SRS Solutions © 2010 www.sciforce.de Design by SRS Solutions