Hallo,
ich habe ein kleines Problem mit SD-Karten, die mein Palm formatiert hat: diese werden nach dem Einstecken in den Leser nicht vollständig erkannt. Hier ein Beispiel für den Versuch, eine 2GB-Karte zu benutzen:
syslog:
Jun 19 10:36:05 pc kernel: sd 1:0:0:0: [sda] 4022272 512-byte hardware sectors (2059 MB) Jun 19 10:36:05 pc kernel: sd 1:0:0:0: [sda] Write Protect is off Jun 19 10:36:05 pc kernel: sd 1:0:0:0: [sda] 4022272 512-byte hardware sectors (2059 MB) Jun 19 10:36:05 pc kernel: sd 1:0:0:0: [sda] Write Protect is off Jun 19 10:36:05 pc kernel: sda: sda1
Die Karte selber ist auf dem Palm so formatiert worden:
$ fdisk -l /dev/sda Disk /dev/sda: 2059 MB, 2059403264 bytes 38 heads, 37 sectors/track, 2860 cylinders Units = cylinders of 1406 * 512 = 719872 bytes Disk identifier: 0x00000000 Device Boot Start End Blocks Id System /dev/sda1 1 2861 2011104+ 6 FAT16
Aber die Karte wird weder von HAL automatisch eingebunden, noch geht es mit pmount:
$ pmount /dev/sda1 /media/karte Fehler: Gerät /dev/sda1 ist kein Wechseldatenträger
Aber:
sudo mount -t vfat /dev/sda1 /mnt
funktioniert dagegen einwandfrei.
Interessant ist dabei, daß ich den Dateityp angeben muß, mit "auto" klappt es ebenfalls nicht:
$ sudo mount -t auto /dev/sda1 /mnt mount: you must specify the filesystem type
Dies sagt lshal zu der Karte:
udi = '/org/freedesktop/Hal/devices/storage_serial_Generic_USB_SD_Reader_058F312D81B_0_0' block.device = '/dev/sda' (string) block.is_volume = false (bool) block.major = 8 (0x8) (int) block.minor = 0 (0x0) (int) block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_Generic_USB_SD_Reader_058F312D81B_0_0' (string) info.addons = {'hald-addon-storage'} (string list) info.capabilities = {'storage', 'block'} (string list) info.category = 'storage' (string) info.parent = '/org/freedesktop/Hal/devices/usb_device_58f_6362_058F312D81B_if0_scsi_host_scsi_device_lun0' (string) info.product = 'USB SD Reader' (string) info.udi = '/org/freedesktop/Hal/devices/storage_serial_Generic_USB_SD_Reader_058F312D81B_0_0' (string) info.vendor = 'Generic' (string) linux.hotplug_type = 3 (0x3) (int) linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:10.3/usb1/1-5/1-5:1.0/host1/target1:0:0/1:0:0:0/block/sda' (string) storage.automount_enabled_hint = true (bool) storage.bus = 'usb' (string) storage.drive_type = 'sd_mmc' (string) storage.firmware_version = '1.00' (string) storage.hotpluggable = true (bool) storage.lun = 0 (0x0) (int) storage.media_check_enabled = true (bool) storage.model = 'USB SD Reader' (string) storage.no_partitions_hint = false (bool) storage.originating_device = '/org/freedesktop/Hal/devices/usb_device_58f_6362_058F312D81B_if0' (string) storage.partitioning_scheme = 'mbr' (string) storage.physical_device = '/org/freedesktop/Hal/devices/usb_device_58f_6362_058F312D81B_if0' (string) storage.removable = true (bool) storage.removable.media_available = true (bool) storage.removable.media_size = 2059403264 (0x7ac00000) (uint64) storage.requires_eject = false (bool) storage.serial = 'Generic_USB_SD_Reader_058F312D81B-0:0' (string) storage.size = 0 (0x0) (uint64) storage.vendor = 'Generic' (string) udi = '/org/freedesktop/Hal/devices/volume_part1_size_2059371008' block.device = '/dev/sda1' (string) block.is_volume = true (bool) block.major = 8 (0x8) (int) block.minor = 1 (0x1) (int) block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_Generic_USB_SD_Reader_058F312D81B_0_0' (string) info.capabilities = {'volume', 'block'} (string list) info.category = 'volume' (string) info.parent = '/org/freedesktop/Hal/devices/storage_serial_Generic_USB_SD_Reader_058F312D81B_0_0' (string) info.product = 'Volume' (string) info.udi = '/org/freedesktop/Hal/devices/volume_part1_size_2059371008' (string) linux.hotplug_type = 3 (0x3) (int) linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:10.3/usb1/1-5/1-5:1.0/host1/target1:0:0/1:0:0:0/block/sda/sda1' (string) storage.model = '' (string) volume.block_size = 512 (0x200) (int) volume.fstype = '' (string) volume.fsusage = '' (string) volume.fsversion = '' (string) volume.is_disc = false (bool) volume.is_mounted = false (bool) volume.is_mounted_read_only = false (bool) volume.is_partition = true (bool) volume.label = '' (string) volume.linux.is_device_mapper = false (bool) volume.mount_point = '' (string) volume.num_blocks = 4022209 (0x3d5fc1) (int) volume.partition.flags = {} (string list) volume.partition.label = '' (string) volume.partition.media_size = 2059403264 (0x7ac00000) (uint64) volume.partition.number = 1 (0x1) (int) volume.partition.scheme = 'mbr' (string) volume.partition.start = 32256 (0x7e00) (uint64) volume.partition.type = '0x06' (string) volume.partition.uuid = '' (string) volume.size = 2059371008 (0x7abf8200) (uint64) volume.uuid = '' (string)
Das Phänomen ist dabei weder von der Größe noch vom Hersteller der Karte abhängig, und es ist auch egal, in welchen Kartenleser ich die Karte stecke: ich kann erst auf die Karte zugreifen, wenn ich die manuell mit "sudo mount ..." einbinde. Formatiere ich die Karte dagegen unter Linux und lege selber ein Dateisystem darauf an, läuft alles so, wie es soll und die Karte wird beim Einstecken automatisch unter /media/sda1 eingebunden. Es liegt also nicht am Kartenleser und auch nicht an den Karten selber. Es muß etwas sein, daß der Palm mit der Karte macht, wenn ich sie dort formatiere.
Hat irgendjemand einen Tip, wie ich das Problem lösen kann? Immer "sudo mount ..." benutzten zu müssen, ist auf Dauer etwas nervig.
Danke im Voraus.