udev-160 не монтирует при старте ничего, кроме / для системы нет винтов в принципе.
udev-146 не дружит с xorg-1.9.2, в иксах не работают ни клава ни мышь.
"HAL-8000"
"")
⇒ "IBM.9111"
1) Option "AutoAddDevices" "false"
2) echo 'kbdmux_load="YES"' >> /boot/loader.conf
3) Описать все InputDevice'ы и составить ServerLayout в xorg.conf
Теперь у меня три устройства ввода: одна клавиатура и две мыши(/dev/sysmouse для ums и /dev/psm0 — тачпад). Сначала я ещё пробовал в описании клавиатуры явно указать /dev/kbdmux0, но xorg-server протестовал и говорил что не может открыть файл. С /dev/kbd0 аналогично. Судя по всему, включая kbd(4) и вывод lsof(1), kbdmux(4) мультиплексирует клавиатуры автомагически (до конца не разбирался, но xorg-server не держал ни одну клавиатуру открытой, зато держал /dev/ttyv8). В результате мучений имею счастье в виде настраиваемого через гую тачпада и отсутствием проблем с подключаемыми на ходу клавиатурами/мышками. Пока устройства ввода настраивались через hal при подключении клавиатуры она не работала, а при отключении xorg-server выгружал нафиг драйвер kbd(4) и не работала ни одна. После подгрузки kbdmux.ko обе работали, но при отключении драйвер всё равно выгружался. Описывать ServerLayout нужно для того чтобы обе мыши(sysmouse и psm0) подключались, а не только первая из них.
[xanf@vaio ~]$ dbus-send --system --print-reply --dest=org.freedesktop.Hal \
/org/freedesktop/Hal/devices/computer \Error org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 1 matched rules; type="method_call", sender=":1.15" (uid=1000 pid=2717 comm="dbus-send) interface="org.freedesktop.Hal.Device.SystemPowerManagement" member="Suspend" error name="(unset)" requested_reply=0 destination="org.freedesktop.Hal" (uid=0 pid=1320 comm="/usr/sbin/hald))
org.freedesktop.Hal.Device.SystemPowerManagement.Suspend int32:0
#884026). Вбивается в /etc/hal/fdi/policy .fdi файлик с таким простым содержимым:
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="input.x11_driver" string="synaptics">
<merge key="input.x11_options.RTCornerButton" type="string">2</merge>
</match>
</device>
</deviceinfo>
Хорошо в вики описано wiki.ubuntu.com
Класс, и HAL'овский синтаксис работает (это к предыдущему <?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="input.x11_driver" string="synaptics">
<merge key="input.x11_options.RTCornerButton" type="string">2</merge>
</match>
</device>
</deviceinfo>
Хорошо в вики описано wiki.ubuntu.com
synclient RTCornerButton=2
Надо завикипедить как это с HAL делается, что ли.
для пущего удобства не помешает настроить автоматическую перекодировку при мотрировании:
в GConf editor -> system -> storage -> default_options указать соответствующие параметры для нужных файловых систем.
iso9660: mount_options=[-C=UTF-8]
ntfs: mount_options=[-m=755, -C=UTF-8]
ntfs-3g: mount_options=[locale=ru_RU.UTF-8]
udf: mount_options=[-C=UTF-8]
vfat: mount_options=[longnames, -u=, -D=CP866, -L=ru_RU.UTF-8
все параметры указаны для локали ru_RU.UTF-8
cat /usr/share/hal/fdi/policy/20thirdparty/90-storage-nosync.fdi
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="block.is_volume" bool="true">
<match key="volume.fsusage" string="filesystem">
<match key="volume.uuid" string="5011-7334">
<merge key="volume.policy.mount_option.sync"
type="bool">false</merge>
</match>
</match>
</match>
</device>
</deviceinfo>
при этом lshal
volume.mount.valid_options = {'ro', 'sync', 'dirsync', 'noatime', 'nodiratime', 'noexec', 'quiet', 'remount', 'exec', 'utf8', 'shortname=', 'codepage=', 'iocharset=', 'umask=', 'dmask=', 'fmask=', 'uid=', 'flush'} (string list)
volume.mount_point = '/media/5011-7334' (string)
Ну вот нарвался :-( больше нет старого доброго ксорга с удэв, ткнули тупой хал, руки бы оторвать по самую шею тому, кто на дебиан пакеты собирает. Хал не знает что такое ком порт. Зря себе систему сломал. Мыш не пашет, функционала нет, один анал остался. Т.к толковых манов хотяб на инглише по хал я не нашел, то придецо топтать за новым девайсом
сегодня с 12 часов за компом. в 18:15 обнаружил что после обновления отпала русская раскладка.
пиздец. за шесть часов у меня не возникло необходимости писать русский букв. пиздец.
xinput set-ptr-feedback Logitech\ USB\ Receiver 0 1 1
(убираем ускорение конкретной мыши)
Если нету — то как заставить hal выполнить эту команду автоматом сразу после подключения мыши?
В прошлый раз проблемы с PolicyKit вылились для меня в невозможность сделать eject для подключенного через usb внешнего DVD-резака, в этот раз пока не проверял.
проверка зависимостей...
ошибка: не удалось подготовить запрос (не удалось удовлетворить зависимости)
:: gnome-vfs: требует hal>=0.5.13
:: gstreamer0.10-good-plugins: требует hal>=0.5.13
:: hal-cups-utils: требует hal
:: kdelibs: требует hal
:: pcmanfm: требует hal
:: pmount: требует hal>=0.5.11
:: xorg-server: требует hal>=0.5.13
И это называется "Собираются выкидывать"? В почти каждой DE оно ещё в зависимостях, что толку из иксов выкидывать? Гном хотя бы в процессе перехода на devicekit, а остальные?
larsen-b.com — рецепт по избавлению от этих ужасных XML-конфигов.
*gentoo
# cat /etc/hal/fdi/policy/10-x11-input.fdi
<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.mouse">
<merge key="input.x11_driver" type="string">mouse</merge>
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name" string="Linux">
<!-- If we're using Linux, we use evdev by default (falling back to
mouse otherwise). -->
<merge key="input.x11_driver" type="string">evdev</merge>
</match>
</match>
<match key="info.capabilities" contains="input.keys">
<merge key="input.x11_driver" type="string">keyboard</merge>
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name" string="Linux">
<!-- If we're using Linux, we use evdev by default (falling back to
keyboard otherwise). -->
<merge key="input.x11_driver" type="string">evdev</merge>
</match>
<merge key="input.xkb.layout" type="string">us,ru</merge>
<merge key="input.xkb.variant" type="string">,winkeys</merge>
<merge key="input.xkb.options" type="string">grp:alt_shift_toggle,grp:lalt_lshift_toggle</merge>
</match>
</device>
</deviceinfo>