Одной из основных проблем в Linux для меня всё время было остутствие родных драйверов для моего мобильного телефона — Siemens CX70.

Google в этом деле был не лучшим помощником — в большинстве случаев всё, что я находил, это были вопросы таких же пользователей, как и я. Но сегодня всё изменилось :-) Я совершенно случайно узнал про SieFS — FUSE-драйвер для файловой системы телефонов Siemens.

К сожалению, процесс сборки драйвера отличается от описанного на официальном сайте: при попытке выполнить configure && make && make install я столкнулся с ошибками (из-за того, что автор не смог написать нормальный configure-скрипт).

Перед компиляцией необходимо установить пакет libfuse-dev:

[-]
View Code Bash
sudo apt-get install libfuse-dev

Затем необходимо правильно сконфигурировать siefs:

[-]
View Code Bash
LDFLAGS="-ldl -lrt" ./configure

Ключевой здесь является строка LDFLAGS="-ldl -lrt": без неё мы на этапе линковки получим примерно такие ошибки:

[-]
View Code Bash
gcc  -I/usr/include -DFUSEINST="\"/usr\"" -D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=22  -L/lib -o siefs  siefs.o obex.o transport.o comm.o crcmodel.o charset.o /usr/lib/libfuse.a -lpthread
/usr/lib/libfuse.a(fuse.o): In function `curr_time':
(.text+0x223e): undefined reference to `clock_gettime'

/usr/lib/libfuse.a(fuse.o): In function `curr_time':
(.text+0x226a): undefined reference to `clock_gettime'

/usr/lib/libfuse.a(fuse.o): In function `fuse_put_module':
(.text+0x2ef7): undefined reference to `dlclose'

/usr/lib/libfuse.a(fuse.o): In function `fuse_new_common':
(.text+0x33aa): undefined reference to `dlopen'

/usr/lib/libfuse.a(fuse.o): In function `fuse_new_common':
(.text+0x3698): undefined reference to `dlerror'

/usr/lib/libfuse.a(fuse.o): In function `fuse_new_common':
(.text+0x36bb): undefined reference to `dlclose'

Как известно, функции dlopen(), dlclose() и dlerror() живут в libdl (-ldl), а clock_gettime() находится в librt (-lrt).

После этого собираем и устанаваливаем драйвер:

[-]
View Code Bash
make && sudo make install

Подключаем телефон через data-кабель и монтируем его:

[-]
View Code Bash
mkdir -p /mnt/mobile
mount -t siefs /dev/ttyUSB0 /mnt/mobile

В моём случае телефон висел на /dev/ttyUSB0; в более общем случае можно поступить так: подключить телефон через кабель и выполнить команду

[-]
View Code Bash
tail -n 20 -f /var/log/messages

Там будет нечто вида

Sep  1 21:45:31 SJINKS kernel: [23527.495270] usb 5-1: new full speed USB device using ohci_hcd and address 7
Sep  1 21:45:31 SJINKS kernel: [23527.579218] usb 5-1: configuration #1 chosen from 1 choice
Sep  1 21:45:31 SJINKS kernel: [23527.580947] pl2303 5-1:1.0: pl2303 converter detected
Sep  1 21:45:31 SJINKS kernel: [23527.581132] usb 5-1: pl2303 converter now attached to ttyUSB0
Добавить в закладки
  • del.ici.ous
  • Digg
  • Furl
  • Google
  • Simpy
  • Spurl
  • Y! MyWeb
  • БобрДобр
  • Мистер Вонг
  • Yandex.Закладки
  • Текст 2.0
  • News2
  • AddScoop
  • RuSpace
  • RUmarkz
  • Memori
  • Google Bookmarks
  • Писали
  • СМИ 2
  • Моё Место
  • 100 Закладок
  • Ваау!
  • Technorati
  • RuCity
  • LinkStore
  • NewsLand
  • Lopas
  • Закладки - IN.UA
  • Connotea
  • Bibsonomy
  • Trucking Bookmarks
  • Communizm
  • UCA
  • Slashdot
  • Magnolia
  • Blogmarks
  • Current
  • Meneame
  • Oknotizie
  • Diigo
  • Funp
  • Hugg
  • Dealspl.us
  • N4G
  • Mister Wong
  • Faves
  • Yigg
  • Fresqui
  • Care2
  • Kirtsy
  • Sphinn

Связанные записи

1
Сен
2008

Комментарии к статье «Доступ к файловой системе телефонов Siemens в Ubuntu Linux» (1)  »

  1. SaltyDog says:

    а я буквально вчера для монтирования нокии по юзб заюзал obexfs, принцип почти тот же :)

Подписаться на RSS-ленту комментариев к статье «Доступ к файловой системе телефонов Siemens в Ubuntu Linux» Trackback URL: http://blog.sjinks.org.ua/linux/328-access-to-siemens-phone-file-system-in-ubuntu-linux/trackback/

Оставить комментарий к записи «Доступ к файловой системе телефонов Siemens в Ubuntu Linux»

Вы можете использовать данные тэги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Оставляя комментарий, Вы выражаете своё согласие с Правилами комментирования.

Подписаться, не комментируя