Hallo Michael, Am Montag 07 Januar 2008 schriebst Du: > Hallo Niels, > > Niels Jende wrote: [...] > Jan 7 16:31:34 MacMobil kernel: FAT: Unrecognized mount option "flush" > or missing value > > > Scheint also irgendetwas mit dem Mount-Aufruf nicht zu passen. Wo kann > ich sehen welches Kommando er dazu absetzt? Exakt. flush ist meiner Erinnerung nach eine Art relaxtes sync. Bei sync schreibt das Dateisystem jede Schreibanforderung gleich auf die Platte, bei async erst nach einer Weile. sync hört sich für USB-Sticks zunächst passend an, da man den ja jederzeit rausziehen kann und wenn dann Daten noch nicht gespeichert sind... Es ist jedoch gerade bei USB-Sticks keine gute Idee, die sync-Option zu verwenden, da dann für jede kleinste Änderung, in Zusammenhang mit atime für jeden Zugriff überhaupt, ein Schreibzugriff erfolgt und daher der USB-Stick ziemlich schnell futsch gehen kann. Das FAT-Dateisystem im Deinem Kernel unterstützt diese Option offenbar (noch) nicht. Wieso hal da jedoch bei Dir die Option flush verwendet ist mir ein Rätsel. /etc/hal/fdi/policy/preferences.fdi enthält bei mir - das ist jedoch mit XML-Kommentaren deaktiviert und die 1GB-grenze erscheint mir auch arg willkürlich, es gibt mittlerweile schon USB-Sticks mit 4 GB oder vielleicht mehr: <!-- The following shows how to put sync and noatime on for devices smaller then 1Gb and off for device larger then that. Note that the sync option can wear out device faster then you'd like too. See http://readlist.com/lists/vger.kernel.org/linux-kernel/22/111748.html for more info. --> <!-- <device> <match key="block.is_volume" bool="true"> <match key="volume.size" compare_lt="1000000000"> <match key="@block.storage_device:storage.hotpluggable" bool="true"> <merge key="volume.policy.mount_option.sync" type="bool">true</merge> <merge key="volume.policy.mount_option.noatime" type="bool">true</merge> </match> <match key="@block.storage_device:storage.removable" bool="true"> <merge key="volume.policy.mount_option.sync" type="bool">true</merge> <merge key="volume.policy.mount_option.noatime" type="bool">true</merge> </match> </match> <match key="volume.size" compare_ge="1000000000"> <match key="@block.storage_device:storage.hotpluggable" bool="true"> <merge key="volume.policy.mount_option.sync" type="bool">false</merge> <merge key="volume.policy.mount_option.noatime" type="bool">false</merge> </match> <match key="@block.storage_device:storage.removable" bool="true"> <merge key="volume.policy.mount_option.sync" type="bool">false</merge> <merge key="volume.policy.mount_option.noatime" type="bool">false</merge> </match> </match> </match> </device> --> Den einzigen Hinweis auf flush finde ich hier: shambala> grep -ir "flush" /usr/share/hal/* /usr/share/hal/fdi/policy/10osvendor/20-storage-methods.fdi: <append key="volume.mount.valid_options" type="strlist">flush</append> Da scheint aber nur definiert zu sein, dass flush an sich eine gültige Mount-Option zu sein. Es könnte helfen, wenn Du eine Kopie der Datei anlegst und dann aus der Original-Datei diese Zeile entfernst. Vielleicht verwendet halt die Option flush dann nicht mehr. Das ist aber wirklich nur ganz grob geraten ;-) und fühlt sich für mich wie ein Workaround an. Sonst finde ich da nix. Für mich ist da also nicht ganz transparent, wie hal die Mount-Optionen bestimmt. Zwei Partitionen auf einer 60GB großen externen 2,5Zoll-Festplatte bindet hal via KDE 3.5.8 bei mir so ein: shambala> grep "media" /proc/mounts /dev/sdb2 /media/daten xfs rw,nosuid,nodev 0 0 /dev/sdb1 /media/austausch vfat rw,nosuid,nodev,noatime,uid=1000,fmask=0022,dmask=0022,codepage=cp850,iocharset=iso8859-1,utf8 0 0 Da steht nicht explizit was von async oder sync. Das scheint mir für async zu stehen, da die interne Notebook-Platte von meinem IBM ThinkPad T42 auch kein async stehen hat, aber sicherlich nicht mit sync gemountet sein sollte. In der Manpage zu mount finde ich da auf den ersten Blick keinen Hinweis auf die Standard-Einstellung. Im syslog finde ich nur: Jan 7 21:01:00 shambala hald: mounted /dev/sdb2 on behalf of uid 1000 Jan 7 21:01:00 shambala hald: mounted /dev/sdb1 on behalf of uid 1000 Einen USB-Stick mit 512MB mountet hal demnach jedoch offenbar auch nicht mit flush hier - da hätte ich etwas in der Art erwartet: shambala> grep "media" /proc/mounts /dev/sdb /media/USBSTICK vfat rw,nosuid,nodev,noatime,uid=1000,fmask=0022,dmask=0022,codepage=cp850,iocharset=iso8859-1,utf8 0 0 Ich verwende eine lustige Mischung aus verschiedenen Debian-Versionen: root@shambala:~ -> for I in etch stable lenny testing sid unstable experimental; do echo -n "$I: " ; apt-show-versions | grep $I | wc -l ; done etch: 248 stable: 0 lenny: 29 testing: 4 sid: 2495 unstable: 0 experimental: 8 Und da folgendes hal: root@shambala:~ -> apt-show-versions | grep hal hal/sid uptodate 0.5.10-5 hal-device-manager 0.5.9.1-6 newer than version in archive libhal1/sid uptodate 0.5.10-5 hal-info/sid uptodate 20071212-2 libhal-storage1/sid uptodate 0.5.10-5 Wenn er bei Dir versucht die Mount-Option flush, die meines Wissens bislang auch nur die FAT-Dateisysteme verstehen und das auch nur in neueren Kerneln, könnte das an einer hal-Version liegen. Evtl. spielt die verwendete KDE-Version da auch mit rein, ich denke jedoch, dass die Version in Etch (3.5.5) schon auf hal zurückgreift. Früher war das mal anders. Du kannst natürlich mal in /etc/hal und /usr/lib/hal und /usr/share/hal mal einen grep -ir "flush" * loslassen, um zu schauen, was da HAL bei Dir vielleicht macht. Naja, genug Stöberei in System-Internas für heute. Ciao, -- Martin 'Helios' Steigerwald - http://www.Lichtvoll.de GPG: 03B0 0D6C 0040 0710 4AFA B82F 991B EAAC A599 84C7
Attachment:
signature.asc
Description: This is a digitally signed message part.