Разделы внутренней памяти ROM Android - проясним наболевшее о разметке системной памяти. Замена оригинального файла на патченный

Разделы внутренней памяти ROM Android - проясним наболевшее о разметке системной памяти. Замена оригинального файла на патченный

Те, кто повседневно пользуются планшетом или смартфоном на основе ОС Android часто хотят получить больший функционал, чем предоставляется при покупке. Для этого нужно получить root права (доступ к полномочиям администратора), установить кастомную прошивку, установить другую загрузочную анимацию и много другого.

Когда пользователь изучает информацию по изменению своего устройства, часто приходится сталкиваться с упоминанием модифицированного рекавери, который обычно именуется ClockworkMod Recovery или TWRP Recovery. Общее понятие о модрекавери и вы можете найти в других статьях, а здесь мы познакомимся поближе с другим известным типом модифицированного заводского меню, а именно - с TWRP Recovery, который разработала команда Teamwin.

До того, как мы коснёмся изучения функций TWRP Recovery более подробно, необходимо заметить, что в сравнении с ClockworkMod имеется ряд особенностей, благодаря которым многие пользователи предпочитают использовать именно TWRP:
- Возможность полноценно использовать тач для управления функциями модрекавери;
- более гибкая настройка ряда опций;
- поддержка установки сразу нескольких zip файлов;
- подробное меню выбора того, что необходимо сохранить в резервных копиях;
- возможность пользоваться S-Pen на планшетофонах Galaxy Note;
- блокировка экрана и спящий режим при помощи кнопки питания.

Руководство пользователя при работе с модрекавери TWRP Recovery
1. Общая информация о TWRP
2. Инсталлирование TWRP Recovery
3. Как попасть в меню TWRP Recovery
4. Подробное рассмотрение основных функций в меню TWRP Recovery
5. Перепрошивка, замена системных файлов, установка обновлений, модификаций на устройства Android при помощи TWRP

Что такое TWRP Recovery

Познакомимся с тем, что собой представляет TWRP Recovery.
В сравнении со стандартным заводским меню, TWRP Recovery отличается гораздо большим количеством доступных пользователю функций. С помощью него можно сохранять полный слепок системы, устанавливать нестандартное ПО, другие прошивки, заменять ядро ОС, восстанавливать систему из резервной копии, доступны и многие другие возможности. TWRP записывается в особый раздел внутренней памяти телефона или планшета, заменяя собой заводское рекавери.
Зачастую, в ряде, на первый взгляд, безвыходных ситуаций, TWRP Recovery может прийти на помощь. Не смотря на то что телефон может перестать загружаться, не редко, воспользовавшись TWRP, можно полностью восстановить работоспособность устройства из резервной копии, сохранив все установки, программы и их настройки.

Приведём краткий перечень основных возможностей TWRP Recovery:
- Установка альтернативных (кастомных) прошивок, или ядер;
- Установка обновлений системы, исправлений, внесение корректив в функции гаджета;
- Создание полной резервной копии системы или отдельных её частей (данных приложений, системного раздела, кэша, настроек);
- Подключение посредством USB шнура к компьютеру в качестве съёмного накопителя;
- Восстановление предыдущего состояния системы из раннее сохранённой резервной копии (бекапа);
- Редактирование разделов на карте памяти (создание, форматирование, удаление);
- Возможность сброса на заводские установки (Wipe - data/factory reset). Можно удалять только часть данных вместо полного сброса к исходному состоянию: удаление статистики батареи (wipe battery stats), очистка кеша (wipe cache), стирание далвик-кеша (wipe Dalvik-cache);
- Использование в качестве терминала для выполнения команд;
- Возможность работать с системными файлами на планшете или телефоне.

Установка TWRP Recovery

Чтобы установить TWRP Recovery на большую часть устройств, много усилий не потребуется. Если инсталлировать с Google Play приложение GooManager, то можно в её меню воспользоваться функцией "Install OpenRecovery Script".

Многие гаджеты на Андроиде, к примеру смартфоны и планшеты Nexus, имеют специально предназначенные программы, как Google Nexus 7 Toolkit, где есть функция установки модифицированного рекавери. Кроме того, воспользовавшись программой adb, можно тоже инсталлировать TWRP Recovery.

Как попасть в TWRP Recovery

Для того, чтобы войти в меню модифицированного рекавери, можно воспользоваться несколькими способами:
1. При помощи нажатия особой комбинации кнопок при включении гаджета. Комбинация может разниться для разных моделей устройств на Андроиде. К примеру, на ряде устройств попасть в рекавери можно, зажав во время включения одновременно клавиши увеличения громкости звуков и кнопки питания.
2. Воспользовавшись специализированной программой, как GooManager иои Titanium Backup, которые позволяют выбрать в своём меню функцию загрузки в режим Recovery, пункт "Reboot Recovery".
3. Если на ПК установлены соответствующие гаджету драйвера и настроено подключение при помощи программы ADB (т.н. ADB shell), то подсоединив к устройству USB провод от компьютера, можно запустить на исполнение команду:

adb reboot recovery

Основные функции и меню TWRP Recovery

Загрузив телефон или планшет в TWRP Recovery, вы первым делом попадёте в главное меню.

В данной инструкции рассматриваются функции и возможности TWRP Recovery версии 2.3.2, которая является наиболее актуальной на момент написания статьи. Другие версии TWRP могут обладать немного другим интерфейсом, однако главный функционал останется таким же как и в рассматриваемой нами версии.

Внешний вид TWRP recovery также может немного отличаться, в зависимости от конкретного устройства и выбранной темы оформления.
Поскольку TWRP recovery поддерживает сенсорное управление, то выбирать нужные пункты меню и перемещаться по ним весьма просто - достаточно, также как и при обычном использовании гаджета, нажимать на нужный нам элемент пальцем.
Если вы хотите вернуться в предыдущее меню, то в каждом подменю находится в нижней (телефон) или верхней правой (планшет) части дисплея кнопка возврата. Также сверху показан процент заряда аккумулятора и текущее время.

Функции основных пунктов меню:
1. Install

Используется для установки прошивок, патчей и модификаций.
Это одна из самых наиболее применяемых функций TWRP Recovery.
Воспользовавшись этой опцией, можно инсталлировать кастомные (неофициальные), официальные прошивки, программы в системный раздел, заменять ядра, изменять бутанимацию, темы оформления и другое. Обновления устанавливаются из файлов, находящихся в любом месте карты памяти устройства, в zip формате.
Выбрав необходимый файл, открывается меню, в котором можно добавить следующее обновление. Таким образом можно составить очередь, по которой будет проходить установка патчей (пункт Add More Zips). После того, как нужные файлы выбраны, нужно начать прошивку, протянув с левой стороны вправо слайдер, который находится в нижней части дисплея.

Функция Zip Signature verifications может активировать проверку цифровой подписи zip файлов.
При помощи пункта Force MD5 check on all Zips активируется проверка устанавливаемых обновлений на соответствие контрольных MD5 сумм.

2. Wipe Меню очистки и удаления данных

В этом разделе есть возможность очищать память телефона, как полностью возвратившись к заводским настройкам (Factory Reset), так и выбрав очищение лишь определённой её части, как системный раздел System, кэш (Cache), или Dalvilк Cache. После применения Factory Reset устройство вернётся к состоянию, в котором пришло с завода.
Кроме этого, есть возможность очистить внутреннюю память (Internal Storage) или внешнюю SD карту (External Storage), очистить папку, где хранятся установленные на внешнем носителе программы (android_secure) или сбросить счётчик статистики батареи (Wipe Battery Stats).
Аналогично другим исполняемым функциям, подтвердить свой выбор можно, воспользовавшись слайдером, который появится в нижней части дисплея. Отменить выполнение задач можно, тапнув по кнопке "Назад".

3. Backup Раздел резервирования данных или системы

Это один из самых важных пунктов в модифицированном рекаверри. Здесь можно сделать резервную копию всей системы телефона или планшета, включая данные приложений и установки устройства - Nandroid Backup.

В этом разделе можно :
- Выбрать части памяти, которые требуется зарезервировать: Data, System, Recovery, Boot, Uboot, Cache, NVram;
- Посмотреть на доступный объём места в памяти (Free Space);
- Выключить создание контрольных сумм в файлах резервов (Skip MD5 generation during backup);
- Активировать сжатие файлов бекапа (Enable Compression);
- Выбрать для сохранения резервных данных внутреннюю память устройства (Use internal storage);
- Выбрать внешнюю карту памяти для сохранения файлов бекапа (Use external SD);
- Обновить информацию по свободной памяти в разделах (Refresh Sizes);
- Установить название для резервной копии (Set Backup name).
Также как и раньше, активировать запуск выбранных вами функций можно при помощи слайдера, после чего будет показан прогресс выполнения операции.

Когда процесс завершится, можно перезагрузить гаджет, воспользовавшись опцией Reboot System, или вернуться в главное меню TWRP, воспользовавшись стрелочкой.

4. Restore Меню восстановления частей или полностью системы из ранее созданной резервной копии

В этом разделе предоставляются следующие возможности :
- выбор внутренней памяти устройства в качестве места, где будет осуществляться поиск резервных копий (Use internal storage);
- установить внешнюю карту памяти как раздел, где рекавери будет искать бекап (Use external SD).
Если вы не меняли настройки при создании бекапа, то по умолчанию имена резервных копий складываются из числа и времени создания. Файлы можно отсортировать следующими способами:
- по возрастанию (Sort Ascending) или убыванию (Sort Descending) даты создания;
- увеличению или уменьшению размера резервных копий.

Когда искомая резервная копия найдена, предоставляется следующий выбор функций :
- отметить те разделы, которые требуется восстановить (Data, System, Recovery, Boot, Uboot, Cache, NVram);
- удалить эту резервную копию (Delete Backup);
- дать другое имя выбранной резервной копии (Rename Backup);
- включить проверку контрольных MD5 сумм в файлах резервных копий.

Начать выполнение выбранной операции, подтвердив выбор, воспользовавшись слайдером внизу экрана.

5. Mount

Здесь вы можете монтировать и размонтировать разделы и совершать операции с ними. При монтировании данные, содержащиеся на разделе становятся доступными.

В этом разделе есть функции :
- Монтирование, размонтирование системного раздела (Mount/Unmount System);
- Монтирование, размонтирование кеш раздела (Mount/Unmount Cache);
- Монтирование, размонтирование раздела данных (Mount/Unmount Data);
- Монтирование, размонтирование внутренней памяти (Mount/Unmount Internal);
- Монтирование, размонтирование внешней карточки памяти (Mount/Unmount Sdcard);
- Подключение устройства к ПК в качестве накопителя (Mount USB storage). Здесь к ПК можно подключить SD карту (Use external SD) или встроенную память гаджета (Use internal storage).

6. Settings Настройки модифицированного рекавери

Здесь задаются установки, которые TWRP Recovery будет использовать по умолчанию при выполнении функций:
- Включить/отключить проверку цифровой подписи устанавливаемых файлов (Zip file signature verification);
- Включить/отключить проверку контрольных сумм для любых файлов формата zip (Force MD5 check for all zips);
- Стирание файлов вместо форматирования во время очистки памяти (Use rm -rf instead of formatting);
- Не учитывать ошибки в размерах файлов, когда проводится резервное копирование (Ignore image size errors during backup);
- Не создавать контрольные суммы во время создания бекапа (Skip MD5 generation during backup);
- Выбрать свою временную зону (Time Zone);
- Вернуться к установкам TWRP Recovery по умолчанию (Restore Defaults).

7. Advanced Дополнительные опции TWRP

Здесь можно :
- Активировать сохранение файла лога операций на карту памяти (Copy Log to SD);
- Вернуть к первоначальному состоянию права доступа на системные папки и файлы, которые могут нарушаться некоторыми приложениями с root привилегиями. Иногда нарушение прав доступа может приводить к сбоям и зависаниям планшета или телефона (Fix Permissions);
- Изменять разделы на карте памяти (создавать, удалять, создавать кэш-файлы swap). Swap обычно применяется для того, чтобы ускорить работу Андроид устройств. (Partition SD Card).
Здесь можно выполнить следующие команды: Copy (копировать файл), Move (переместить файл), Chmod 755 (установить права доступа 755, которые по умолчанию используются для всех системных файлов), Chmod (установить другие права), Delete (удалить файл), Rename File (переименовать файл);
- Выполнить команду, введённую вручную в режиме терминала (так же как с ПК при помощи интерфейса adb Sshell) (Terminal Command).

8. Reboot

С помощью этого пункта можно перезагрузить устройство. Доступные опции :
- перезагрузиться в рабочий режим устройства (System);
- перезагрузиться в рекавери (Recovery);
- выключить планшет или телефон (Power Off).

Перепрошивка, замена системных файлов, установка обновлений, модификаций на устройства Android при помощи TWRP

Для того, чтобы установить другую прошивку или патч, потребуется эти файлы в формате zip скопировать на карту памяти или во внутреннюю память.

Далее выполняем следующее :
1. Загружаемся в TWRP recovery;
2. Выбираем функцию "Install";
3. Выбираем внутреннюю (Use internal storage) или внешнюю память (Use external SD), в зависимости от того куда мы скопировали нужные нам файлы.
4. Находим и выбираем файл, который требуется установить.
5. Если у вас есть файл md5 вместе с Zip, то можно активировать проверку сумм (Force MD5 check on all Zips), в противном случае не делаем этого;
6. Запускаем установку, протянув слайдер слева на право.

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

Постановка проблемы

Хранение информации в компьютере связано с риском ее случайного или преднамеренного раскрытье, поэтому для ее защиты применяют различные методы и средства. Чаще всего в качестве основного средства, что препятствует свободному доступу к информации в электронном виде, используют шифрование , которое реализуется аппаратным или программным способом. Как объекты криптографической защиты выступают отдельные файлы, группы файлов, каталоги и, наконец, логические диски. Результатом шифрования является файловые архивы, находятся на электронном носителе . Подробности реализации различных криптографических алгоритмов, можно отметить, что в этом случае ГКУ необходимо также решать задачи, связанные с гарантированным уничтожением начальной незашифрованной информации , чтобы исключить ее восстановления.

Дело в том, что особенностью всех использованных файловых систем (FAT, NTFS и др.). являются не возможность перезаписи информации в кластерах, принадлежащих какому-либо файлу, пока данный файл не будет замечен, как удаленный. То есть во время шифрования файла, его зашифрованный экземпляр записывается не вместо начального файла, а в свободные кластеры электронного носителя, и только после завершения процесса шифрования незашифрованный файл удаляется, если это не предусмотрено алгоритмом.

Таким образом, возможно восстановление удалённой незашифрованной информации, чем с успехом справляются такие программные продукты, как File Recover, Back2Life, R-Studio, GetDataBack for NTFS и др.

Если не учитывать рекомендаций, связанного них с полным физическим уничтожением электронного носителя, то сделать невозможным это можно только путем многократной перезаписи тех кластеров магнитного диска, где ранее хранилась конфиденциальная информация. Например, американский национальный стандарт Министерства обороны DOD 5220.22-M (E) предполагает в первый проход запись случайных чисел, во второй — чисел, дополнительных к записанным на предыдущем проходе, а в третий — случайных чисел.В известном алгоритме Питера Гутмана (Peter Gutmann), который считается одним из самых надежных, на место уничтожаемых данных по очереди пишутся все известные комбинации разрядов (всего осуществляется 35 проходов). — методы уничтожения информации поддерживают американские стандарты DOD 5220.22-M, Army AR380-19, NCSC-TG-025, Air Force 5020, NAVSO P-5239-26, HMG IS5, немецкий VSITR, канадский OPS-II и российский ГОСТ P50739-95 и др. Таким образом, шифрование, выполняемой внутри логического диска, всегда сопряжено с риском неполного уничтожения первоначальной информации, поэтому необходим другой подход к этой проблемы.

Загрузив свой планшет или телефон в TWRP Recovery, вы, прежде всего, увидите его основное меню:

Скриншоты сделаны в одной из последних (на момент написания статьи) версий TWRP recovery 2.3.2. Более новые версии TWRP, а также версии для разных устройств могут иметь немного другое меню, но основные его функции останутся без изменений.
Кроме того, внешний вид TWRP recovery на вашем устройстве может быть другим - он может меняться в зависимости от темы оформления.
Благодаря сенсорному интерфейсу рекавери, перемещаться по его пунктам и выбирать нужные опции очень просто – достаточно нажать на определенный элемент пальцем.
Во всех подменю, вернуться в предыдущее меню можно, нажав на кнопку возврата, расположенную в нижней (смартфон) или верхней правой (планшет) части экрана.
В верхней части экрана вы видите процент заряда батареи и текущее время.

Назначение пунктов основного меню:

1. Install – установка прошивок и дополнений

Это один из самых часто используемых пунктов TWRP Recovery.
С его помощью можно устанавливать, как официальные, так и неофициальные (кастомные) прошивки, устанавливать ядра, темы и прочее программное обеспечение, которое должно находиться в zip файле, размещенном на встроенной памяти вашего устройства.
После выбора файла вы попадаете в следующее меню, где можете выбрать добавление следующего файла в очередь прошивки (кнопка Add More Zips ) или начать прошивку выбранного файла с помощью слайдера, расположенного в нижней части экрана.

С помощью опции Zip Signature verifications включается режим проверки подписи zip файла.
С помощью опции Force MD5 check on all Zips можно включить проверку контрольных сумм MD5 для всех устанавливаемых на устройство zip файлов.

2. Wipe – очистка и сброс к заводским настройкам

С помощью этой опции вы можете очистить такие разделы как кэш (Cache ), Dalvilк Cache, System , а также сделать сброс к заводским настройкам – Factory Reset , после которого ваш телефон или планшет вернется к тому состоянию, в котором он продавался в магазине.
Также можно очистить внешнюю карту памяти – External Storage и внутреннюю память – Internal Storage , очистить системную папку android_secure и сделать очистку статистики использования батареи – Wipe Battery Stats .
Как и в остальных пунктах меню, подтвердить старт той или иной операции вы должны будете с помощью слайдера, который появляется в нижней части экрана. Отменить операцию можно с помощью кнопки «Назад».

3. Backup – создание резервной копии системы

Еще один из самых важных пунктов TWRP. С помощью него, вы можете сделать полную копию всей системы планшета, вместе с данными и приложениями, имеющимися в его внутренней памяти - так называемый Nandroid Backup.
Здесь вы можете:

  • Выбрать разделы, которые нужно сохранить: System, Data, Boot, Recovery, Cache, Uboot, NVram.
  • Узнать объем свободного места на носителе: Free Space.
  • Включить сжатие резервной копии: Enable Compression.
  • Отключить создание файлов с контрольными суммами резервных копий: Skip MD5 generation during backup.
  • Выбрать карту памяти для хранения резервных копий: Use external SD.
  • Выбрать внутреннюю память устройства для хранения резервных копий: Use internal storage.
  • Задать имя файла резервной копии - кнопка Set Backup name.
  • Персчитать размеры разделов - кнопка Refresh Sizes.

Как обычно, подтвердите свой выбор с помощью слайдера, и TWRP начнет процесс создания резервной копии:

После этого вы можете перезагрузить планшет или телефон – кнопка Reboot System , а также вернуться назад или в главное меню TWRP с помощью соответствующих кнопок.

4. Restore – восстановление системы из ранее сделанной резервной копии

Здесь вы можете:

  • Выбрать карту памяти для поиска резервных копий: Use external SD
  • Выбрать внутреннюю память устройства для поиска резервных копий: Use internal storage

Имена резервных копий состоят из даты и времени их создания. Вы можете сортировать файлы по:

Возрастанию «Sort Ascending » имени, даты и размера
Убыванию «Sort Descending » имени, даты и размера

После выбора резервной копии у вас будет возможность:

  • Выбрать разделы (System, Data, Boot, Recovery, Cache, Uboot, NVram), которые вы хотите восстановить,
  • Переименовать резервную копию «Rename Backup »
  • Удалить резервную копию «Delete Backup »
  • Включить проверку контрольных сумм MD5 файлов резервных копий

Начать восстановление можно подтвердив свой выбор с помощью слайдера.

5. Mount – монтирование отдельных разделов, их форматирование и монтирование устройства в качестве USB накопителя при подключении к компьютеру

Монтирование, делает разделы или папки доступными для использования.
Пункты этого меню означают следующее:

  • Mount / Unmount System – монтирование или отмонтирование системного раздела.
  • Mount / Unmount Data – монтирование или отмонтирование раздела с данными.
  • Mount / Unmount Cache - монтирование или отмонтирование раздела с кешем.
  • Mount / Unmoun Sdcard - монтирование или отмонтирование карты памяти
  • Mount / Unmoun Internal – монтирование или отмонтирование внутренней памяти.

Кнопка «Mount USB storage » – подключение планшета или телефона к компьютеру в режиме съёмного накопителя.
При этом вы можете выбрать для монтирования:

  • Карту памяти: Use external SD
  • Внутреннюю память: Use internal storage

6. Settings – настройки TWRP

Здесь вы можете задать опции по умолчанию, которые TWRP Recovery будет использовать по умолчанию при создании и восстановлении резервных копий, а также при установке zip файлов:

  • Zip file signature verification : проверка подписи zip файла.
  • Force MD5 check for all zips : проверка контрольных сумм для всех zip файлов.
  • Use rm –rf instead of formatting : удаление файлов вместо форматирования при очистке разделов.
  • Skip MD5 generation during backup : отключить создание контрольных сумм при резервном копировании.
  • Ignore image size errors during backup : игнорировать ошибки размера файлов при резервном копировании.

Кнопка «Time Zone » служит для выбора вашей временной зоны.
Кнопка «Restore Defaults » предназначена для сброса настроек к настройкам по умолчанию.

7. Advanced – дополнительные функции TWRP

Это меню состоит из следующих пунктов:

  • Copy Log to SD – копирование лога операций в файл на карту памяти.
  • Fix Permissions – исправить права доступа к файлам и разделам. Этот пункт используется для того, чтобы вернуть к заводскому состоянию права доступа к системным файлам и папкам, которые могут быть изменены некорректной работой некоторых root приложений, что может привести к зависаниям и сбоям в работе планшета или телефона.
  • Partition SD Card – создание разделов на карте памяти. Этот пункт используется для создания /sd-ext и /swap разделов на карте памяти. Раздел /sd-ext может использоваться некоторыми прошивками при нехватке внутренней памяти устройства, например для расширения раздела /data. Раздел /swap обычно используется для ускорения работы Android устройства.
  • File Manager – менеджер файлов. Здесь вы можете выбрать файл и выполнить над ним следующие операции:

Copy - копировать файл.
Move – перемещать файл.
Chmod 755 – задать права доступа 755 (как у всех системных файлов).
Chmod – задать любые другие права доступа.
Delete – удалить файл.
Rename File – переименовать файл.

  • Terminal Command – выполнить в выбранной директории команду терминала в стиле команд adb .

Также в разделе Advanced могут размещаться и другие кнопки, которые может добавлять разработчик при сборке рекавери из исходных кодов для конкретного устройства.

Здесь вы можете выбрать следующее:

System – полностью перезагрузить планшет или телефон.
Recovery – перезагрузить рекавери.
Power Off – выключить устройство.

Количество и содержимое скрытых разделов разнятся от производителя к производителю. Но как правило, на компьютерах с Windows можно найти следующие разделы.

Раздел «Зарезервировано системой»

Windows 7, 8 и 10 создают раздел «Зарезервировано системой», когда вы устанавливаете их. Windows не назначает этому разделу букву, так что обычно его не видно в «Проводнике». Но если вы запускали «Управление разделами» или аналогичную утилиту, то наверняка заметили этот раздел. Зачем он системе?

Раздел «Зарезервировано системой» выполняет две функции.

  • Во-первых, он содержит менеджер и данные системной загрузки. Именно отсюда начинается загрузка системы.
  • Во-вторых, здесь находятся файлы, используемые системной утилитой для шифрования BitLocker. Это необходимо для загрузки системы, если вы решили зашифровать системный раздел.

Раздел «Зарезервировано системой» занимает 100 МБ пространства в Windows 7, 350 МБ в Windows 8 и 500 МБ в Windows 10. Обычно раздел создаётся в течение установки системы и располагается перед основным системным разделом.

Раздел восстановления

Этот раздел содержит образы системы от производителя, необходимые для восстановления системы и возврата к заводским настройкам. Если вы удалите этот раздел, то сделаете невозможным возврат к заводским настройкам в среде восстановления Windows или через утилиты восстановления от производителя.

Разделы производителя

Некоторые производители ноутбуков, например HP и ASUS, создают на своих дисках ещё один дополнительный раздел. Он может содержать драйверы для ноутбука, дополнительное ПО, прошивки для обновления BIOS и прочие системные данные.

Как удалить или скрыть системные разделы

Перед тем как изменять или удалять системные разделы, учтите такие моменты.

  • Этого не следует делать, если ваш компьютер или ноутбук на гарантии.
  • Стоит сделать копию раздела на всякий случай. Например, чтобы сохранить лицензию на систему, приобретённую вместе с ноутбуком.
  • Имейте при себе загрузочный диск с Windows, чтобы переустановить систему, если что-то сломаете.

Как удалить раздел

Если вы всё-таки хотите удалить системные разделы, чтобы или избавиться от предустановленных приложений, которые вам не нужны, это можно сделать несколькими способами.

Во-первых, можно воспользоваться такими программами для управления разделами, как Acronis Disk Director или Paragon Partition Manager . Либо удалить раздел в стандартном «Управлении разделами» Windows.

Во-вторых, можно просто удалить ненужные разделы через командную строку.

Откройте командную строку от имени администратора и введите:

Затем выводим список разделов:

Запомните номер вашего раздела и введите:

select partition номер_раздела

Наконец, вводим:

delete partition override

И ненужный раздел удаляется.

Как скрыть раздел

Обычно системные разделы не отображаются в «Проводнике» и не особенно заметны пользователю. Но если один из системных разделов почему-то стал видимым и раздражает вас, его можно легко скрыть.

Вызовите «Управление разделами». Для этого можно нажать Windows + R и ввести diskmgmt.msc . Затем отыщите нужный раздел, щёлкните по нему правой кнопкой мыши и выберите пункт меню «Изменить букву диска или путь к диску». Затем удалите букву диска.

Теперь ненужный раздел перестанет отображаться в «Проводнике».

Как предотвратить создание зарезервированного раздела

Вы можете предотвратить создание зарезервированного раздела при установке Windows, хотя делать этого и не рекомендуется. Но вы можете установить загрузочные файлы прямо в системный раздел.

  • Начните устанавливать Windows и нажмите Shift + F10, чтобы вызвать окно командной строки.
  • Введите diskpart и нажмите Enter.
  • Создайте новый раздел в неразмеченном пространстве. Например, если вы устанавливаете систему на пустой диск, вы можете просто выбрать его целиком. Или создать отдельный раздел для документов и прочих ваших данных, если хотите.
  • Продолжите установку. Когда вам предложат создать новый раздел для системы, просто выберите тот, что создали в предыдущем пункте.

Так вы уместите и загрузочные файлы, и систему в один раздел. Правда, вы не сможете пользоваться BitLocker. Зато уменьшите количество разделов, занимаемых системой. Это может быть полезно, если вы устанавливаете Windows второй системой и не хотите, чтобы она плодила разделы.

Начнем с того, что тебе нужен Linux. В Windows ты сможешь только разобрать прошивку, но собрать обратно уже не получится по чисто техническим причинам. Теперь о прошивке. Обычно они распространяются в виде ZIP-архивов, прошиваемых через кастомные рекавери. Именно один из них нам и понадобится для опытов. Начинать путь ромодела я рекомендую с какой-нибудь максимально приближенной к AOSP кастомной прошивки, потому что в ней зачастую проще разобраться, чем в стоке.

  1. Распаковываем архив с прошивкой в любую папку.
  2. Качаем скрипт по ссылке и разархивируем в любую папку.
  3. Запускаем файл ext (если будет ругаться на отсутствие Java, просто пропусти, нажав y ; Java нужна только для запаковки).
  4. Теперь выбираем распаковку, нажав кнопку 1, а затем Enter.
  5. Новая папка с именем extract_* появится рядом с файлом ext и папкой tools . Копируем в нее файлы system.new.dat и system.transfer.list .
  6. После копирования файлов нажимаем Enter и ждем. Через некоторое время нужно будет опять нажать Enter, ввести пароль администратора и еще раз тапнуть Enter.
  7. Готово. Содержимое system в папке extract_*/output .

Ручной способ

Распаковываем архив с прошивкой в любую папку (например, в rom):

$ mkdir ~/rom $ unzip путь_до_архива -d ~/rom/

Скачиваем нужные нам инструменты в эту папку:

$ cd ~/rom $ wget https://github.com/xpirt/sdat2img/raw/master/sdat2img.py

Запускаем скрипт:

$ chmod +x sdat2img.py $ ./sdat2img.py system.transfer.list system.new.dat system.img

Он преобразует файл system.new.dat в raw-образ с именем system.img . Монтируем образ к подпапке mnt:

$ mkdir mnt $ sudo mount -t ext4 -o loop system.img ~/rom/mnt

Структура каталогов Android

После распаковки system появится следующая каталоговая структура:

  • app - предустановленные приложения со стандартными привилегиями;
  • priv-app - предустановленные приложения с повышенными привилегиями, в том числе некоторые компоненты системы;
  • bin - бинарные файлы формата ELF, аналог каталогов /bin и /usr/bin в Linux. Содержит различные системные компоненты, используемые более высокоуровневыми компонентами системы;
  • etc - файлы настроек. Полный аналог /etc в Linux, используемый, однако, только теми самыми системными компонентами. Приложения Android хранят индивидуальные настройки в каталогах /data/data/ ;
  • fonts - шрифты. По умолчанию содержит только фирменные шрифты Roboto;
  • framework - библиотеки Java-классов, используемых системой и приложениями. Тут же лежит файл framework-res.apk , содержащий полное описание интерфейса операционной системы, включая все графические файлы;
  • lib и lib64 - Linux-библиотеки, используемые низкоуровневыми компонентами системы. Аналог каталогов /lib и /usr/lib в Linux, включая такие стандартные библиотеки, как libc, libz, libssl. На устройствах с архитектурой ARMv7 и ниже каталог lib64 будет отсутствовать;
  • media - медиафайлы: рингтоны, звуки уведомлений, звуки интерфейса и анимация загрузки ОС;
  • tts - файлы, необходимые синтезатору речи;
  • usr - каталог, который обычно содержит файлы, необходимые для работы приложений из каталога bin. По сути, аналог /usr/share ;
  • vendor - файлы, поставляемые производителем устройства. Обычно содержит бинарный firmware для различных железных компонентов, например модуля Wi-Fi;
  • xbin - необязательный каталог; кастомные прошивки используют его для хранения таких вещей, как интерпретатор bash, SSH, PowerTOP, BusyBox, и других полезных инструментов;
  • build.prop - файл, содержащий информацию о сборке, а также различные низкоуровневые настройки;
  • addon.d - содержит скрипты, запускаемые после установки прошивки. Сюда же GApps прописывают свой скрипт, благодаря которому возрождаются после переустановки прошивки.

Ознакомившись с базовой структурой Android, начнем вносить изменения.

Удаляем и добавляем приложения

Все предустановленные программы можно найти в двух папках:

  • /system/app/;
  • /system/priv-app/.

Друг от друга они отличаются привилегиями доступа. Если программы из app имеют такие же полномочия, как сторонние программы (например, установленные из Play Store), то приложения из priv-app могут использовать привилегированные API (права privileged). Подробнее об этом можно узнать из .

Для предустановки приложения в прошивку просто кинь ее APK-файл в /system/app/ . Можно, конечно, создать отдельную папку, но в нашем случае в этом нет смысла, потому что папка служит для хранения библиотек и odex-файлов, которых у нас попросту нет. Для удаления просто удали папку с ним.

Можно пойти дальше и поменять стоковые приложения на аналоги. К примеру, для замены календаря удаляем папку Calendar и копируем в /system/app наш любимый com.rpagyc.simplecalendar.apk . А можно и не копировать. Тогда прошивка будет без календаря.

Главное, помни: стоковые программы могут быть связаны между собой. Поэтому удаление одной проги вполне может привести к полной неработоспособности другой (к примеру, CalendarProvider и Calendar: удалив первый, ты сделаешь неработоспособным не только стоковый, но и любой другой календарь). К счастью, в чистых AOSP-прошивках взаимосвязей не так много.

Меняем анимацию загрузки

Анимация хранится в виде PNG-картинок, упакованных в архив /system/media/bootanimation.zip без сжатия. Внутри архива находятся:

  • desc.txt - файл, описывающий анимацию;
  • part0 - папка с файлами анимаций, которые воспроизводятся первыми;
  • part1 - папка с файлами анимаций, которые воспроизводятся вторыми;
  • part? - крайняя папка, изображения с которой воспроизводятся в конце.

Файл desc.txt может содержать нечто вроде

1920 1080 60 p 1 0 part0 p 0 0 part1

Назначение этих строк интуитивно понятно: 1920 × 1080 - разрешение картинки, 60 - число кадров в секунду. Part0 и part1 указывают на папки, из которых будет воспроизводиться анимация, и последовательность воспроизведения. Вообще, может быть как одна часть, так и несколько (три и больше).

Изображения, находящиеся в папках part, пронумерованы пятью цифрами в порядке воспроизведения: 00000.png , 00001.png , 00002.png … Эти изображения можно поменять на свои, тем самым создав оригинальную анимацию. А можно просто удалить файл bootanimation.zip . Тогда девайс будет показывать анимацию из стандартного Android. Или воспользоваться уже готовой коллекцией анимаций на 4PDA .

Изменяем звуковое оформление

Фактически все звуки, которые воспроизводит система, хранятся в папке /system/media/audio . Внутри нее ты найдешь следующие папки:

  • alarms - мелодии будильника;
  • notifications - звуки уведомлений;
  • ringtones - мелодии звонка;
  • ui - системные звуки, например низкий заряд батареи, фокусировка камеры, выбор элементов интерфейса.

В alarms, notifications, ringtones можно накидать сколько угодно любых мелодий. Взять их можно, например, здесь:

  • стандартные мелодии из разных телефонов и смартфонов Nokia ;

И маленький лайфхак: удаление файлов из папки ui приведет не к сбоям и ошибкам, а к исчезновению системных звуков. Поэтому ты можешь легко отключить звук создания снимка с камеры, снятия скриншота, просто потерев содержащие эти звуки файлы (их имена интуитивно понятны).

Добавляем шрифты

Шрифты хранятся в fonts . Найти архивы с файлами шрифтов можно на 4PDA и XDA . Для установки достаточно скопировать с заменой ttf-файлы из архива в папку fonts .

Меняем системные настройки (build.prop)

В образе system есть интересный файлик build.prop , содержащий множество полезной информации о железе устройства и настройках, устанавливаемых по умолчанию, для различных стоковых приложений. Справедливости ради замечу, что это не всегда так. Например, в Gigaset ME и ME Pro build.prop разделен на две части. В одной части содержатся настройки для Gigaset ME, а для ME Pro некоторые строки продублированы, но ключи (название смартфона и так далее) в них другие. Это было сделано, чтобы обеспечить более-менее корректную работоспособность одной и той же прошивки на разных аппаратах.


Build.prop содержит (или может содержать) огромное количество настроек. Некоторые из них ничего не меняют, некоторые улучшают одно за счет ухудшения другого, но есть те, которые действительно полезны:

  • ro.product.model и ro.product.manufacturer - модель смартфона и имя производителя. С помощью замены этих строк можно заставить Play Store думать, будто у тебя другой смартфон, что откроет доступ к большему количеству софта. Для всяких малоизвестных китайских смартфонов эти строчки могут стать спасительными;
  • hw.qemu.mainkeys - принимает только два значения: 0 - показать наэкранные клавиши навигации, 1 - не показывать кнопки. Отсутствие строки соответствует 0;
  • debug.sf.nobootanimation - значение 1 отключает анимацию загрузки, что немного поднимает ее скорость. Установка 0 или удаление строки возвращает анимацию на место;
  • ro.telephony.default_network - говорит системе, в какой режим должна быть переключена мобильная сеть при загрузке;
  • ro.sf.lcd_density - DPI дисплея, наиболее точное значение для дисплея можно посчитать через удобный сайт . Но никто не запрещает поставить и большее или меньшее значение по своему вкусу: более высокие значения делают элементы интерфейса крупнее, низкие - меньше;
  • ro.config.vc_call_vol_steps - количество шагов громкости во время разговора (по умолчанию 8);
  • ro.config.media_vol_steps - количество шагов громкости мультимедиа (по умолчанию 15).

Внедряем в прошивку Google Apps

Почти всегда кастомные прошивки поставляются без сервисов Google и магазина приложений. Разработчики предлагают нам установить их отдельно с помощью пакета GApps. Однако его можно интегрировать прямо в прошивку.

Для начала необходимо скачать пакет GApps. Я рекомендую брать архивы Open GApps . Выбираешь версию Android, архитектуру процессора и вариант комплектации (Pico, Nano, Stock…), который определяет, сколько различных приложений Google содержит архив. Я рекомендую скачать версию Pico. Она содержит только Play Store и набор необходимых для его работы библиотек.

Интеграция GApps в прошивку выполняется так:

  1. Распаковываем ZIP-архив GApps с помощью любого архиватора.
  2. Переходим в папку Core.
  3. Видим множество архивов с расширением.tar.lz . Извлекаем с помощью lzip.
  4. После распаковки копируем файлы из папок в соответствующие папки в system. Что куда кидать, нетрудно догадаться по структуре каталогов в архиве. Например, configupdater (со скриншота) нужно кидать в папку priv-app .
  5. Переходим в папку GApps (находится рядом с Core) и проделываем пункты 3 и 4 для файлов в ней.
  6. Все, мы интегрировали GApps в нашу прошивку!

Свободное место

Необходимо понимать, что место для установки прошивок ограниченно. Нельзя установить прошивку, размер которой перевешивает размер раздела system устройства. Посмотреть его значение можно, используя :

$ adb shell df /system

Второй вариант: поставить на устройство терминал и набрать команду

$ df /system

Размер раздела в байтах можно узнать, установив на смартфон BusyBox и выполнив в терминале команду

$ busybox df -B 1 /system

Или то же самое с помощью ADB:

$ adb shell busybox df -B 1 /system

Место, занимаемое прошивкой, будет приблизительно равно размеру system в распакованном виде. Вообще, при создании прошивки необходимо учитывать, что юзер также может прошить поверх нее различные модификации (SuperSU, Xposed) или перенести приложения в раздел system. Например, минимальный пакет приложений Google (Pico) требует минимум 150 Мбайт дополнительного пространства для установки.

При необходимости размер файла прошивки можно уменьшить, удалив не только ненужные программы из /system/app (/system/priv-app) и звуки вызова из system/media/audio и bootanimation.zip , но и:

  • /system/tts/lang_pico - языки примитивного голосового движка Pico TTS, голосовой движок Google это не затронет;
  • /system/usr/srec/config/ - офлайн-языки. Можно будет скачать потом онлайн, если понадобится.

Сборка

После внесения изменений нужно собрать все обратно. Сначала запакуем раздел system в system.new.dat . Скачиваем нужные нам инструменты:

$ wget https://github.com/xpirt/img2sdat/raw/master/img2sdat.py $ wget https://github.com/xpirt/img2sdat/raw/master/blockimgdiff.py $ wget https://github.com/xpirt/img2sdat/raw/master/common.py $ wget https://github.com/xpirt/img2sdat/raw/master/rangelib.py $ wget https://github.com/xpirt/img2sdat/raw/master/sparse_img.py $ sudo apt-get install android-tools-fsutils

Преобразовываем нашу папку обратно в RAW-образ. Назовем его system_new.img:

$ sudo make_ext4fs -T 0 -S file_contexts -l 1073741824 -a system system_new.img output/

1073741824 меняем на размер раздела system в байтах. Желательно даже сделать его чуть меньше. Делаем из RAW-образа sparse-образ:

$ img2simg system_new.img system_snew.img

Преобразуем наш образ в system.transfer.list и system.new.dat , которые и нужно кидать в архив с прошивкой, но сначала удалим старые файлы:

$ rm -rf system.transfer.list $ rm -rf system.new.dat $ rm -rf system.patch.dat $ chmod +x img2sdat.py $ ./img2sdat.py system_snew.img

Отделим файлы прошивки от лишней шелухи (файлов, которые мы загружали для работы. Для этого удобно пользоваться архивом с прошивкой). Удалили? Теперь нужно запаковать прошивку в ZIP-архив (любым архиватором).

Осталось подписать архив. Сделать это можно как на самом Android с помощью ZipSigner , так и на ПК (потребуется установленная Java):

$ wget https://github.com/appium/sign/raw/master/dist/sign.jar $ java -jar файл.zip

Подводные камни

Во время сборки system.new.dat ты можешь столкнуться с несколькими проблемами, вызванными постоянными изменениями в механизмах формирования прошивок Android. Описанный выше способ должен хорошо сработать в случае основанной на Android 5.1 прошивки, в более новых могут возникнуть сложности, так что потребуется использовать другие версии инструментов сборки. К сожалению, мы не можем описать все нюансы сборки, поэтому, возможно, придется погуглить.

Установка

Для установки кастомной прошивки необходим кастомный рекавери TWRP, позволяющий устанавливать неподписанные или подписанные тестовым ключом прошивки (именно такую мы создали). В журнале мы неоднократно описывали процесс его установки, да и в ветках форума, посвященных твоему устройству, обычно есть достаточно информации для того, чтобы это сделать.

TWRP

Выводы

Эта статья описывает лишь верхушку огромного айсберга под названием «модификация прошивок». «Серьезные» прошивки не только дополняют ядро и саму прошивку со стоковыми приложениями множеством функций (которые зачастую вырваны из других ядер и прошивок), организовывая или даже меняя принципы их взаимодействия, но и вполне могут кардинально менять принципы работы ОС. Правда, такая поделка - это уже не Android, а отдельная ОС, даже если Play-сервисы получится туда поставить (кстати, такие действия, мягко говоря, не поощряются Google). Ну и не забываем: все оболочки от производителей - TouchWiz, ZenUI, HTC Sense и так далее - всего лишь обычные кастомы, максимально привязанные к железу устройства и друг к другу.

просмотров