Problems with HAL, gnome-mount and removable ATA GELI disk

Joe Marcus Clarke marcus at marcuscom.com
Sat Jan 17 22:28:29 PST 2009


On Sat, 2009-01-17 at 20:23 -0800, Kevin Oberman wrote:
> I have a problem with hald and a removable ATA disk. This is complicated
> because the fact that the partition is geli encrypted.
> 
> I think one issue is that this is not treated as removable. Is the any
> way to make hald treat an ATA disk as removable?

The device's ata_params struct support command1 should indicate that the
device is removable.  I'm not sure how else to tell a device is
removable.

> 
> But there may be another issue as lshal does not even show the
> partition. It does see the drive, /dev/ad2, the slice, /dev/ad2a1, and
> the encrypted partition, /dev/ad2a1d, but not the decrypted partition,
> /dev/ad2s1d.eli. I assume it should show up.
> 
> I have other disks (USB) where the slice is encrypted and it works just
> fine (/dev/da0s1.elid), so maybe it's the fixed disk issue.
> 
> Here is the lshal output for that disk:
> udi = '/org/freedesktop/Hal/devices/storage_serial_WD_WXC606029004'
>   block.device = '/dev/ad2'  (string)
>   block.is_volume = false  (bool)
>   block.major = 0  (0x0)  (int)
>   block.minor = 88  (0x58)  (int)
>   block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_WD_WXC606029004'  (string)
>   freebsd.device_file = '/dev/ad2'  (string)
>   freebsd.driver = 'ad'  (string)
>   freebsd.unit = 2  (0x2)  (int)
>   info.capabilities = {'block', 'storage'} (string list)
>   info.category = 'storage'  (string)
>   info.parent = '/org/freedesktop/Hal/devices/ide_1_0'  (string)
>   info.product = 'WDC WD1200UE-00KVT0'  (string)
>   info.subsystem = 'block'  (string)
>   info.udi = '/org/freedesktop/Hal/devices/storage_serial_WD_WXC606029004'  (string)
>   info.vendor = 'WDC'  (string)
>   storage.automount_enabled_hint = true  (bool)
>   storage.bus = 'ide'  (string)
>   storage.drive_type = 'disk'  (string)
>   storage.firmware_revision = '01.03K01'  (string)
>   storage.hotpluggable = false  (bool)
>   storage.media_check_enabled = false  (bool)
>   storage.model = 'WDC WD1200UE-00KVT0'  (string)
>   storage.no_partitions_hint = false  (bool)
>   storage.originating_device = '/org/freedesktop/Hal/devices/ide_1_0'  (string)
>   storage.removable = false  (bool)
>   storage.removable.support_async_notification = false  (bool)
>   storage.requires_eject = false  (bool)
>   storage.serial = 'WD-WXC606029004'  (string)
>   storage.vendor = 'WDC'  (string)
> 
> udi = '/org/freedesktop/Hal/devices/volume_part1_size_120031478784'
>   block.device = '/dev/ad2s1'  (string)
>   block.is_volume = true  (bool)
>   block.major = 0  (0x0)  (int)
>   block.minor = 97  (0x61)  (int)
>   block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_WD_WXC606029004'  (string)
>   info.capabilities = {'block', 'volume'} (string list)
>   info.category = 'volume'  (string)
>   info.parent = '/org/freedesktop/Hal/devices/storage_serial_WD_WXC606029004'  (string)
>   info.product = 'Volume'  (string)
>   info.subsystem = 'block'  (string)
>   info.udi = '/org/freedesktop/Hal/devices/volume_part1_size_120031478784'  (string)
>   volume.block_size = 512  (0x200)  (uint64)
>   volume.fstype = ''  (string)
>   volume.fsusage = 'partitiontable'  (string)
>   volume.ignore = true  (bool)
>   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.mount_point = ''  (string)
>   volume.num_blocks = 234436482  (0xdf93782)  (uint64)
>   volume.partition.media_size = 120031478784  (0x1bf26f0400)  (uint64)
>   volume.partition.number = 1  (0x1)  (int)
>   volume.partition.scheme = 'mbr'  (string)
>   volume.partition.start = 32256  (0x7e00)  (uint64)
>   volume.partition.type = '0xa5'  (string)
>   volume.size = 120031478784  (0x1bf26f0400)  (uint64)
>   volume.uuid = ''  (string)
> 
> udi = '/org/freedesktop/Hal/devices/temp/192'
>   block.device = '/dev/ad2s1d'  (string)
>   block.major = 0  (0x0)  (int)
>   block.minor = 99  (0x63)  (int)
>   info.ignore = true  (bool)
>   info.parent = '/org/freedesktop/Hal/devices/volume_part1_size_120031478784'  (string)
>   info.product = 'Ignored Device'  (string)
>   info.subsystem = 'block'  (string)
>   info.udi = '/org/freedesktop/Hal/devices/ignored-device'  (string)
> 
> Any suggestions for making the drive automount?

Have you defined any hal FDI files that might be ignoring this device?
I don't see where else it would be ignored.

Joe

-- 
PGP Key : http://www.marcuscom.com/pgp.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part
Url : http://lists.freebsd.org/pipermail/freebsd-gnome/attachments/20090118/0ef616a3/attachment.pgp


More information about the freebsd-gnome mailing list