Итак. Имеем Gentoo Linux с ядром 2.6-19-gentoo-r2, udev в стандартной конфигурации. Не забываем поставить libgpod и все её зависимости.
Конфигурация udev
iPod nano имеет 2 раздела: первый для firmware, второй для хранения данных, музыки и пр. Поэтому нас интересует прежде всего второй раздел, который будет представлен устройством “sd*2″, где “*” - любая буква.
Добавляем правило udev. Создаём файл /etc/udev/rules.d/45-ipod.rules:
Этот правило создаст в симлинк /dev/ipod на устройство, которое будет представлять iPod в данный момент. номер правила 45 выбран таким образом, чтобы оно отрабатывало до общих правил udev.SUBSYSTEMS==”scsi”, SYSFS{model}==”iPod”, KERNEL==”sd?2″, NAME=”%k”, SYMLINK=”ipod”
Вообще, если вас интересует, что делает udev при подключении/отключении того или иного устройства воспользуйтесь крайне полезной командой udevmonitor. Вот, как выглядит подключение iPod у меня:
Переписать правило udev под себя легко. Для этого достаточно посмотреть на параметры появившегося устройства: udevinfo -a -p /sys/block/sde.UEVENT[1168275958.471526] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3
UEVENT[1168275958.472060] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3/usbdev4.4_ep00
UEVENT[1168275958.472189] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3/4-3:1.0
UEVENT[1168275958.474287] add@/class/scsi_host/host2
UEVENT[1168275958.475454] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3/4-3:1.0/usbdev4.4_ep81
UEVENT[1168275958.476053] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3/4-3:1.0/usbdev4.4_ep02
UEVENT[1168275958.476204] add@/class/usb_device/usbdev4.4
UDEV [1168275959.070782] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3
UDEV [1168275959.095531] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3/usbdev4.4_ep00
UDEV [1168275959.583357] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3/4-3:1.0
UDEV [1168275959.603736] add@/class/scsi_host/host2
UDEV [1168275959.639294] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3/4-3:1.0/usbdev4.4_ep81
UDEV [1168275959.680058] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3/4-3:1.0/usbdev4.4_ep02
UDEV [1168275959.720198] add@/class/usb_device/usbdev4.4
UEVENT[1168275963.473927] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3/4-3:1.0/host2/target2:0:0/2:0:0:0
UEVENT[1168275963.473980] add@/class/scsi_disk/2:0:0:0
UEVENT[1168275963.483687] add@/block/sde
UEVENT[1168275963.483730] add@/block/sde/sde1
UEVENT[1168275963.483738] add@/block/sde/sde2
UEVENT[1168275963.483746] add@/class/scsi_device/2:0:0:0
UDEV [1168275963.630952] add@/devices/pci0000:00/0000:00:10.3/usb4/4-3/4-3:1.0/host2/target2:0:0/2:0:0:0
UDEV [1168275963.662165] add@/class/scsi_disk/2:0:0:0
UDEV [1168275963.718270] add@/class/scsi_device/2:0:0:0
UDEV [1168275963.814855] add@/block/sde
UDEV [1168275964.173920] add@/block/sde/sde1
UDEV [1168275964.227704] add@/block/sde/sde2
Конфигурация autofs
Как-то раньше не удосужился сделать автоматическое монтирование, теперь самое время.
В файле /etc/auto.master пишем:
в файле /etc/autofs/auto.flash:/mnt/flash /etc/autofs/auto.flash –timeout=2 –ghost
ipod -fstype=vfat,sync,nodev,nosuid,umask=007 :/dev/ipod
Конфигурация Amarok
Amarok собираем с поддержкой iPod, затем добавляем устройство iPod и путь до него: /mnt/flash/ipod. В качество команды монтирования: cd /mnt/flash/ipod, команда размонтирования cd /.
Всё.
Конфигурация Amarok через hal и dbus
Если KDE собран с hal и dbus, то можно использовать их для автоопределения и автомонтирования. Мне не понравилось то, что hal по какой-то причине единожды увидев смонтированное autofs устройство сразу после размонтирования по таймауту вызывал его монтирование. И так до бесконечности. Пока остался на autofs.
Результат
iPod виден в Amarok. На него переливается музыка вместе с рейтингом, что просто отлично! Единственное, что не удалось победить — заставить iPod говорить, что его можно отключить. Это на будущее.
Powered by ScribeFire.
Комментарии