USB-Sticks: Größe ausnutzen


Part I

Vor einem Weilchen habe ich mir einen 2GB-USB-Stick gekauft. Der Plan war, dass dort ja alle meine kleinen portablen Programme Platz finden sollten und noch viel Luft für sonstige Dateien bliebe. Umso verwundertert dann, als der Platz erheblich früher ausgereizt war (sein sollte). Die Lösung: Clustersize. Aus welchem Grund auch immer, kommen USB-Sticks meist mit FAT16 formatiert in die Hände des Kunden. Wieso das ein Problem ist erklärt der Artikel File systems 101: FAT schön:

Every FAT-based disk is broken down into a number of clusters, each containing a number of 512-byte disk sectors. Most file systems do not deal directly with the disk sectors, as this would require significant overhead. Instead, sectors are grouped into clusters, which can be anywhere from 2,048 bytes in size to 32,768 bytes in size (4 to 64 clusters). As disks grow larger, the cluster size increases, and, thus, the more disk sectors that are used per cluster. Cluster size directly impacts the maximum size of a disk. For example, if you take a 512-MB disk using FAT16, which can have only a maximum of 65,536 clusters, you are required to use a cluster size of at least 8K (524,288,000 bytes / 65,536 clusters = 8K cluster size). Another example (FAT16: 1 GB disk – 1,048,576,000 bytes / 65,536 clusters = 16K cluster size).
[…]
Cluster waste
(Often called “slack”) A file is stored using clusters, not using the size of a disk sector. So, suppose you have a disk that is broken up into 32 KB clusters and you save a file that is 33 KB in size. This file will require two full clusters, or a total of 64 KB of disk space, resulting in 31 KB of wasted space, or slack.

Also wird bei einem 2GB-Stick mit Fat16 ziemlich was “verbraten”, gerade weil bei mir dann auch sehr, sehr viele kleine Dateien darunter sind. Also der einfach Tipp: Im Arbeitsplatz auf den USB-Stick (Laufwerk) rechtsklicken und Formatieren wählen. FAT32 wird automatisch vorgeschlagen. Wer besonders experimentierfreudig ist, der kann auch unter der Kommandozeile (Start > Ausführen > cmd) mit dem Befehl format die Clustersizes genauer justieren (format /? für die Optionen).

Part 2

Eine andere Sache, die mir noch zu USB-Sticks einfällt, ist das nervige Entfernen des Sticks über Hardware sicher entfernen. Ich finde leider den Artikel nicht mehr, in welchem beschrieben wurde, warum das im Grunde nicht nötig ist (bei Windows XP mit SP2), aber der Ansatz war folgender: Es ist möglich, dass für Wechsellaufwerke der Cache aktiviert wird, d.h. alles geht etwas schneller. Standarmäßig ist dies bei XP allerdings deaktivert, d.h. Dateien werden sofort auf den Stick geschrieben. Wenn man also alles gespeichert und geschlossen hat, dann kann man auch ohne die x nervigen Klicks getrost den Stick ziehen – geht man die Schritte, dann wird man natürlich mit der bekannten aufschlusreichen Meldung darauf hingewiesen, dass man noch etwas offen hat.

Wer den Cache übrigens bei sich aktivieren kann, der kann dies im Gerätemanager für das Laufwerk aktivieren (es muss also eingestöpselt sein). Der Weg ist dann:

[Windows-Taste + Pause] > Hardware > Gerätemanager > Laufwerke > deinUsbLaufwerk > [Alt + Enter] > Richtlinien > Für Leistung optimieren

Da steht übrigens auch, dass man dann Hardware sicher entfernen nutzen soll.

Part 3

Dies wird man wohl immer nur an seinem eigenen Rechner tun und dort erhält der Stick in der Regel den gleichen Laufwerksbuchstaben. Also kann man sich z.b. deveject holen (z.B. bei JSI) und die Datei in den Windows-Ordner packen (dann muss man keine Path-Variable anpassen/anlegen). Auf den Desktop noch eine Batchdate, z.B. usbEject.bat, anlegen (neue Textdatei und einfach txt auf bat ändern). Dann noch die Zeile deveject -EjectDrive:”K:” hinein, speichern und nun geht das Auswerfen etwas fixer.

Hmm, ob das irgendwen interessiert, der jemals diesen Blog lesen könnte? 😀


4 Antworten zu “USB-Sticks: Größe ausnutzen”

  1. Böse Werbesticks!
    Man muss den USB-Stick mit einem Herstellertool leider neu Flashen! CDfs ist dann weg!!!!!!!
    Flashspeicher Hersteller gibts nicht soviele. Mit USBdeview bekommt man den auch gut raus. Was draufsteht ist meist nur die Firma, welche das Gehäuse baut.

  2. Das ist ja eine interessante Marktetingvariante, die mir aber bisher noch nicht untergekommen ist. Wenn ich das Prinzip richtig verstehe, dann werden beim Einstöpseln zwei Laufwerke erkannt, einmal eines als Wechselmedium (USB eben) und einmal eins als CD-Laufwerk (das CDfs), wobei bei letzterem automatisch die Werbung gestartet wird. Vielleicht hab ich es auch völlig mißverstanden, aber so oder so kann ich nur ins Blaue raten, da mir sowas ja keiner schenkt 😉

    Ok, ich nehme mal an, dass es sich bei dem Stick um eine “mißbrauchte” U3-Variante handelt. Der Wiki-Link führt unter den Weblinks auch die Referenz Uninstaller für U3 auf. Vermutlich ist das schon der ganze Trick, es sei denn es handelt sich um irgendeine andere proprietäre Variation dieses Prinzips. Wenn es irgendwie in der Hardware verankert ist (im ROM?), dann kann man wohl nichts machen.

    Beziehungsweise kann man natürlich den Effekt umgehen. Einfach im Explorer einen Rechtsklick auf das “CD-Laufwerk” machen und bei den Eigenschaften unter AutoPlay “Keine Aktion durchführen” wählen. Vermute ich jedenfalls, dass das funktionieren sollte. Auf anderen Rechnern ist das natürlich unpraktikabel, aber man kann das AutoPlay auch unterdrückem, indem man Shift (Umschalttaste) nach dem Einstöpseln ein paar Sekunden gedrückt hält.

    Wenn der erste Tipp nicht funktioniert und der zweite zu unpraktisch ist, dann würde ich empfehlen mal die Marke des Sticks zu checken und nach dem “markenname cdfs” googlen. Oder statt nach dem Markennamen nach dem Namen des Schenkers. Wenn z.B. MediaMarkt sowas verschenken würde, dann würden sich sicher reichlich konkrete Hinweise finden lassen. Beim Tante-Emma-Laden wohl hingegen nicht 😉

    Wenn das alles noch nichts bringt und noch genug Spieltrieb und Wille besteht den Stick zu knechten, dann könnte man sich noch in die fast hackermäßigen Untiefen der Treibermanipulation begeben. Per se kann man USB-Sticks als Wechseldatenträger ja nicht partitionieren, aber es gibt einen interessanten Artikel, wie man einen Multiple Partition USB Stick with Multi Boot OS erstellt. Der relevante Teil für die Paritionierung ist:

    Ok XP can only see one partition on a removable USB but if change the USB driver to a fixed disk driver then XP will see it as a hard drive then we can have lay down multiple partitions as we like. Now open regedit and goto HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\USBSTOR
    and double click on USBSTORE and you see a subkey below it, select the first subkey below USBSTORE and right click and select Copy Key Name

    Here is mine, yours maybe different.

    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\USBSTOR\Disk&Ven_Generic&Prod_USB_Flash_Disk&Rev_0.00

    Now we need only need this part:

    USBSTOR\Disk&Ven_Generic&Prod_USB_Flash_Disk&Rev_0.00

    Copy and paste it temporarily into notepad.

    You will now need this driver. www.xpefiles.com/viewtopic.php?t=92 [Anm Tobi: ‘Hitachi Microdrive driver to make the disk as “fixed local drive”‘)
    Unpack it to a folder on your desktop. Inside the folder is the file cfadisk.inf. You need to open this file and scroll down to you see the line %Microdrive_devdesc% = cfadisk_install, specific data
    Now you need to replace all lines %Microdrive_devdesc% = cfadisk_install, specific data with
    the line you copied from your registry like so.

    %Microdrive_devdesc% = cfadisk_install,USBSTOR\Disk&Ven_Generic&Prod_USB_Flash_Disk&Rev_0.00

    There could be more lines so replace all and save the file.

    Goto Device Manager and click on disk drives. You see your USB listed, dbl click on it and goto the driver tab and click update driver and install from a specific location and choose the driver to install and click on Have Disk and browse to the cfadisk.inf file your modified driver on your desktop and force that to replace your existing driver. It might ask you to reboot. You should now have your USB showing as Local Disk.

    Keine Ahnung, ob man damit wirklich weiter kommt. Interessant ist es alle Mal :D.
    Das im Folgenden auch erwähnte HP Drive Key Boot Utility ist übrigens tatsächlich praktisch um einen bootbaren Stick zu erstellen (hab ich schon mal verwendet), aber hilft bei dem Problem hier wohl kaum. Sei nur erwähnt, weil es bei einigen anderen gesichteten Seiten gerne als Tipp genannt wird.

    Ich hoff irgendwas hilft dann jedenfalls weiter. Wenn ich nicht gestern wieder alles verhunzt habe, dann soltle die Benachrichtigung per Mail funktioninieren 😉

     

    PS: Als Nebenprodukt ist mir jetzt auch klar, warum Admin sich tatsächlich ordentlich Gedanken über USB-Sticks machen sollten, wenn sie öffentliche Terminals bereitstellen. Wenn das USB Hacksaw tatsächlich auch mit Guest-Permissions funktioniert, dann überlegt man sich ja doch zweimal wo man seinen Stick noch (ungesichert) reinsteckt. Ich hab nichtmal danach gesucht…

  3. hallihallo,
    danke für die tipps, vor allem den fat32-tipp. mein problem:

    ich habe einen usb-stick formatiert, der ein werbegeschenk war, da im autostart eine werbung war.
    die werbung erscheint aber noch immer, schreibschutz hab ich schon entfernt, aber sie geht nicht weg. die datei tritt beim einschieben des sticks als eigenes laufwerk, CDFS auf.
    ich bin dankbar für jeden hinweis und eine benachrichtigung per mail 😛