Всем привет. Имею: iPod одного из последних поколений, а также желание работать с ним из-под *nix систем.
поскольку я использую FreeBSD, поэтому в этой статье я буду опираться на нее.
Итак, о чем весь этот шум? У меня был старенький iPod nano 4 ГБ, который на ура распознавался в FreeBSD 7.0 RELEASE, и все операции с песнями я проводил через GtkPod. На днях я купил новенький iPod nano 4 ГБ, и, к моему удивлению, gtkpod перестал его правильно распознавать.
при запуске gtkpod стал выдавать сообщение о том, что он не может распознать «дополнительную информацию» iPod, а после добавления песен iPod отказывался их видеть, хотя в инфе четко показывалось, что хххх мегабайт заняты неизвестными данные.
В общем, лазая по бескрайним просторам Интернета, выяснилось, что это связано с дополнительным уровнем защиты, который Apple добавила в последние поколения iPod и iPhone. База данных новых моделей устройств Apple теперь защищена контрольной суммой.
Если эта контрольная сумма не соответствует содержимому базы данных iPod, iPod просто игнорирует загруженные на него файлы и не отображает их на своем дисплее.
новая версия libgpod поддерживает запись этой сгенерированной контрольной суммы на iPod, однако для генерации самой контрольной суммы, т. н.
«firewire ID», уникальный для разных моделей iPod. и поэтому этот идентификатор необходимо «запрашивать» программе вручную.
Ниже приведен рецепт решения проблемы:
- 1. установите любой из популярных менеджеров iPod для *nix, который __обязательно__ использует libgpod.
- Я использую GTKPod 0.99.12.
- 2. проверьте, что версия libgpod не ниже 0.6.0
- 3. скачать 50hz.ws/dev/getserial.c .
- 4. собрать: gcc .
/getserial.c -o .
/getserial
- 5. подключите плеер к компьютеру.
смонтируйте его как msdosfs: mount_msdosfs /dev/da0s1 /mnt/ipod
- 6. запустите .
/getserial /dev/usbX, последовательно перебирая индекс X, начиная с 0
- 7. если программа выдает что-то вроде:
- «[2:2] Apple Inc. – iPod
- iSerialNumber: 000A27001D37AD65"
- , то мы нашли идентификатор модели, который искали! Ура!!
- 8. если шаг 6. прошел успешно, то переходим в /mnt/ipod/iPod_Control/Device/ и вносим его в файл SysInfo. «FirewireGuid: 0xXXXXXXXXXXXXXXXX
- где вместо ХХХХХХХХХХХХХ пишем наш найденный идентификатор.
- например, мой /mnt/ipod/iPod_Control/Device/SysInfo теперь выглядит так:
- "ModelNumStr: xA005
- FirewireGuid: 0x000A27001D37AD65"
- 9. сохраните изменения в этом файле.
- 10. запускаем gtkpod, переносим через него музыку на iPod. нажмите «Сохранить».
отмонтируйте iPod.
- 11. включаем iPod. теперь iPod видит скачанную на него музыку!!!
Единственный способ получить идентификатор iPod — использовать команду: "lsusb -v | grep -i Серийный" пп.
: полезные ссылки: www.mail-archive.com/[email protected]/msg02174.html ubuntuforums.org/showthread.phpЭt=611404 lilserenity.wordpress.com/2007/12/22/virgin-mobile-praise-ubuntu-and-ipod-nano-3g Теги: #ipod #Apple #ipod nano #itunes #gtkpod #FreeBSD #ИТ-компании #ИТ-компании
-
Вино, Вильгельм
19 Oct, 24 -
История О Том, Как Я Не Нашел Инженера
19 Oct, 24 -
Io Работает С Кучей Haskell
19 Oct, 24 -
Материнская Плата 6 Х 6 См.
19 Oct, 24 -
Мегатонны Макулатуры Одним Движением Руки
19 Oct, 24