Sa
Jul
17

2010

Downgrade iPod Touch 2G von iOS 4 auf iOS 3.1.3 unmöglich

iOS 4 ist ja sicherlich toll, aber die Akkuleistung meines iPod Touch (2. Generation, 32 GB) ist seit dem Update deutlich schlechter geworden. Ein Downgrade ist allerdings nicht so einfach möglich.

Obwohl ich die IPSW-Datei (also die eigentliche Firmware) noch von früheren Updtes in meinen Backups gefunden habe (alternativ auch bei Felix Bruns zu finden), ist es nicht möglich, diese wieder auf den iPod aufzuspielen

Um die Firmware auf den iPod zu bekommen, kann man auf der Übersichtsseite des iPods in iTunes auf “Nach Update suchen” bei gedrückter Alt-Taste (unter Windows wäre das wohl Shift) die IPSW-Datei auswählen und los geht es. Dummerweise muss nach erfolgter “Aktualisierung” der iPod wiederhergestellt werden, wobei dann als einzige Option iOS 4 installiert wird.

Auch das Einrichten eines alternativen Anwenders oder der Trick über Windows unter Parallels hat nichts gebracht. Schade, denn ich hätte gerne auf die für mich irrelevanten Features von iOS4 verzichtet. Statt dessen habe ich meine WLAN-Keys, gespeicherten Spielstände und sonstigen Konfigurationsoptionen während des Experimentierens verloren.

Update:
Dank an Dennis, jetzt hat es doch geklappt. Leider klappt 3.1.3 nicht, aber immerhin die 3.1.2.
Die Kurzfassung:

  1. iPod Firmware 3.1.2 herunterladen
  2. iPod Touch 2G in den DFU-Modus versetzen (10 Sekunden beide Tasten gedrückt halten, wenn das Display dunkel wird für weitere 10 Sekunden nur den Home-Button drücken, so dass der Bildschirm dunkel bleibt, aber iTunes zum Wiederherstellen bereit ist)
  3. die /etc/hosts anpassen, indem die folgende Zeile hinzugefügt wird:
    74.208.10.249 gs.apple.com
  4. In iTunes mit gedrückter Alt-Taste auf Wiederherstellen klicken, 3.1.2-Firmware auswählen und aktualisieren.
  5. Fertig
Mo
Jun
28

2010

Mini-Displayport mit Audioausgang

Mein neues MacBook Pro mit i5-Prozessor kann auch Ton über den Mini-Displayport ausgeben. Dafür muss man auch nicht zig Euros ausgeben, denn eine ganz einfache Lösung für nicht einmal 7 Euro bei Amazon hat bei mir hervorragend funktioniert. TV via HDMI-Kabel an den Adapter, in den Systemeinstellungen die Tonausgabe auf den Adapter geleitet und das VLC-Bild auf den rechten Monitor (also unseren Fernseher) geschoben. Fertig.

Di
Jun
22

2010

FreeNAS #6 - iSCSI

iSCSI erlaubt die Nutzung des SCSI-Protokolls via TCP. FreeNAS bietet eine eingebaute Unterstützung hierfür, jedoch gibt es ein paar prinzipielle Einschränkungen.

Als Target bezeichnet man die Serverseite, der Initiator ist der Client.
iSCSI stellt im Netz entweder ein Device (also eine Festplatte) oder eine Datei bereit, die vom Client als Laufwerk betrachtet werden. Die Partition einer Platte kann nicht als iSCSI Target verwendet werden. Die gleichzeitige Verwendung eines iSCSI Targets durch mehrere Clients ist nicht vorgesehen, bzw. wird durch Dateisysteme wie NTFS oder HFS gar nicht unterstützt.

Zur Nutzung einer kompletten Platte muss lediglich die entsprechende Platte (z.B. ad2) ausgewählt werden. Allerdings kann dann die Platte auch nicht teilweise für andere Zwecke genutzt werden.

Trotz etwas schlechterer Performance empfiehlt sich in diesem Fall die Verwendung einer Datei als iSCSI-Container. Eine 200GB große Datei lässt sich mit dem Befehl dd einfach und schnell erzeugen:

# dd if=/dev/zero of=templun3 count=0 obs=1 seek=200G

dd if=/dev/zero of=templun3 count=0 obs=1 seek=200G

Zunächst wird ein neuer Extent angelegt:

iSCSI Target add an Extent

Dann folgt das sogenannte Portal:

iSCSI Target add Portals

Der Initiator gibt an, aus welchem Netzwerk heraus das Target genutzt werden kann:

iSCSI Target add Initiators

Zur Authentifizierung wird ein einfacher Benutzer angelegt.

iSCSI Target add User

Als letztes folgt das eigentliche Target:

iSCSI Target add Target

In den Settings ist vor allem der Base Name relevant, alles andere kann bei den Standardeinstellungen belassen werden.

iSCSI Base Name

Extent und Target sollen bei richtiger Konfiguration in etwa so aussehen:

iSCSI Targets Overview

Um iSCIS unter Mac OS X nutzen zu können, reichen die Bordmittel leider nicht aus. Dafür gibt es ein kostenloses Hilfsprogramm namens globalSAN. Die Systemerweiterung funktioniert auch unter Mac OS X 10.6.4 einwandfrei:

globalSAN iSCSI als Systemerweiterung

Beim Hinzufügen eines Portals wird das Target automatisch angezeigt. Es kann ausgewählt und die Verbindung hergestellt werden:

iSCSI - globalSAN mit dem Portal verbinden und iSCSI kann genutzt werden

Da die Datei auf dem FreeNAS, welche die Grundlage des iSCSI-Laufwerks bildet, noch kein Dateisystem enthält, muss dieses nun zunächst initialisiert werden:

Medium kann nicht gelesen werden - Möchten Sie es initialisieren?

Im Festplattendienstprogramm wird das iSCSI-Target als eigenes Laufwerk dargestellt und kann beispielsweise mit HFS+ (Journaled) initialisiert werden:

Anzeige des iSCSI-Targets im Festplattendienstprogramm

Sobald die Formatierung erfolgt ist, fügt sich das Laufwerk in die Liste der verfügbaren angeschlossenen Geräte am Mac ein.

Das iSCSI-Target auf dem Desktop

Die Performance von iSCSI war überraschend gut, auch über WLAN, wo Werte bis zu 8,8 Megabyte pro Sekunde erzielt wurden:

iSCSI Netzwerkdurchsatz

Sa
Jun
19

2010

FreeNAS #5 - Performance

Das von mir eingesetzte System ist vergleichsweise leistungsschwach. Da die Festplatten via USB angeschlossen sind, darf man keine außergewöhnliche Leistung erwarten. Dennoch ist die Performance insgesamt deutlich schlechter, als bei einem direkten Anschluss der Platte an den USB-Port des Rechners.

Typischerweise kann man in etwa 20-25 MB/s bei Festplatten, die via USB 2.0 angeschlossen sind erwarten. Unabhängig ob AFP oder FTP (oder auf SFTP) als Protokoll verwendet werden, das Thinkpad X40 kommt mit der Western Digital 1TB Platte auf durchschnittliche 11,5 MB/s (und bleibt damit deutlich unter der theoretischen Übertragungsgrenze von Gigabit-Ethernet von 47-60 MB/s).

Throughput/Performance of FreeNAS using AFP/FTP

Es handelt sich bei der Installation um eine Standardkonfiguration ohne jegliche Anpassungen zur Performanceverbesserung. Das Forum bietet eine gute Anlaufstelle, um noch mehr Leistung aus FreeNAS herauszukitzeln.

Fr
Jun
18

2010

FreeNAS #4 - Backups

Sobald Dateien durch FreeNAS gespeichert werden, sollte auch über das Thema Backup nachgedacht werden. Viele Anwender greifen beim Thema Datensicherung gerne auf implizite Lösungen wie RAID-1 oder gar ZFS zurück. Doch ein echtes vollwertiges Backup ist durch solche Strategien nicht zu ersetzen.

RAID-Lösungen sorgen dafür, dass Daten ausfallsicher gespeichert werden. Selbst wenn eine von mehreren Festplatten ausfällt, stehen die Daten weiterhin bereit. Gegen Datenverlust, der durch den “DAU”:http://de.wikipedia.org/wiki/Dümmster_anzunehmender_User hervorgerufen wurde, helfen sie gar nicht. Aufgrund des Netzwerkspeichers existiert kein Papierkorb, aus dem versehentlich gelöschte Dateien wiederhergestellt werden könnten.

Mein FreeNAS nutzt Rsync für die redundante Datenhaltung. Nachdem ich gute Erfahrungen mit rsnapshot für inkrementelle Backups und mehrere vollständige Datenbestände gemacht habe, wollte ich eine ähnliche Lösung implementieren.

rsnapshot synchronisiert mehrere komplette Backups, benötigt aber nicht für jedes Backup den tatsächlich belegten Speicher, sondern nutzt die unter Unix als Link bekannten Verknnüpfungen um Speicherplatz zu sparen. Im Ergebnis kann man so für jeden Tag der Woche ein komplettes Backup haben, wobei jeden Tag nur die Unterschiede zum Vortag gesichert werden. Eine ähnliche Lösung stellt übrigens Apples TimeMachine dar.

Gut versteckt im Forum von FreeNAS fand ich einen Beitrag über ein Shell-Skript mit ähnlicher Funktion wie rsnapshot. Da ich ein embedded FreeNAS nutze, habe ich das Programm unter /mnt/wdrive/system/rsnapshot.sh gespeichert.

FreeNAS Con for rsnapshot.sh

Die Syntax von rsnapshot.sh ist vergleichsweise einfach:

rsnapshot.sh <quellverzeichnis> <zielverzeichnis> <anzahl backups>

Will man die letzten 30 Tage als Backup vorhalten, dann kann dies anhand eines täglich ausgeführten Cron-Jobs erledigt werden:

FreeNAS Con for rsnapshot.sh

Es ist übrigens nicht notwendig, Rsync unter den Services zu aktivieren.

Code:
rsnapshot.sh

Do
Jun
17

2010

FreeNAS #3 - Gemeinsamer Datenspeicher mit AFP

In meinem Netzwerk sollen mehrere Anwender Daten gemeinsam auf einer USB-Platte am FreeNAS-Server ablegen. Hierzu werden zunächst die Nutzer angelegt.

Unter Access/_Users and Groups_ wird ein neuer Anwender angelegt, der als Administrator dienen soll. Seine primäre Gruppe ist wheel. Sekundäre Gruppen sind bei mir unter anderem admin, ftp und transmission.

FreeNAS User Setup

Unter System|Advanced ist Zeroconf/Bonjour aktiviert. AFP ist aktiviert, und ein Share namens freeshare ist eingerichtet. Lokale Benutzerauthentifizierung ist möglich, Gastzugriffe hingegen nicht.

freeshare with path and comment

Damit nicht jeder der Anwender auf den Share zugreifen kann, ist das Verzeichnis der neu angelegten Gruppe homegroup zugewiesen.

Groups in FreeNAS

Via ssh logge ich mich auf dem FreeNAS ein und richte als “Besitzer” des Shares mich und die Gruppe an, danach setze ich die Berechtigungen für Gruppenmitglieder mittels

# chown -R stephan:homegroup /mnt/wdrive/share
# chmod -R 770 /mnt/wdrive/share

Jetzt kann der AFP-Share unter Mac OS X einfach unter den Freigaben geöffnet werden.

Mi
Jun
16

2010

FreeNAS #2 - Beispielkonfiguration

Als Anregung hier meine aktuelle Konfiguration des FreeNAS (Vorabversion 0.7.2 Build 5226):

FreeNAS System Information

Hardware

Als Basissystem kommt ein defektes (Akkus können nicht mehr geladen werden) IBM Thinkpad X40 zum Einsatz. Das ohnehin schon relativ stromsparende System wurde auf seine neue Aufgabe vorbereitet, indem die interne Festplatte durch eine Compact-Flash-Karte ausgetauscht wurde.

Als Speichermedien dienen diverse externe Festplatten. Dauerhaft im Einsatz sind eine Western Digital USB-Platte mit einem Terabyte Kapazität (primäres Laufwerk) und eine 1,5 Terabyte große USB-Platte von Toshiba (als Backup).

Die Anbindung an das Netzwerk erfolgt über Gigabit-Ethernet an einen Gigabit-Switch, der wiederum mit dem Internet (kein Gigabit) verbunden ist.

Services

Da in meinem Netzwerk ausschließlich Rechner mit Mac OS X zum Einsatz kommen, ist CIFS/Samba nicht aktiviert, sondern AFP. Passend dazu natürlich auch Bonjour/Zeroconf, wodurch sich der Server automatisch bei allen Clients bereit meldet. Weiterhin ist Transmission (BitTorrent) aktiv, FTP eingerichtet und SSH-Zugriffe sind möglich. Meine IP wird bei Dyndns mindestens alle 9 Tage aktualisiert.

Obwohl rsync nicht aktiviert ist, nutze ich rsync für regelmäßige Backups von der einen auf die andere Festplatte.

Der iTunes/DAAP-Server ist bei mir nicht (mehr) im Einsatz, da es für mich keine geeignete Lösung zum Verwenden gemeinsamer Songs zwischen mehreren iTunes-Libraries bzw. iPods war. Stattdessen liegen nun die Musikdateien auf dem Share und die iTunes-Bibliothek verweist auf den Share.

Sicherheit

Auch wenn FreeNAS rund um die Uhr läuft und am Netz hängt, ist es kein Router und auch keine Firewall, auch wenn die Möglichkeit für Firewall-Regeln, statische Routen oder auch der Begrenzung von Hostzugriffen besteht.
Da mein System sowohl im internen Netz (LAN) wie auch im Internet hängt, reicht allein eine ausgreifte Nutzerverwaltung zur Grundsicherung nicht aus. Ein dedizierter Router mit Firewall und NAT erlaubt nur bestimmten (Nicht-Standard-)Ports den Durchgang, so dass weder Default-User noch Default-Ports für etwaige Angriffe ein leichtes Einfallstor bieten würden.

Verbundenheit

Auf Client-Seite hat sich mein Laptop den Zugriff auf den Server (AFP) anhand des Schlüsselbunds gemerkt, so dass quasi immer bei Netzverfügbarkeit auch gleichzeitig eine Verbindung mit dem NAS besteht.
In einer Windows-Umgebung könnte alternativ eine Authentifizierung mittels ActiveDirectory ermöglicht werden, was für mich jedoch nicht in Frage kommt.