Den Powerbutton an der Seite des Gerätes gedrückt halten und auf den Home-Button auf der Oberseite drücken. Ein kleiner Blitz und schon kann man den Screenshot unter “Fotos->Gesicherte Fotos” finden. Von dort kann man das Bildschirmfoto dann auch per Mail weiterleiten.
Flipboard auf dem iPad rockt!
Es muss einfach mal gesagt werden: die App Flipboard auf dem iPad rockt! Wie in einer Zeitschrift kann ich meine Net- und Social-News durchblättern. Ich wünschte nur, dass man noch eine Funktion für RSS-Feeds mit einbindet. Glücklicherweise haben die meisten Seiten ja mittlerweile einen vergleichbaren Twitter-Account, den man als Übergangslösung verwenden kann.
OAuth und WP to Twitter: finde den Access Token!
Twitter hat eine seltsame Menüführung wenn es um die Anbindung von Applikationen für die neue OAuth-Schnittstelle geht. Ich nutze das WP to Twitter-Plugin und habe genau die Anleitung für die OAuth-Anbindung an twitter.com befolgt. Einziges Problem: der notwendige Access Token (und das Access Token Secret) waren einfach auf der Seite nicht zu finden.
Nach langem Suchen bin ich fündig geworden. Man kann die Anbindung von zwei Seiten aus aufmachen. Einmal über http://twitter.com/apps, “Register a new application” und über http://dev.twitter.com/apps. Consumer key und Consumer secret werden bei beiden angezeigt – der Access Token aber nur bei dev.twitter.com über den Button “My Access Token” auf der rechten Seite.
ESXi vom USB-Stick installieren
Ja, es gibt Server ohne CD/DVD-Laufwerk. Gut wenn man einen FAT32-formatierten USB-Stick bereit liegen hat mit dem man auch die Installation von VMware’s ESXi 4 machen kann.
Variante 1:
- Download Unetbootin http://unetbootin.sourceforge.net/unetbootin-windows-latest.exe und ausführen
- VMware-VMvisor-Installer<version>.iso auswählen
- Laufwerk auswählen
- Los geht’s!

Variante 2:
- syslinux herunterladen, bei mir hat nur die 3.x Version funktioniert: http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.86.zip
- Als Administrator ausführen (auf das richtige Laufwerk achten, hier Laufwerk F:): syslinux-3.86\win32> syslinux.exe F: -fma
- VMware-VMvisor-Installer<version>.iso in Laufwerk F: entpacken (z.B. mit 7-zip)
- Datei isolinux.cfg in SYSlinux.cfg umbenennen
- Los geht’s!
Facebook !(gefällt) mir, aber mit Opera
Trotz aller Datenschutzbedenken gefällt mir Facebook ganz gut – solange man die Anwendungs-Platform deaktiviert hat. Aber der aktuelle Trend, auf jede Seite einen Facebook-Like-Button (oder auch “Gefällt mir”-Schaltfläche) zu setzen, bereitet mir und anscheinend auch anderen zunehmend Unbehagen. Auch als Nutzer von Facebook geht es Facebook nichts an, ob und wie lange ich auf Seiten im Internet surfe. Denn jeder Like-Button verlinkt auf Facebook und so bekommt Facebook wunderbar von jeder Seite mit Like-Button eine Information “Tobias besuchte http://www.gesundheitsprobleme.com.tw/potenzprobleme, Tobias besuchte http://www.monster.de/jobs/firmaxy, Tobias besuchte…”. Wohlgemerkt ohne den Button je gedrückt zu haben.
Ich habe daher eine praktische Opera-Funktion aktiviert: den URL-Filter. Über diesen Link findet man die Konfiguration-Datei für den aktuellen Benutzer, für die Bearbeitung sollte Opera geschlossen werden.
In der Sektion [exclude] folgende Zeilen einfügen:
http://www.facebook.com/plugins/like.php*
http://www.facebook.com/plugins/likebox.php*
Das sollte die Sache vorerst erledigen, vermutlich könnte man das Ganze auch auf /plugins/* ausdehen, aber vor allem der Like-Button hat eine große Verbreitung. Testen kann man das auf den folgenden Seiten, bei der bei jeweils rechts auch ein Beispiel angezeigt wird – oder auch nicht wenn die Blockierung greift.
http://developers.facebook.com/docs/reference/plugins/like
http://developers.facebook.com/docs/reference/plugins/like-box
Videos fürs iPad im Batch konvertieren
Gestern wollte ich einige .avi-Dateien in ein iPad kompatibles Format konvertieren. iTunes scheint das leider nicht von Haus aus zu unterstützen. Nach einigem relativ erfolglosen Googlen habe ich ein paar iPhone-Anleitungen mit ein paar alten Batch-Dateien kombiniert, mit denen ich mal Flash-Videos in AVI konvertiert habe.
Zutaten:
- MPlayer (genauer gesagt mencoder): http://www.mplayerhq.hu/, ich habe die Version MPlayer-p4-svn-31372 unter http://oss.netfarm.it/mplayer-win32.php genommen.
- MPlayer codec package: http://www.mplayerhq.hu/MPlayer/releases/codecs/windows-essential-20071007.zip, muss in das MPlayer codec Verzeichnis
- MPlayer aac codec (wegen Lizenzen nicht im Lieferumfang enthalten): http://oss.netfarm.it/mplayer-win32.php – dort nach libfaac-1.28.7z suchen, muss in das MPlayer codec Verzeichnis entpackt werden
Hier die convert_to_ipad.cmd. Es nimmt alle Avi-Dateien aus dem Verzeichnis G:\AVIs und konvertiert diese in das mp4-Format im selben Verzeichnis.
[sourcecode language="shell"]
set MPLAYERPATH=D:\Downloads\MPlayer\MPlayer-p4-svn-31372
set VIDEOPATH=G:\AVIs
for %%F IN (%VIDEOPATH%\*.avi) do %MPLAYERPATH%\mencoder.exe "%VIDEOPATH%\%%~nF.avi" -of lavf -lavfopts format=mp4 -vf scale=1024:-3 -ovc x264 -x264encopts crf=28:vbv_maxrate=1500:vbv_bufsize=2000:nocabac:global_header:frameref=3:threads=2:bframes=0:subq=6:mixed-refs=0:weightb=0:8x8dct=1:me=umh:partitions=all:qp_step=4:qcomp=0.7:trellis=1:direct_pred=auto -oac faac -faacopts mpeg=4:object=2:br=160:raw -channels 2 -srate 48000 -o "%VIDEOPATH%\%%~nF.mp4"
[/sourcecode]
UPDATE 2010-08-01: Ich habe die Parameter noch mal angepasst nach den Tipps von Mike. Die Variante vorher hat bei mir bei einigen Videos extremes Bildflackern erzeugt. Außerdem ist Bildverhältnis jetzt abhängig vom Input-Video (Parameter “-vf scale =1024:-3″).
UPDATE 2010-09-19: Der Link der Datei libfaac-1.28.7z hat sich geändert. Danke an Sören!
Top 10 der Usernamen bei ssh Brute-Force-Attacken
Yuri hat einen hübschen awk-Befehl gebaut, um sich eine Statistik der fehlgeschlagenen Anmeldeversuche ausgeben zu lassen.
http://yurisk.info/2010/06/04/top-10-usernames-used-in-ssh-brute-force/
[sourcecode language="shell"]
awk ‘/Failed password for/ ‘ /var/log/secure* | sed ‘s/.* \([[:print:]]\+\) from .*/ \1 /g ‘ | sort | uniq -c | sort -n -k1
[/sourcecode]
Das könnte dann z.B. so aussehen:
…
189 tester
190 123456
205 www
218 testing
255 user
293 guest
354 oracle
603 test
723 admin
14321 root
Meta News von rivva.de
Ich habe in den letzten zwei Wochen verstärkt rivva.de als News-Portal benutzt. Kann ich sehr empfehlen!
ReadyBoost wiederbeleben
Mein Vista SP2 hat sich heute morgen dazu entschieden, aus unbekannten Gründen ReadyBoost auf meiner SanDisk Extreme III SD-Card nicht mehr zuzulassen: “Das Gerät verfügt nicht über die notwendigen Leistungsmerkmale…”. Und das hat definitiv schon vorher funktioniert. Nach dem obligatorischen Googlen bin auf einen Artikel von Shlomi mit dem richtigen Tipp gekommen.
- SD-Card formatieren und entfernen
- mit regedit HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\EMDMgmt öffnen
- die Untereinträge löschen, ich habe nur die Untereinträge für die SD-Karte gelöscht, einfach nach z.B. Hersteller gucken, bei mir z.B. Ven_O2Micro
Beispielname: _??_SCSI#Disk&Ven_O2Micro&Prod_SD&Rev_0001#5&1fbc024f&0&000000#{53f56307-b6bf-11d0-94f2-00a0c91efb8b}RDYBST_2483886225 - SD-Card wieder einstecken und ReadyBoost wieder aktivieren.
Shlomi hat das für USB-Flashdrives gemacht, also sollte das dort auch funktionieren. Das Setzen der anderen Parameter war bei mir nicht erforderlich.
phonotunes.php: phonostar-Player Aufnahmen in iTunes als Podcast verfügbar machen
Ich bin ein großer Fan des phonostar-Player. Mit diesem Programm kann man sehr bequem Radiosendungen aufnehmen. Da ich einen iPod nutze, musste ich die Aufnahmen bisher umständlich in eine Playliste im iTunes importieren. Dadurch habe ich aber keine Übersicht über schon gespielte Folgen und kann längere Hörspiele nicht mal eben in der Mitte unterbrechen und später an der Stelle fortsetzen. Wie schön läuft das dagegen bei einem Original Audio Podcast – z.B. dem des ARD Radio-Tatort. Automatisch lädt die neueste Folge und wird synchronisiert, bereits angehörte Folgen werden automatisch entfernt.
Ich habe daher ein wenig geschraubt und ein PHP-Script geschrieben mit dem ich meine phonostar-Player-Aufnahmen meinem iTunes in Form eines lokalen Audio-Podcasts unterschiebe. Ein Beitrag von digitaltoast hat mich da sehr schnell auf die richtige Spur gesetzt.
Voraussetzung: ein lokaler Webserver mit PHP Unterstützung. Ich habe dafür den IIS auf meinem Windows 7 konfiguriert.
Installation (IIS): Ich habe in meinem Webserver-Verzeichnis den Ordner phonotunes erstellt, die phonotunes.php dorthin kopiert und über den IIS Manager dort ein virtuelles Verzeichnis “Aufnahmen” eingehängt, dass auf den Aufnahmenordner des phonostar-Player zeigt. Danach zeigt “http://localhost/phonotunes/Aufnahmen” auf “D:\\Temp\\radiostreams\\phonostar\\Aufnahmen”.
Und schon kann man im iTunes den Link http://localhost/phonotunes/phonotunes.php hinzufügen und mit seinem iPod synchronisieren.


Verbesserungsvorschläge willkommen!
[sourcecode language="php"]
<?php
/**
* phonotunes – generate iTunes compatible audio podcasts based on phonostar-Player recordings
*
* Copyright 2010 Tobias Harmes
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* @author Tobias Harmes, tobias@harmes.de
* @link http://harmes.de
* @version 2010-05-16
* @license Apache License, Version 2.0
*/
//change this to your needs
define (‘RECORDINGS’, ‘D:\\Temp\\radiostreams\\phonostar\\Aufnahmen’);
define(‘URLBASE’,'http://localhost/phonotunes/Aufnahmen’);
/**
* traverse sub-dirs and build up xml object
*
* @param $start directory to start at
* @param $xml_generator XML document object <by ref>
* @param $win32 determines slash, defaults to true
*/
function directoryList($start,&$xml_generator,$win32=true){
if($win32){
$slash="\\";
}else{
$slash="/";
}
$basename = pathinfo($start);
$basename = $basename['basename'];
$ls=array();
$dir = dir($start);
while($item = $dir->read()){
if(is_dir($start.$slash.$item)&& $item!="." && $item!=".."){
$ls[$basename][]=directoryList($start.$slash.$item,&$xml_generator,$win32);
}else{
if($item!="."&&$item!=".."){
$ls[$basename][]=$item;
$itempath = $start.$slash.$item;
//remove default path
$itemurl = str_replace(RECORDINGS, "", $itempath);
//encode all funny characters and spaces
$itemurl = rawurlencode($itemurl);
//restore the slashes
$itemurl = str_replace(rawurlencode($slash),"/",$itemurl);
$itemurl = URLBASE.$itemurl;
$itempathinfo = pathinfo($itempath);
$recording = $xml_generator->addChild(‘item’);
$title = str_replace("_"," ",$itempathinfo['filename']);
//remove the leading date if any
if (preg_match(‘/^\d{4}-\d{2}-\d{2}.*/’,$title))
{
$title = substr($title, strlen("yyyy-mm-dd")+1);
}
$recording->addChild(‘title’, $title);
$recording->addChild(‘pubDate’, date(DATE_RFC822, filemtime($itempath)));
//if this is a regular recording use the folder name
$description = substr($start, strlen(RECORDINGS)+1);
$description = str_replace("_"," -",$description);
$recording->addChild(‘description’, $description);
$recording->addChild(‘link’, $itemurl);
$enclosure = $recording->addChild(‘enclosure’);
$enclosure->addAttribute(‘url’, $itemurl);
$enclosure->addAttribute(‘length’, filesize($itempath));
$enclosure->addAttribute(‘type’, ‘audio/mpeg’);
}
}
}
return $ls;
}//directoryList
$xml_string =’<?xml version="1.0" encoding="UTF-8"?>’."\r\n"."<channel>"."\r\n"."</channel>";
$xml_generator = new SimpleXMLElement($xml_string);
$xml_generator->addChild(‘title’, ‘phonotunes radio podcast’);
$xml_generator->addChild(‘category’, ‘Audio Podcasts’);
$dirlist = directoryList(RECORDINGS,$xml_generator, true);
header("Content-Type: text/xml");
$xml_result = $xml_generator->asXML();
$xml_LeftHandSide = ‘<?xml version="1.0" encoding="UTF-8"?>’."\r\n".’<rss xmlns:itunes="http://www.itunes.com/DTDs/podcast-1.0.dtd" version="2.0">’;
$xml_RightHandSide = substr($xml_result, 39);
echo $xml_LeftHandSide . $xml_RightHandSide . "</rss>";
?>
[/sourcecode]