Wie jeden Monat nehmen wir wieder USB-Geräte unter die Lupe und untersuchen deren Tauglichkeit unter Linux. Diesmal dreht sich alles um Massenspeicher.
USB-Laufwerke zum Speichern großer Datenmengen haben den grossen Vorteil, dass mit Hilfe von Plug & Play die Geräte problemlos vom Rechner ab- und wieder angesteckt werden können. So lassen sich mehr oder weniger große Datenmengen von einem PC zum nächsten transportieren. Bisher war dies nur mit Hilfe der Druckerschnittstelle gefahrlos möglich unter Linux mit der Einschränkung, dass dieser Port immer nur von einem Treiber zu einer Zeit genutzt werden kann. Außerdem ist die Übertragung per Centronics-Kabel deutlich langsamer als mit USB.
Allerdings sieht es unter Linux mit USB-Massenspeichern noch lange nicht so gut aus wie bei unserem letzten Test mit den Eingabegeräten das ganze USB-Storage Sub-System ist noch als experimentell gekennzeichnet. Dies spiegelt sich auch in den Erfahrungen des Testers wieder: Während der Versuche sind die Testrechner gelegentlich abgestürzt, so dass oft nur noch ein kompletter Neustart half (der aber dank ReiserFS immer recht schnell über die Bühne ging). Es erwies sich übrigens als kluger Entschluss, die USB-CD-Brenner mit einem RW-Medium zu testen, ansonsten hätte die gesamte Redaktion jetzt vermutlich neue Kaffeetassenuntersetzer. Allerdings ändert sich die Qualität des Treibers stetig (meist zum Besseren). Wer also die hier vorgestellten USB-Massenspeicher nutzen möchte, dem sei der neueste Entwickler-Kernel angeraten am besten noch mit den aktuellen Pre-Patches. Der produktive Einsatz ist bei fast allen Geräten nicht empfehlenswert, zumindest bis der Kernel 2.4 um ein paar Patchlevels gealtert ist.
Zum Zeitpunkt des Tests war gerade Linux-2.4.0-test10-pre6 aktuell. Dieser Kernel schien auch der stabilste zu sein, wobei aber auch hier Systemabstürze bei bestimmten Geräten keine Seltenheit waren. Bei der Version 2.4.0-test9 funktionierte übrigens so gut wie kein Gerät. Für die Anwender des USB-Backport-Patches für Kernel 2.2 haben wir eine kleine Tabelle zusammengestellt, in der ersichtlich ist, welches Gerät mit dem alten Kernel funktionieren (sollte).
Die USB-Storage-Architektur im Linux-Kernel
Alle Laufwerke in diesem Test benötigen das Kernelmodul usb-storage.o, welches einen SCSI-Hostadapter emuliert. Das heißt, dem Benutzer präsentieren sich die angeschlossenen USB-Massenspeicher als SCSI-Geräte. Dementsprechend sind die CD-Laufwerke über /dev/scd[0-9] und die Festplatten/Disketten als /dev/sd[a-z] ansprechbar. Alle Festplatten und Wechsellaufwerke haben meist einen Partitions-Sektor. Für den Betrieb unter Linux wäre dies zwar nicht unbedingt nötig, es ermöglicht jedoch den Datenaustausch mit fremden Betriebssystemen (falls dort das verwendete Dateisystem erkannt wird). Bei den vorformatierten Medien war meist die letzte von vier physikalischen Partitionen mit VFAT behandelt. Damit sollten übrigens alle Rechner und Betriebssysteme zurechtkommen. Damit usb-storage geladen werden kann, muss das SCSI-Subsystem im Kernel sein: entweder fest einkompiliert oder als ladbares Modul scsi_mod.o. Für CD-ROM-Laufwerke ist außerdem das Modul sr_mod.o Voraussetzung; CD-Brenner benötigen sg.o, und Festplatten (wozu auch alle Disketten- und Wechselmedien-Laufwerke zählen) sind auf sd_mod.o angewiesen.
Freecom Traveller
Wie bereits der Name andeutet, ist dieser CD-Brenner insbesondere für den mobilen Einsatz angedacht und lässt sich deshalb auch mit Batterien betreiben. In dem schönen blauen Gehäuse versteckt sich ein 4x/4x/20x CD-RW mit proprietärem Sub-D-Anschluss. Es gibt Adapter für Firewire, PCMCIA, Parallel-Port und USB, wobei sich unser Augenmerk auf letztere Variante richtete. Leider befindet sich der Treiber für dieses Gerät noch in einer frühen Entwicklungstufe, so dass er nicht einmal beim neuesten Developer-Kernel mit eingeschaltener “prompt for development and/or incomplete code/drivers”-Option zur Verfügung steht, sondern man muss nach dem Konfigurieren des Kernels die .config-Datei editieren und nach CONFIG_USB_STORAGE=m noch ein CONFIG_USB_STORAGE_FREECOM=y einfügen. Danach wird das Laufwerk als “CDR/RW RW8040A” erkannt. Der Treiber erwies sich jedoch, wie es zu erwarten war, als äußerst instabil. Daher war es nicht möglich, Performace-Tests durchzuführen der Rechner hängte sich zwar nicht auf, dafür aber der Prozess, der auf das Laufwerk zugreifen sollte. Im günstigsten Fall lässt sich das Inhaltsverzeichnis einer CD angezeigt. Auch auf das Beschreiben von CDs muss mit diesem Gerät noch verzichtet werden, obwohl es von cdrecord[3] schon als SCSI-3/mmc-kompatibel erkannt wird.
Iomega Zip CD 650
Sehr stabil und zuverlässig arbeitete das Iomega Zip CD 650: Dies war der einzige USB-CD-Brenner, dessen Treiber den Testrechner nie zum Absturz brachte. Dass der Brenner unter Linux auch zum Beschreiben von CD-Rohlingen geeignet ist, scheint bei Iomega übrigens nicht bekannt zu sein, denn in ihrem Linux-Support-Forum [1] wird bei Fragen in Bezug auf die Brenn-Tauglichkeit darauf hingewiesen, dass daran gearbeitet werde. Aber unter Angabe des Gerätetyps generic-mmc-raw funktionierte des Produkt mit cdrdao[2] einwandfrei: Es kann sogar mit vierfacher Geschwindigkeit brennen. Dabei ist es sehr erstaunlich, dass es mit dem software-lastigen UHCI-Controller nicht zu Problemen kommt, denn immerhin müssen etwa 600 Kilobyte pro Sekunde transferiert werden.
Iomega Zip 250 USB
Im Gegensatz zu der externen Parallel-Port- und SCSI-Variante hat dieses Laufwerk einen Schönheitspreis verdient. Es erinnert, wie auch das Freecom-Laufwerk, stark an Apples iMac (und ist auch für den Einsatz an diesem Gerät ausgelegt). Jedoch war in dem kleinen Gehäuse leider kein Platz mehr für ein internes Netzteil. Desweiteren lassen die etwas lauten Laufwerksgeräusche den Benutzer in keinem Augenblick im Unklaren, was gerade vor sich geht. Unter Linux wird das Zip als Wechselfestplatte erkannt, und so können die vorformatierten Disketten mit mount /dev/sda4 /mnt/zip einfach in das System eingebunden werden. Die Stabilität des Laufwerks unter Kernel 2.2.17 mit Backport lässt noch etwas zu wünschen übrig (System Freeze); unter 2.4.0-test10-pre5 lief das Gerät jedoch ganz ordentlich, sowohl mit 250-MByte- als auch mit 100-MByte-Medien.
Iomega Clik! 40
Neben den Zip-Disketten stellt Iomega noch weitere Wechselmedien her, so zum Beispiel die Clik!40-Disketten mit einer Kapazität von (wie es der Name schon andeutet) 40 MByte. Mit einer Abmessung von etwa 5×5 cm passen die Disketten in eine PCMCIA-Adapter-Karte. Wer keinen PCMCIA-Slot in seinem Rechner hat, kann mit dem “Iomega Clik! Dock” diese PCMCIA-Karte via USB an seinen Rechner anstöpseln zugegebenermaßen etwas umständlich, aber dafür auch unter Linux funktionstüchtig. Auf den Disketten befindet sich, wie bei ZIP auch, jeweils eine Partitionstabelle, in der üblicherweise die vierte Partition mit einem DOS-kompatiblen Dateisystem vorformatiert wurde. Angesprochen wird das Laufwerk wie die artverwandten Geräte als SCSI-Festplatte, und so sollte auf einem normalen System ein mount /dev/sda4 /mnt/click (oder ähnlich) ausreichen. Die Stabilität ist aber auch hier leider noch verbesserungsfähig: Nach ausgiebigen Kopier- und Löschaktionen ließ es sich erst wieder durch Entfernen und Neuladen des USB-Subsystems ansprechen.
LaCie
In dem dunkelblauen Gehäuse von LaCie steckt ab Werk eine 20 GByte große Festplatte vom Type Seagate Barracuda ST32042A. In einem Experiment zeigte sich jedoch, dass sich auch jede andere Festplatte verwenden lässt, solange man darauf achtet, dass die neue Platte nicht mehr Strom benötigt und nicht mehr Abwärme produziert als das vorinstallierte Medium. Der Lüfter, welcher sich hinter den runden Lüftungsschlitzen versteckt, war bei unserem Testmodell zunächst außer Betrieb, und das Laufwerk wurde auch ungehörig warm. Nach einem kurzem Griff zum Schraubendreher wurde das Problem deutlich: Eines der Stromkabel hatte sich im Lüfter verfangen. Obwohl die Transferrate von fast einem Megabyte pro Sekunde für USB relativ hoch ist, dauerte das komplette Beschreiben und Lesen jeweils über fünf Stunden. Da Festplatten üblicherweise die zehnfache Übertragungsrate erreichen, ist das Gerät von LaCie sicher nicht als kompletter Ersatz der Systemplatte geeignet bietet sich jedoch für den Transport von multimedialen Daten wie Filmen, Musik und Bildern an. Die Usability unter Linux ist zumindest mit Kernel 2.4.0-test10-pre5 sehr gut: Es gab während der Testphase keine unliebsamen Unterbrechungen lediglich die automatische Erkennung der Platte wollte nicht immer auf Anhieb klappen. Durch das Trennen und Wiederherstellen der USB-Verbindung konnte das Problem jedoch stets sehr schnell behoben werden. Mit dem Backport ist die Festplatte leider nicht nutzbar.
Mitsumi USB CR 4804 TU
Das einzige Modell in diesem Test, welches nicht in der Farbe blau angeliefert wurde, ist der externe CD-Brenner von Mitsumi, der auch wiederbeschreibbare Medien verarbeiten kann (4x,4x,8x). Als CD-Laufwerk schlug er sich in unserem Test sehr wacker, aber mit dem Beschreiben von Rohlingen gab es stets Probleme: Des Öfteren stellte der Brenner während des Schreibvorganges den Betrieb ein. Danach konnte das Gerät oft nurmehr durch einen Neustart wieder zur Mitarbeit bewogen werden.
Adaptec USB-X-Change
Ein Gerät, welches überhaupt nicht funktionieren wollte, kam von Adaptec: der Hersteller hat leider ein eigenes Protokoll für sein Produkt entwickelt, ohne dabei an Linux-Treiber zu denken. So ist dieser SCSI-Controller für den USB-Bus unter Linux nutzlos.
Die Geräte und deren Transferleistungen im Überblick
| Hersteller | Produkt | UHCI [KByte/s] | OHCI [KByte/s] | funktioniert mit Backport-Patch | Medien-Größe | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Adaptec | USB-X-Change | – | – | Nein | SCSI-Port | Freecom | Traveller | – | – | Nein | CD-RW | Iomega | ZIP CD 650 | 606 | 926 | Ja | CD-R | Iomega | ZIP 250 | 400 | 833 | ja | 100/250 MB |
| Iomega | Clik! Dock | 200 | 274 | Nein | 40 MB | ||||||||||||||||||
| LaCie | 20GB Drive | 583 | 866 | Nein | 20 GB | ||||||||||||||||||
| Mitsumi | USB CR 4804 TU | 615 | 913 | Nein | CD-RW | ||||||||||||||||||
| (Alle Performance-Tests unter Kernel 2.4.0-test10-pre5) |
Unabhängig von den USB-Storage-Geräten fällt übrigens beim Leistungstest (siehe Tabelle) auf, dass die OHCI-Controller-Architektur wesentlich performanter ist als das UHCI-Pendant.
Fazit
Wie eingangs bereits erwähnt, ist die Stabilität der Treiber für USB-Massenspeicher noch lange nicht so hoch, wie man es normalerweise von Linux gewöhnt ist. Allerdings können einzelne Geräte bereits ohne Einschränkung genutzt werden. Da aber auf diesem Sektor noch viel Entwicklung stattfindet, kann man davon auszugehen, dass alle Geräte, die jetzt zumindest ansatzweise zum Laufen zu bewegen waren, in wenigen Monaten stabil funktionieren werden.
In der nächsten Ausgabe beschäftigen wir uns mit “multimedialen Geräten” wie etwa Webcams oder Lautsprechern, aber auch mit mp3-Playern.









