[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

kde+hal



Всем привет.

Имеется testing, kde, hal. Системная кодировка utf8. Для монтирования всякого 
рода флэшек у меня используется KDEшный halbackend :) При этом внутри того 
что смонтировано всё получается крокозябрами. Вот вывод команды mount:

$ mount
....
/dev/sdc1 on /media/USB DISK type vfat 
(rw,noexec,nosuid,nodev,noatime,uid=1000,shortname=lower)

Дальше я решил, что во всем виноват hal, и состряпал вот такой вот конфиг

$ cat /etc/hal/fdi/policy/codepage.fdi
<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="volume.fstype" string="vfat">
<merge key="storage.policy.default.mount_option.utf8" type="bool">true</merge>
<merge key="storage.policy.default.mount_option.codepage=866"
                                                     type="bool">true</merge>
</match>
</device>
</deviceinfo>

вот что говорит lshal:
$ lshal
...
udi = '/org/freedesktop/Hal/devices/volume_uuid_6298_45AF'
  storage.policy.default.mount_option.codepage=866 = true  (bool)
  storage.policy.default.mount_option.utf8 = true  (bool)
  volume.unmount.valid_options = {'lazy'} (string list)
  volume.mount.valid_options = 
{'ro', 'sync', 'dirsync', 'noatime', 'nodiratime', 'noexec', 'quiet', 'remount', 'exec', 'utf8', 'shortname=', 'codepage=', 'iocharset=', 'umask=', 'dm
ask=', 'fmask=', 'uid='} (string list)
  org.freedesktop.Hal.Device.Volume.method_execpaths = 
{'hal-storage-mount', 'hal-storage-unmount', 'hal-storage-eject'} (string 
list)
  org.freedesktop.Hal.Device.Volume.method_argnames = {'mount_point fstype 
extra_options', 'extra_options', 'extra_options'} (string list)
  org.freedesktop.Hal.Device.Volume.method_signatures = {'ssas', 'as', 'as'} 
(string list)
  org.freedesktop.Hal.Device.Volume.method_names = 
{'Mount', 'Unmount', 'Eject'} (string list)
  info.interfaces = {'org.freedesktop.Hal.Device.Volume'} (string list)
  volume.ignore = false  (bool)
  info.udi = '/org/freedesktop/Hal/devices/volume_uuid_6298_45AF'  (string)
  volume.partition.flags = {'boot'} (string list)
  volume.partition.uuid = ''  (string)
  volume.partition.label = ''  (string)
  volume.partition.type = '0x06'  (string)
  volume.partition.scheme = 'mbr'  (string)
  info.product = 'USB DISK'  (string)
  volume.partition.media_size = 1031798784  (0x3d800000)  (uint64)
  volume.partition.start = 32256  (0x7e00)  (uint64)
  volume.size = 1031766528  (0x3d7f8200)  (uint64)
  volume.num_blocks = 2015169  (0x1ebfc1)  (int)
  volume.block_size = 512  (0x200)  (int)
  volume.partition.number = 1  (0x1)  (int)
  info.capabilities = {'volume', 'block'} (string list)
  info.category = 'volume'  (string)
  volume.is_partition = true  (bool)
  volume.is_disc = false  (bool)
  volume.linux.is_device_mapper = false  (bool)
  volume.is_mounted_read_only = false  (bool)
  volume.is_mounted = false  (bool)
  volume.mount_point = ''  (string)
  volume.label = 'USB DISK'  (string)
  volume.uuid = '6298-45AF'  (string)
  volume.fsversion = 'FAT16'  (string)
  volume.fsusage = 'filesystem'  (string)
  volume.fstype = 'vfat'  (string)
  storage.model = ''  (string)
  block.storage_device 
= '/org/freedesktop/Hal/devices/storage_serial_JetFlash_TS1GJFV20_b8371926175493'  
(string)
  block.is_volume = true  (bool)
  block.minor = 33  (0x21)  (int)
  block.major = 8  (0x8)  (int)
  block.device = '/dev/sdc1'  (string)
  linux.hotplug_type = 3  (0x3)  (int)
  info.parent 
= '/org/freedesktop/Hal/devices/storage_serial_JetFlash_TS1GJFV20_b8371926175493'  
(string)
  linux.sysfs_path_device = '/sys/block/sdc/sdc1'  (string)
  linux.sysfs_path = '/sys/block/sdc/sdc1'  (string)
...

Но kde упорно не желает монтировать всё с нужными опциями, вот.

Может кто-то знает где я не прав ?


Спасибо.
-- 
If you think of MS-DOS as mono, and Windows as stereo,
  then Linux is Dolby Digital and all the music is free...

Reply to: