Телефон на базе Android как модем для Ubuntu

Автор: droid.

Пользователи Android наверняка сталкивались с ситуацией, когда нужен Интернет на компьютер или ноут/нетбуке, а в качестве модема нyжно использовать свой телефон. У обладателей ОС Windows или Mac проблем с таким использованием телефона не возникало — для этих целей есть масса программ, например, одна из них — многим известная PdaNet. Пользователи Android наверняка сталкивались с ситуацией, когда нужен Интернет на компьютер или ноут/нетбуке, а в качестве модема нyжно использовать свой телефон. У обладателей ОС Windows или Mac проблем с таким использованием телефона не возникало — для этих целей есть масса программ, например, одна из них — многим известная PdaNet.

 

А вот для Linux-систем такого очевидного и всем известного решения не было (во всяком случае, как показывает практика опросов «знатоков» на различных форумах). Пришлось искать ответ самостоятельно. Решение-таки было найдено — это программа Proxoid. Однако, если, например, выше упомянутый PdaNet устанавливается за один клик (в Windows — точно, про Mac не знаю, не пробовал), то установка Proxoid требует определенных знаний у неопытного Linux-пользователя, каковым я и являюсь.

Ниже идет мой дополненный и адаптированный под Linux-чайников перевод инструкции, как настроить Proxoid в ОС Ubuntu.

Данное руководство описывает, как установить и использовать Proxoid в Linux (проверено с Ubuntu 9.04.)

Задача 1. Настройка браузера (Firefox) для выхода в интернет, используя телефон

Шаг 0: Скачать и установить Proxoid на телефон

На своем Android заходим в Market, ищем в нем «Proxoid» и нажимаем «Установить». Или можно скачать приложение отсюда. Программе потребуется только доступ к Интерент (сетевое соединение). Никаких root прав не нужно!

Соединение будет осуществляться через USB. Для работы программы также необходимо включить «Отладку через USB». Для этого заходим в главном меню в раздел «Настройки» -> «Приложения» -> «Разработка» -> ставим галочку «Отладка по USB».

Шаг 1: Настройка udev (автомонтирование usb накопителей в Linux) для распознания вашего телефона

Первым делом подключаем телефон к компьютеру через USB. Затем создаем файл:
/etc/udev/rules. d/09-android. rules

следующего содержания:
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", SYSFS{idVendor}=="04e8", MODE="0666", GROUP="plugdev"
SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", MODE="0666", GROUP="plugdev"

Эти строки работают для всех протестированных телефонов: HTC (G1, Tatoo, Nexus One), Motorola Milestone, Samsung Galaxy (I7500), Acer Liquid (проверено мною).

Убедитесь, что ваша учетная запись в Ubuntu находится в группе "plugdev". Добавить пользователя в эту группу можно командой:
useradd - g plugdev *user_name*

где *user_name* — имя пользователя.

Далее в командной строке проверьте состояние USB устройств:
lsusb

Должен вернуться результат вроде такого:
Bus 001 Device 005: ID 0bb4:0c02 High Tech Computer Corp.

После этого перезапустите udev, используя следующую команду:
sudo /etc/init. d/udev restart

Шаг 2: Загрузка Android SDK (Software Development Kit или devkit — комплект средств разработки)

Загрузите Android SDK отсюда (для Linux — это файл «android-sdk_r06-linux_86.tgz»). Распакуйте файл командой:
unzip %downloadfile%

где %downloadfile% — имя загруженного файла, или используя GUI — кому как привычнее.

Шаг 3: Туннелирование

Теперь вы можете настроить туннелирование между вашим телефоном и компьютером. Перейдите в поддиректорию инструментов (tools) директории загруженного вами Android SDK (подсказка по работе с терминалом — файлы и каталоги). Далее введите команду:
./adb forward tcp:8080 tcp:8080

Шаг 4: Настраиваем proxy-server в браузере

Ваш браузер должен использовать proxy-server, запущенный на localhost, порт: 8080. Для Firefox это делается так:

Инструменты –> Настройка –> Дополнительно –> Вкладка «Сеть» -> Настроить.

В открывшемся окне сделайте следующие настройки:

Наконец, отключите «работу в автономном режиме» в меню «Файл».

Шаг 5: запуск Proxoid на вашем телефоне

Запустите приложение proxoid на вашем телефоне и поставьте галочку в пункте «Start/Stop Proxoid».

На этом описание первой задачи завершено. Должно работать :)

Задача 2. Настройка всей системы (Gnome) для выхода в интернет, используя телефон

Запускаем сетевые настройки, используя команду:
gnome-network-preferences

или
gnome-network-properties

Нажимаем «Ручная настройка Proxy» (1) (Manual Proxy Configuration) и отмечаем «Использовать этот Proxy для всех протоколов» (2) (Check Use the same proxy for all protocols). Затем заполняем поля (3):

HTTP Proxy: localhost
Port: 8080

Наконец, нажимаем «Применить ко всей системе» (4) (Apply System-wide).

Готово!

Известные проблемы

Что бы проверить, правильно ли распознано ваше устройство с помошью./adb, запустите следующую команду, находясь в поддиректории tools директории куда распакован Android SDK:
./adb devices

В ответ должна быть возвращена следующая форма:
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
HTXXNKFXXXXX device

Если ваш телефон не распознан системой — попробуйте перезагрузить (выключить и включить) ваш компьютер не отключая телефон от USB.

Надеюсь, данный мануал поможет пользователя Android и Ubuntu. Эта часть соединения Android -> Ubuntu мою решена. Следующая задача — наоборот, раздавать интернет с Ubuntu на Android — но это совсем другая история.