19.07.2008 г.
Linux - Kubuntu 8.04, Nokia - Nokia E60.
Для работы необходимо доставить некоторое количество программного обеспечения:
sudo apt-get install obexftp obextool usbutils
Подключаем телефон кабелем к компьютеру. После этого находим idVendor и idProduct следующей командой:
lsusb
Если вывод похож на нижеприведённое, значит ОС увидела устройство и с ним можно будет работать:
$ lsusb Bus 003 Device 001: ID 0000:0000 Bus 002 Device 015: ID //**0421:0419**// Nokia Mobile Phones Bus 002 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000
В приведённом листинге нас интересует строка, содержащая "Nokia Mobile Phones". Значения "0421" и "0419" (выделены жирным) - idVendor и idProduct, соответственно. Эти значения и подставляем в строку:
BUS=="usb", SYSFS{idVendor}=="0421", SYSFS{idProduct}=="0419", GROUP="plugdev"
которую нужно добавить в конец файла "/etc/udev/rules.d/40-permissions.rules" для того, чтобы пользователи, входящие в группу "plugdev", могли получать доступ к USB
Теперь рестартанём udev для вступления полномочий в силу:
sudo /etc/init.d/udev restart
Если всё сделано правильно, то команда
obexftp -u
выведет нечто похожее на нижеследующее:
$ obexftp -u Superuser privileges are required to access USB. Found 3 USB OBEX interfaces Interface 0: Manufacturer: Nokia Product: Nokia E60 Interface description: SYNCML-SYNC Interface 1: Manufacturer: Nokia Product: Nokia E60 Interface description: PC Suite Services Interface 2: Manufacturer: Nokia Product: Nokia E60 Interface description: SYNCML-DM Use '-u interface_number' to connect Nothing to do. Use --help for help.
obexftp -u — выводит список интерфейсов подключенного устройства. В нашем случае нужен Interface 1, который мы будем использовать в дальнейшем просто как 1 (единица).
Теперь можно посмотреть, что же на этом устройстве есть. Это делается так:
obexftp -u 1 -l
$ obexftp -u 1 -l Superuser privileges are required to access USB. Connecting...done Receiving "(null)"... <?xml version="1.0"?> <!DOCTYPE folder-listing SYSTEM "obex-folder-listing.dtd" [ <!ATTLIST folder mem-type CDATA #IMPLIED> <!ATTLIST folder label CDATA #IMPLIED> ]> <folder-listing version="1.0"> <folder name="C:" user-perm="RW" mem-type="DEV" label="Память телефона"/> <folder name="E:" user-perm="RW" mem-type="MMC" label="Карта памяти"/> </folder-listing>done Disconnecting...done
подключившись к интерфейсу 1 (единица) (-u 1) вывести содержимое (-l)
Как видно, у устройства есть и внутренняя память (C:) и карта памяти (E:). Смотрим что на карте памяти так:
obexftp -u 1 -C E: -l
$ obexftp -u 1 -C E: -l Superuser privileges are required to access USB. Connecting...done Sending "E:"... done Receiving "(null)"... <?xml version="1.0"?> <!DOCTYPE folder-listing SYSTEM "obex-folder-listing.dtd" [ <!ATTLIST folder mem-type CDATA #IMPLIED> <!ATTLIST folder label CDATA #IMPLIED> ]> <folder-listing version="1.0"> <parent-folder /> <folder name="Activenotes" modified="20080212T212304Z" user-perm="RWD" mem-type="MMC"/> <folder name="data" modified="20070107T215432Z" user-perm="RWD" mem-type="MMC"/> <folder name="Documents" modified="20070129T135532Z" user-perm="RWD" mem-type="MMC"/> <folder name="ICQDownload" modified="20070318T082214Z" user-perm="RWD" mem-type="MMC"/> <folder name="Images" modified="20061213T202216Z" user-perm="RWD" mem-type="MMC"/> <folder name="Installs" modified="20070415T153144Z" user-perm="RWD" mem-type="MMC"/> <folder name="Others" modified="20070129T135532Z" user-perm="RWD" mem-type="MMC"/> <folder name="Presentations" modified="20070129T135532Z" user-perm="RWD" mem-type="MMC"/> <folder name="QIP" modified="20071116T090234Z" user-perm="RWD" mem-type="MMC"/> <folder name="Sheets" modified="20070129T135532Z" user-perm="RWD" mem-type="MMC"/> <folder name="Sounds" modified="20061217T100220Z" user-perm="RWD" mem-type="MMC"/> <folder name="Text" modified="20061211T154054Z" user-perm="RWD" mem-type="MMC"/> <folder name="Videos" modified="20061220T154522Z" user-perm="RWD" mem-type="MMC"/> <file name="Аудиокниги.m3u" size="1816" modified="20080403T195754Z" user-perm="RWD"/> </folder-listing>done Disconnecting...done
подключившись к интерфейсу 1 (единица) (-u 1) перейти в каталог E: (-C E:) и вывести содержимое (-l)
Получить файлы с устройства можно следующей командой:
obexftp -u 1 -C E: -C Sounds -g zz_top_Velcro\ Fly.mp4 "zz_top_Woke Up With Wood.mp4"
или
obexftp -u 1 -C "E:\Sounds" -g zz_top_Velcro\ Fly.mp4 "zz_top_Woke Up With Wood.mp4"
$ obexftp -u 1 -C E: -C Sounds -g zz_top_Velcro\ Fly.mp4 "zz_top_Woke Up With Wood.mp4" Superuser privileges are required to access USB. Connecting...done Sending "E:"... done Sending "Sounds"... done Receiving "zz_top_Velcro Fly.mp4".../done Receiving "zz_top_Woke Up With Wood.mp4"...-done Disconnecting...done
подключившись к интерфейсу 1 (единица) (-u 1) перейти в каталог E: (-C E:), затем в Sounds (-C Sounds) и получить на компьютер в текущий каталог файлы (-g zz_top_Velcro\ Fly.mp4 "zz_top_Woke Up With Wood.mp4")
Как видно в примере, если в имени файла имеются пробелы, мы можем либо экранировать его символом \, либо всё имя заключить в двойные кавычки ". Выбирайте сами.
Мы можем и удалить файл на устройстве. Для этого пользуемся следующей командой:
obexftp -u 1 -C E: -C Sounds -k "zz_top_Woke Up With Wood.mp4"
$ obexftp -u 1 -C E: -C Sounds -k "zz_top_Woke Up With Wood.mp4" Superuser privileges are required to access USB. Connecting...done Sending "E:"... done Sending "Sounds"... done Sending "zz_top_Woke Up With Wood.mp4"... done Disconnecting...done
подключившись к интерфейсу 1 (единица) (-u 1) перейти в каталог E: (-C E:), затем в Sounds (-C Sounds) и удалить файл (-k "zz_top_Woke Up With Wood.mp4")
Ну и, как вы наверняка уже догадались, писать на устройство мы тоже можем. Это делается так:
obexftp -u 1 -C E: -C Sounds -p "zz_top_Woke Up With Wood.mp4"
$ obexftp -u 1 -C E: -C Sounds -p "zz_top_Woke Up With Wood.mp4" Superuser privileges are required to access USB. Connecting...done Sending "E:"... done Sending "Sounds"... done Sending "zz_top_Woke Up With Wood.mp4"...-done Disconnecting...done
подключившись к интерфейсу 1 (единица) (-u 1) перейти в каталог E: (-C E:), затем в Sounds (-C Sounds) и передать на устройство файл (-p "zz_top_Woke Up With Wood.mp4")
Описанное здесь не подходит для работы с файлами, в названии которых имеются русские символы. Я не закончил работу. Как только найду решение, выложу. Нет у меня больше Nokia E60. Продолжения не будет. Если кто-то ждал, прошу меня простить!