HTC Desire: устранение проблемы нехватки места в ROM

Думаю, многие владельцы HTC Desire были в ситуации, когда девайс начинает сетовать на недостаток свободного места в ROM, отказываясь при этом, например, синхронизировать почту. Усугубляется это тем, что все поддерживающие перенос на SD программы уже перенесены, и вроде как остаётся 2 пути: удалить часть приложений или сменить телефон.

HTC Desire

Считаю оба варианта неприемлемыми, ибо установлено только реально востребованное ПО (вроде Навител и 2ГИС). К тому же Desire нисколько не устарел, и свои функции выполняет прекрасно.

В результате поиска в Интернет был найден способ сделать так, что “и волки сыты, и овцы целы” – не лишаться уже установленных программ, и получить около 50Мб свободного места.

Пост не претендует на техническую новизну, и многие примененные утилиты уже упоминались в т.ч. на Хабре. Я решил собрать воедино кусочные сведения и изложить в форме инструкции — что нужно делать, и что при этом получается. Все указанные шаги я успешно выполнил на своём Desire.

Традиционное предупреждение:

1) Всё ниже изложенное — в ознакомительных целях. Если захотите повторить — то только на свой страх и риск, крайне внимательно и без спешки!

2) Автор за потерянные данные испорченные девайсы ответственности не несёт!

3) В результате этих действий устройство лишается гарантии!

Итак, исходные данные – HTC Desire РСТ c офиц. Android 2.2 (версия прошивки 2.29.405.5), НЕ рутованный, не «брендированный». Т.е. то, что имется на руках у многих пользователей.

Если у вас залоченный аппарат, либо куплен за границей, погуглите по ключевому слову «goldcard», ибо есть ряд особенностей, на которых я не буду останавливаться.

Суть манипуляций сводится к следующему:

1. получаем root-права

2. делаем S-OFF загрузчика

3. делаем дополнительный раздел на флешке, для установки софта туда

4. устанавливаем утилиту Link2SD из маркета и переносим программы из ROM в созданный ранее раздел

В ходе всех этих действий при соблюдении осторожности и аккуратности данные в тлф и на карте памяти будут в целости и сохранности. Но лучше сделать-таки бэкап ;-)

Приступим!

1. Получение root-прав

Способ получения root довольно давно известен, и хорошо описан, не стану повторять его тут.

2. Делаем S-OFF

Что такое вообще S-OFF? В устройствах HTC имеется защита, называемая secuflag. Благодаря ей разделы /system и /recovery монтируются в режиме read-only. Поэтому даже при наличии рутных прав, мы не можем изменять их содержимое.

Группе лиц, именующих себя Alpharev, удалось отключить эту защиту, т.е. сделать S-OFF. Упомянутые разделы /system и /recovery будут смонтированы на чтениезапись, это будет использовано далее, в п. 4.

Как бонус – вы получаете возможность менять системные файлы прямо с тлф, менять картинку загрузки и проч., удалять ненужные программы из прошивки.

Перед началом процедуры получения S-OFF:

1. полностью зарядить аппарат

2. проверить, что HBOOT у вашего Desire версии 0.93.0001 (эта версия устанавливается при прошивке официальной 2.2)

3. получить root-права (см. п. 1)

Сама процедура следующая:

1) заходим на сайт AlphaRev и качаем подходящую версию утилиты (для Windows или Linux)

2) В полученной форме на сайте выбираем:

Alpharev

Здесь Serial number – это серийный номер устройства. Узнать его можно, заглянув в “Настройки” –> “О телефоне” –> “Идент. код телефона” –> “Сер. номер устройства”. Введите его, и нажмите Generate key

3) После этого сайт сгенерирует вам ключ, который пригодится далее:

Alpharev

4) Запустите revolutionary.exe (в Windows — от имени Администратора)

5) Подключите тлф по USB, и дождитесь, пока утилита его определит

6) Введите ключ, полученный на шаге 3

7) Ждите. Девайс будет перезагружен. Читайте сообщения утилиты, она уведомит вас о ходе процесса, и о результатах работы.

3. Создание дополнительного раздела на SD-флешке

По умолчанию вся SD-флешка используется для хранения данных пользователя и установки программ штатными средствами ОС 2.2 и выше. Мы же создадим дополнительный первичный ext2-раздел, куда и будем переносить исполняемые файлы установленных приложений, при этом оставляя в ROM лишь ссылку на них (т.о. Android будет считать, что программы находятся в памяти телефона, в то время как реально они будут лежать на SD). Делать это будет утилита Link2SD, и сейчас мы подготовим раздел для обеспечения её работы.

Задача простая: с помощью любого доступного вам редактора разделов создайте второй (следующий сразу за FAT32-разделом для хранения данных) первичный ext2-раздел достаточного размера. Я использовал Magic Partition Manager и создал ext2-раздел размером 1024 Мб

Хотите сказать спасибо сайту и поддержать нас?

Т.е. процесс такой:

1. вытащить флешку из телефона и подключить к компу

2. скопировать всё содержимое флешки на комп

3. удалить все разделы и создать 2 первичных — FAT32 и ext2

4. вернуть обратно данные на FAT32-раздел

5. поставить флешку в телефон

Лучше, чтобы флешка была быстрая (рекомендуется минимум класс 4). Я купил на eBay 8Gb флешку Transcend class 10 за ~$20, она меня полностью устраивает.

4. Утилита Link2SD

Устанавливаете из Маркета программу Link2SD, при первом запуске выбираете созданный ранее раздел, утилита настроит автоматическое монтирование его при загрузке устройства (для чего собст-но и нужно иметь доступ на запись в /system).

Перезагружаете аппарат, и вновь запускаете Link2SD. Вам будет выведен список приложений, и предложено сделать линки для тех программ, что установлены в памяти телефона. Программы, установленные в /system, утилита не переносит, и я настроил фильтр таким образом, чтобы отображались только «неприлинкованные» пользовательские приложения:

При выборе какого-либо из них появляется форма:

По нажатию на кнопку «Create link» файлы программы будут перенесены на SD, и созданы ссылки на них. В данном случае можно сэкономить 861Кб, перенеся 3G Watchdog на ext2-раздел.

Не спешите переносить всё подряд — рекомендую сделать это только для крупных приложений, которыми нечасто пользуетесь. Более подробные сведения о работе утилиты можно получить в ней самой при выборе Mеню -> About

Да, и конечно, Link2SD требует root-прав для своей работы!

FAQ

1. А можно вернуть всё «как было»? Т.е. снова получить девайс в исходном виде — без рута и с S-ON

Да, можно, правда лично я не пробовал. Это делается посредством прошивки стоковой 2.2, при этом HBOOT будет заменён на прежний, и root-прав больше не будет. Как результат — получим обычный телефон, и вряд ли в СЦ смогут в случае чего распознать, что проводились описанные модификации ;) Поэтому в п. 3 предупреждений я слегка «приврал».

2. Не верю я UnRevoked и AphaRev! Где можно взять исходники утилит и собрать их самому?

Нигде. Исходные коды утилит и описание уязвимостей, которые они используют, в свободном доступе не существуют.

3. Сколько времени происходит весь процесс?

Не более получаса. Хотя торопиться не следует, и помните про бэкап :)

4. Сколько это всё стоит?

Нисколько. Всё упомянутое ПО распространяется бесплатно, однако авторы приветствуют донейты ;)

5. Не будет ли тормозить всё при работе с SD?

Субъективно — разницы не заметил, ни быстрее, ни медленнее не стало. Возможно, сказывается class 10 флешки, потому и рекомендую обзавестить максимально быстрой.

6. Что будет, если подключить телефон к компу в режиме «Дисковода»?

Всё как раньше — станет доступно содержимое FAT32-раздела. При этом ext2-раздел не отмонтируется, соответственно все программы и виджеты продолжат работать.

Профит?

После выполнения всех этих действий вместо прежних 15..18 Мб и периодических сообщений о нехватке памяти я получил ок. 51 Мб свободного места, что достаточно для установки любого требуемого мне приложения. При этом не нужно менять прошивку, перенастраивать девайс и всё ПО.

Побочно — получил рутный доступ к девайсу, со всеми вытекающими плюсами и минусами, и удобные средства вроде nandroid backup.

Надеюсь, для некоторых этот пост будет поводом иначе взглянуть на свой Desire!

Если вам интересны новости мира ИТ также сильно, как нам, подписывайтесь на наши материалы в Telegram.

Поделиться:

Ещё сегодня было:

  1. LG G7 сосканирует ваши глаза. Картинкой или маской его не обманешь!

Комментарии:


Аватарwerty: Вот новость так новость, на 4pda.ru эта инструкция уже год как лежит
Знатоки мля


АватарАлександр: Ну не все 4пда читают


Аватарvlodimer: для себя я решил эту проблему сразу - cyanogen + c2m


Аватарcoroud: а не проще, если уж с рутом, a2sd скрипт поставить, и через терминал в три комманды перенести как программы так и давилик кэш?


АватарОлег: Пробовал Cyanogen, Oxygen и RuHD. Не прокатило. При использовании аппарат постоянно вис намертво, откатился до официальной 2.2


АватарMr.Anderson: Есть вариант еще радикальнее - AOSP-прошивки (см CM7)
Даже без ext-раздела с тем же софтом, что на стоке, свободно 65 метров, при этом на sd перенесено буквально 5 программ, вместо тотальной зачистки.
И это еще без изменения таблицы разделов, с которой можно отжать у system минима 50 Мб.


АватарMr.Anderson: To Олег
Не знаю как вы ставили и какой у вас аппарат, но я сам на RuHd просидел полгода, все работало как часы.
Может, карта кривая или с частотой CPU заигрались?


АватарАндрей vortex: Спасибо за пост!


АватарАлексей: @vlodimer: c2m это что?


Аватарvlodimer: @Алексей: опечатался, S2E


АватарАлексей: @vlodimer: я для себя аналогичным способом решил проблему нехватки памяти :)


Аватарdeez: Спасибо за инструкцию!
4pda читаю но там так написано ужасно все, черт ногу сломит, куча перекресатных ссылок на соседние темы и посты.. бесит!


АватарАндрей: Я для себя решил эту проблему установив Cyanogen. Удалил из него несколько стандартных приложений, некоторые заменил. Никаких тормозов и глюков. А свободного места было чуть меньше 300 метров.


АватарЮрий Вачугов: А если revolutionary.exe зависает на этапе "waiting for fastboot" что делать или ждать до победного?


АватарArmGun: @deez

Не знаю что и как Вы читаете, но еще ни разу не было претензий к инструкциям.


Аватар57567567: та же фигня: останавливается на waiting for fastboot, на звере останавливается на красном fasboot usb.


АватарAlexei: Какой тип подключения по USB выбрать?


АватарNable: ну да, ну да. способ получения рут прав давно известен, ага..
был момент когда хотел получить на свой desire a8181 root, ничего у меня не получилось. так что рабочий метод мне до сих пор неизвестен. пробовал много разных программ и способов.


Оставить комментарий?

HTC Desire: устранение проблемы нехватки места в ROM

Отправляя сообщение, вы подтверждаете, что принимаете наше соглашение об обработке персональных данных.