LXF157:Android. Борьба за права root
|
|
|
Android
Содержание |
Обзор сферического пользователя в вакууме. Борьба за права root
Евгений Балдин разбирается, что можно и чего нельзя вытворять со своим телефоном на Android. Последуем за ним...
- Метамодернизм в позднем творчестве В.Г. Сорокина
- ЛитРПГ - последняя отрыжка постмодерна
- "Ричард III и семиотика"
- 3D-визуализация обложки Ridero создаем обложку книги при работе над самиздатом.
- Архитектура метамодерна - говоря о современном искусстве, невозможно не поговорить об архитектуре. В данной статье будет отмечено несколько интересных принципов, характерных для построек "новой волны", столь притягательных и скандальных.
- Литература
- Метамодерн
- Рокер-Прометей против изначального зла в «Песне про советскую милицию» Вени Дркина, Автор: Нина Ищенко, к.ф.н, член Союза Писателей ЛНР - перепубликация из журнала "Топос".
- Как избавиться от комаров? Лучшие типы ловушек.
- Что делать если роблокс вылетает на windows
- Что делать, если ребенок смотрит порно?
- Почему собака прыгает на людей при встрече?
- Какое масло лить в Задний дифференциал (мост) Visco diff 38434AA050
- О чем может рассказать хвост вашей кошки?
- Верветки
- Отчетность бюджетных учреждений при закупках по Закону № 223-ФЗ
- Срок исковой давности как правильно рассчитать
- Дмитрий Патрушев минсельхоз будет ли преемником Путина
- Кто такой Владислав Поздняков? Что такое "Мужское Государство" и почему его признали экстремистским в России?
- Как правильно выбрать машинное масло в Димитровграде?
- Как стать богатым и знаменитым в России?
- Почему фильм "Пипец" (Kick-Ass) стал популярен по всему миру?
- Как стать мудрецом?
- Как правильно установить FreeBSD
- Как стать таким как Путин?
- Где лучше жить - в Димитровграде или в Ульяновске?
- Почему город Димитровград так называется?
- Что такое метамодерн?
- ВАЖНО! Временное ограничение движения автотранспортных средств в Димитровграде
- Тарифы на электроэнергию для майнеров предложено повысить
Android — это Linux. Кто не верит, тот может скачать с http://source.android.com/ исходники и убедиться в этом лично. Их можно даже скомпилировать (доказано Cyanogen(mod)). Вы хотите модифицировать прошивку своего аппарата, дабы полностью управлять им? У вас точно нет более важных и интересных дел? Давайте сначала определимся, надо ли вам это.
Что такое root
Да, собственно говоря, ничего особо партизанского в этом понятии нет. Права root для Android ничем не отличаются от прав суперпользователя в GNU/Linux. Если ты root – то ты можешь сделать со своей системой все, в том числе и уничтожить ее.
По умолчанию – скорее всего, именно благодаря последней возможности – «неразумным» пользователям Android данная возможность производителями не предоставляется. Более того, попытки получения этих прав в большинстве случаев всячески блокируются или, как минимум, не одобряются.
Следует, правда, отметить, что подобная точка зрения, к счастью, постепенно меняется. Например, HTC официально позволяет разблокировать загрузчик для последних версий своих телефонов (http://htcdev.com/bootloader/), в недрах той же Samsung получил пристанище лидер проекта CynogenMod Стив Кондик [Steve Kondik], и даже Sony предоставила пользователям возможность легально разблокировать загрузчик и заменить прошивку в смартфонах на базе Android, серии Xperia (http://unlockbootloader.sonymobile.com/). Но в целом процесс получения прав root до сих пор часто напоминает ходьбу по минному полю.
Да кому нужен этот root?
Если вы зайдете на сайт или форум, где упоминается проблема получения прав суперпользователя на Android, то обязательно обнаружите там ЧАВО, где данному вопросу посвящен специальный раздел, в котором написано, что root дает примерно следующее:
- контроль над всей системой.
- Возможность изменять системные файлы. В частности, можно изменить следующее:
- темы [themes];
- приложения, установленные на устройстве по умолчанию (карты, календарь, часы и тому подобное)
- загрузочный образ для восстановления после сбоя [recovery image];
- загрузчик [bootloader];
- Toolbox (программу, поставляемую с Android и позволяющую выполнить ограниченный набор простейших операций, к которым мы привыкли в командной строке Linux, типа ls), например, на Busybox;
- собственно загрузочный образ [boot image];
- добавить исполняемые двоичные Linux-файлы;
- ну и мелочи всякие, вроде информации по часовым поясам.
Да-да, без специальной программы вроде ClockSync (спасибо Сергею Баранову) «непереход» на зимнее и летнее времена не будет работать гарантированно, если у вас после того судьбоносного указа не было обновлений. А с учетом того, что даже HTC забывает включить в базу поясов третий по величине город России, то с переходом времени там вообще полный бардак.
- Возможность запускать приложения, которые требуют более полного контроля над системой, чем пользователю выдается по умолчанию. Примеры таких программ:
- SuperUser (позволяет отклонить или подтвердить претензии пользовательской программы на права «супер-юзера»);
- ask Manager For Root (возможность прибить процессы и программы, которые обычным способом не убиваются);
- а также вирусы и трояны – просто будьте осторожны.
- Возможность полностью сохранить текущее состояние системы и в случае необходимости восстановить его.
- Переместить кэш браузера/карт/маркета на microSD-карту.
- Переместить установленные приложения на microSD-карту.
- Перегрузить свой телефон с терминала с помощью команды su и reboot.
Если ничего из перечисленного вам не нужно и все в вашем аппарате вас устраивает, то не забивайте голову этой проблемой. Если же у вас чешутся руки что-то поменять, то давайте посмотрим, что вы сможете потерять при использовании root:
- Больше не будет фирменных обновлений OTA [Over-the-air]. В принципе, данную возможность можно не отключать, но в этом случае, даже если все пройдет хорошо, вы потеряете права root, и всю процедуру придется начинать по новой, причем не факт, что она будет той же. Фирменные обновления затыкают известные дырки, которые эксплуатируются при получении прав root, поэтому часто инструкция по получению таковых выглядит следующим образом:
- Проведите «даунгрейд» до версии XXX.
- Получите права root.
- Продавцы, да и представители производителей состроят вам козью морду по причине наличия нестандартной прошивки, если вы принесете им аппарат по гарантии. Поэтому, чтобы не облегчать им жизнь, перед походом следует восстановить прежнюю прошивку. Для этого обязательно следует сделать резервную копию непосредственно до прошивки.
- Вы теряете ощущение (возможно, совершенно безосновательно), что кто-то, кроме вас, использует ваш телефон.
- Вы теряете необходимость искать информацию о том, что такое права root и как их получить, так как вы уже сделали это!
- Если ваш телефон был продан с привязкой к оператору, а вы его разблокировали, то не очень разумно обращаться к оператору с какими-либо просьбами относительно вашего аппарата без хотя бы поверхностного «заметания следов».
Обратите внимание, что получение прав root – это нештатная операция для большинства присутствующих на рынке моделей телефонов и планшетов на Android. Все, что вы натворите – это целиком ваша самодеятельность, и никто вас утешать не будет.
То есть вы имеете полное право поломать свое устройство любым удобным для вас способом. К сожалению, в некоторых случаях особого выхода и не видно.
В качестве примера можно привести электронные книги, выпускаемые Barnes & Noble. В устройствах Nook сочетаются низкая цена, разумная железная начинка, высокое качество изготовления, жесткая привязка к замечательному книжному магазину, для отоваривания в котором необходима кредитка американского банка, и отсутствие возможности поставить стороннее программное обеспечение для чтения того же fb2. Поэтому в российских реалиях всякий Nook подвергается перепрошивке или значительной модификации, что превращает его во вполне приличный Android-планшет (доступ в магазин Barnes & Noble при этом может сохраниться).
Среди программ, которым нужен root-доступ, можно отметить, например, следующие:
- CifsManager – монтирование внешних сетей Samba/NFS;
- TimeZone Fixer – обновление базы часовых поясов;
- Button Savior – программная эмуляция стандартных железных кнопок Android;
- Super Manager – комбайн, включающий и файловый менеджер, и бэкап, и клиент ftp/NFS/cifs, и управление приложениями, и многое другое;
- Font Changer – смена системных шрифтов;
- SetCPU – разгон процессора;
- QuickSShd – sshd (удобно для обмена файлами между телефоном и компьютером);
- AdFree – блокирование рекламы в приложениях (не всем разработчикам это нравится).
Как получить права root
Предполагается, что получение прав root сопряжено со значительной модификацией прошивки устройства. Здесь следует различать модификации родной прошивки (иногда их называют стоковыми, от stock) и полноценные сторонние сборки из исходных кодов Android, типа CyanogenMod, MIUI или Replicant. Как правило, стоковые прошивки более стабильны, хотя и менее функциональны, нежели полноценные сторонние сборки, но опять же: что именно выбрать, зависит от конкретной модели устройства.
А тут, к сожалению, нет никакого общего и всеобъемлющего рецепта. Правда, работает одно эмпирическое правило: Чем более популярно ваше устройство, тем больше шансов найти подробную инструкцию (включая видео на YouTube) о его программной модификации, и тем больше шансов, что есть прошивки, которые это устройство поддерживают.
Поэтому первое, что следует сделать – это накопить критический объем информации о своем устройстве. Для этого придется потратить несколько часов на специализированных форумах XDA-Developers (http://forum.xda-developers.com) или, если чтение на английском вызывает дискомфорт, на 4pda.ru (www.4pda.ru). Необходимо найти ветку или тему, посвященную именно вашей модели, прочитать все, осознать возможные проблемы, запастись картами и устройствами чтения microSD, набраться храбрости и приступить к процедуре, сохраняясь на каждом этапе, чтобы всегда можно было откатиться. Капелька паранойи тут будет весьма к месту. Особенно это касается устройств, где имеется дополнительная защита и где, кроме получения root-доступа, необходимо выполнить процедуру S-OFF (Security OFF).
Некоторые действия могут на первый взгляд показаться дикими. Например, для регистрации на Android-маркете Nook Touch с новой прошивкой потребуется вначале зарегистрироваться на YouTube, и только после этого можно будет устанавливать программы непосредственно с маркета. Временами ощущаешь себя участником какого-то квеста, где результат можно получить, только если выполнишь все действия в строгой последовательности.
К вопросу о сторонних сборках
Для начала – немного информации об официальных сборках. Не будем интересоваться глубокой стариной двухлетней давности. Начнем сразу с Android версии 2.2 Froyo, которая вышла 20 мая 2010 года, последняя корректирующая версия – 2.2.3.
Следующая и последняя версия второй ветки 2.3, Gingerbread, вышла 6 декабря 2010 года. Последняя корректирующая версия – 2.3.7. Именно эта версия в основном стоит на устройствах среднего ценового диапазона, производители которых не забыли своих пользователей и не обделили обновлениями. Именно эту версию вы скорее всего выберете, если задумаете поставить стороннюю прошивку.
Следующая, третья ветка Honeycomb для телефонов не представляет почти никакого интереса, так как здесь Google занялся экспериментами на тему планшетных компьютеров. Это была своеобразная прелюдия к Android 4.0 Ice Cream Sandwich, который вышел чуть меньше года назад.
Самые топовые телефоны и планшеты используют четвертую версию. Она значительно отличается от второй наличием совершенно естественных возможностей типа USB-хоста (в сторонних прошивках они были в какой-то мере реализованы задолго до) и умением делать снимки экрана «из коробки». Безусловно, изменений гораздо больше, поэтому стан разработчиков сторонних прошивок до сих пор напоминает картину «все ушли на фронт», то есть все пилят «мороженко с печенькой» с той или иной степенью успеха. Пробовать или не пробовать эту версию – решать вам. Тут до сих пор присутствует значительная степень случайности.
CyanogenMod
CyanogenMod (cyanogen – цианистый) является одной из самых популярных и стабильных сторонних сборок. На сегодня гарантированно зафиксировано более 1,7 миллионов установок этой прошивки. На сайте проекта http://www.cyanogenmod.com/ хостятся более 60 вариантов прошивок для разных типов телефонов и планшетов.
Прошивки разбиты на три категории: стабильные прошивки, кандидаты в релиз и ночные сборки. По идее, стабильные прошивки являются наиболее свободными от ошибок, но так как выявление и исправление ошибок идет непрерывно, то может оказаться, что последняя ночная сборка лучше всего удовлетворяет вашим ожиданиям.
CyanogenMod версии 7 соответствует Android 2.3 Gingerbread. Самая последняя из стабильных версий – 7.2 (2.3.7). CyanogenMod версии 9 соответствует Android 4.0, находится в активной разработке, стабильных версий пока нет.
CyanogenMod постоянно совершенствуется и по своим возможностям превосходит официальные прошивки. Чтобы работать с Android-маркетом, необходимо вместе с прошивкой установить пакет программ Google, код которых закрыт. Планируется, что со временем сообщество CyanogenMod организует свой репозитарий и обвязку вокруг него, но пока приходится использовать не очень-то дружелюбный маркет. Довольно часто CyanogenMod используется в качестве основы для создание специализированных любительских сборок. Например, для упомянутого Nook Color одна из самых популярных и стабильных сборок – Phiremod 7.1.
MIUI
MIUI (произносится как “Me You I”) разрабатывается китайской фирмой Xiaomi Tech. Часто именно эту сборку устанавливают на китайские андроидофоны. Ее, соответственно, и рекламируют как самую популярную прошивку всех времен и народов (не без влияния численности населения КНР).
В отличие от CyanogenMod, где основной упор идет на базовые программы и код Android, прошивка MIUI часто представляет собой комбайн из уже предустановленных программ. То есть все продумывают уже за вас. На сайте MIUI, http://en.miui.com/, можно найти сотни тем и конструктор по сборке комбайна из программ.
У MIUI есть и русскоязычное сообщество, которое обретается на сайте http://miui.su и форумах 4pda.ru.
Replicant
Несмотря на то, что код Android имеется в свободном доступе, значительная часть системных компонент имеет закрытый код. Специально для «настоящих джедаев свободного программного обеспечения» развивается дистрибутив Replicant (http://replicant.us/). В рамках Replicant разработчики поставили задачу заменить все закрытые драйвера и компоненты, дабы окончательно освободить Android.
Меняем прошивки как перчатки
Предположим, что вы установили новую прошивку с root-доступом. Вы все настроили... и вам вдруг показалось, что новая прошивка сделает вас немножечко более счастливым. Тогда, прежде чем начать это делать, необходимо запастись набором инструментов, дабы смена прошивок происходило легко и непринужденно, а в случае каких-либо проблем можно было быстро откатиться назад.
Все три перечисляемые ниже программы требуют для работы прав root.
ROM Manager
ROM Manager написан автором ClockworkMod Recovery (http://www.clockworkmod.com/) Кушиком Дутта [Koushik Dutta].
ClockworkMod Recovery – это модифицированный загрузочный образ для восстановления после сбоя, который позволяет сделать абсолютно полное резервное копирование системы на microSD, перезаписать новую прошивку и восстановить систему из резервной копии. Имея ClockworkMod Recovery, можно смело экспериментировать – при условии, что предварительно забэкапился. Все это работает в специальном режиме, в который нужно перегрузиться. В CyanogenMod ClockworkMod Recovery установлен по умолчанию.
ROM Manager – это программа Android, которая позволяет скачать популярные прошивки из интернета и поставить задачу ClockworkMod Recovery на предмет бэкапа или перепрошивки. Программа хочет немного денег в обмен на некоторое увеличение функционала. Я думаю, что автору такого чуда имеет смысл подкинуть немного средств.
Titanium Backup Pro
Вам может показаться, что у меня есть признаки легкой паранойи по поводу бэкапов. Если вам так кажется – значит, вы слишком беспечны, потому что я-то нормален.
Больше всего времени при настройке удобного окружения занимает установка и настройка сторонних программ. Это вам не Linux, где все пользовательские настройки хранятся в /home. Тут каждая программа все таскает с собой, и при ее смерти все настройки сгорают вместе с ней (если автор не побеспокоился о сторонней резервной копии – а он обычно не беспокоится). При перепрошивке все программы, естественно, убиваются, и устанавливать, а также настраивать их нужно опять по новой.
Тут на помощь приходит Titanium Backup Pro, который позволяет сохранить образы программ и восстановить их по запросу. Программа хочет немного денег – дайте ей их, и в обмен вы получите автоматизацию восстановления и резервное копирование по таймеру.
Calibrate battery
После перепрошивки необходимо будет откалибровать батарею. Calibrate battery примерно это и делает – точнее, удаляет файл калибровки, а калибровка выполняется уже самой системой. Если этого не сделать, то система может буквально сойти с ума и впасть в непрерывный цикл перезагрузки, пока не разрядится полностью.
Несколько слов после
Далеко пока еще Android’у до удобства Linux. Постоянно приходится искать костыли для выполнения задач, которые, казалось бы, должны решаться на автомате, не обременяя жизнь пользователю.
С другой стороны, эаметно, что система постепенно меняется к лучшему, в том числе и за счет свободных наработок. Со временем появится сторонний маркет, и вот тогда можно будет устраивать свою личную инфраструктуру с блэкджеком и барышнями.