[sisyphus] Настройка ivman
Andrei Bulava
abulava на altlinux.ru
Чт Сен 28 16:28:08 MSD 2006
Sergey Vlasov wrote:
> On Thu, Sep 28, 2006 at 03:21:37PM +0400, Alexei V. Mezin wrote:
>> Andrei Bulava пишет:
>>
>>> Ну, не знаю про ivman - не пользуюсь, но на pmount-hal "подсел". Мне
>>> помогает `pmount-hal /dev/sda -c cp1251` и скрипт, который сюда присылал
>>> raorn@,
>>> http://lists.altlinux.org/pipermail/sisyphus/attachments/20060720/3f76c602/attachment.ksh
>>>
>>> AFAIK, ivman использует с качестве бэкенда именно pmount, так что можно
>>> обойтись без изменения .fdi (BTW, /usr/share/hal/fdi -
>>> дистрибутиво-специфичные настройки, которые можно перекрыть в
>>> /etc/hal/fdi - там-то у всех пустота, т.к. это уже хост-специфично).
>>>
>> Б-р-р... Ничего не понял.
>> `pmount-hal /dev/sda -c cp1251` запускать руками? И куда этот скрипт
>> прописывать/откуда запускать?
>
> Вообще через IvmConfigBase.xml можно переопределить mountcommand и
> umountcommand, указав там нужные опции для pmount.
В общем, у меня работает
<ivm:Option name="mountcommand" value="pmount -c cp1251
'$hal.block.device$'" />
<ivm:Option name="umountcommand" value="pumount '$hal.block.device$'" />
в ~/.ivman/IvmConfigBase.xml
Хотя и кривовато (зачем флэшке с не-vfat этот iocharset?)
> При монтировании через HAL method значения всех опций должна выставить та
> программа, которая вызывает методы монтирования через dbus. На
> сегодняшний день нормальных средств для вызова этих методов из командной
> строки в Сизифе нет (хотя KDE ими пользуется).
>
> У pmount опции собственные, ни с чем не совместимые.
В том-то и беда :-(
Хотя, насколько я понял и запуска
$ env PMOUNT_DEBUG=1 pmount-hal /dev/sda
drive:
/org/freedesktop/Hal/devices/storage_serial_Philips_USB_Flash_Drive_0511100300830
volume: /org/freedesktop/Hal/devices/volume_uuid_3C9C_722C
device: /dev/sda
label: PHILIPS UFD
fstype: vfat
options:
umask: (null)
spawnv(): executing pmount 'pmount' '-t' 'vfat' '/dev/sda' 'PHILIPS UFD'
spawn(): pmount terminated with status 0
- проблема, скорее всего, излечима.
Нагло делал так:
$ cat /etc/hal/fdi/policy/01-charset.fdi
<?xml version="1.0" encoding="UTF-8"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
<device>
<match key="volume.fstype" string="vfat">
<merge key="volume.policy.mount_option.iocharset"
type="string">cp1251</merge>
</match>
</device>
</deviceinfo>
И после `service haldaemon restart`:
$ env PMOUNT_DEBUG=1 pmount-hal /dev/sda
drive:
/org/freedesktop/Hal/devices/storage_serial_Philips_USB_Flash_Drive_0511100300830
volume: /org/freedesktop/Hal/devices/volume_uuid_3C9C_722C
device: /dev/sda
label: PHILIPS UFD
fstype: vfat
option: iocharset=cp1251
options: iocharset=cp1251
umask: (null)
spawnv(): executing pmount 'pmount' '-t' 'vfat' '/dev/sda' 'PHILIPS UFD'
spawn(): pmount terminated with status 0
Вот если бы "запатчить" pmount-hal на предмет распознавания строки
'option: iocharset=foo', - нам бы очень сильно полегчало.
--
// AB1002-UANIC
Подробная информация о списке рассылки Sisyphus