Исправление selinux контекста twrp что это
What does TWRP «Fix Contexts» do?
In my blu_spark TWRP, I have an option (under «Advanced») named ‘Fix Contexts’.
When I press it, it says:
Note: Fixing contexts is rarely needed
Fixing SELinux Contexts may cause your device to not boot properly.
What does this option do, and when would I want to use it?
1 Answer 1
SELinux is a security mechanism which stops unauthorized access of processes to other processes, actions and filesystems (UNIX’s «file» includes all regular files, directories, block devices, character devices, sockets etc.). Every process, file, directory and action is labeled with an SELinux context, then a policy is defined what a context can do to other context. Policy is loaded by kernel or init on every boot, and anything not defined in policy is denied by kernel. For more details see this answer.
Fix Contexts in TWRP fixes filesystem context labels from a saved /file_contexts file. But if this file is for different device or contains wrong or outdated or incomplete contexts, device may get into bootloop. Better avoid using «Fix Contexts», instead use chcon or restorecon manually if necessary. Or replace file_contexts in recovery ramdisk with an updated file from your current ROM.
EXAMPLE:
I have around 40000 policy rules on my device, one is:
Out of 2000+ filesystem contexts, one is:
SELinux context of init process:
SELinux context of directory containing system settings:
DAC vs MAC:
SELinux is an implementation of Mandatory Access Control (MAC). Discretionary Access Control (DAC) achieves the same goal in less aggressive way by assigning UIDs/GIDs to processes and files:
Permission mode and ownership explains that only processes running with UID or GID 1000 ( system ) will be able to read and write to the directory and normal apps (with UIDs/GIDs in range 10000 to 19999 ) are not allowed to read system settings.
A drawback of DAC is that it’s allowed by default and has a Super User (root user with UID 0 is allowed to do anything). While MAC is denied by default and there is no Super Context, so it’s less prone to exploits. Root user’s authorities are also divided in capabilities to follow the principle of least privileges. Combined together, both DAC and MAC provide a more robust isolation, protection and sandboxing.
SELinux – описание и особенности работы с системой. Часть 1
О SELinux на Хабре уже писали, однако, не так много опубликовано подробных мануалов по данной системе. Сегодня мы публикуем именно такой, подробный мануал по SELinux, начиная от информации по системе, и заканчивая гибкой настройкой политик.
Для того, чтобы не превращать пост в «простыню», сложную для понимания, мы решили разделить мануал на две части. Первая будет рассказывать о самой системе, и некоторых ее особенностях. Вторая – о настройке политик. Сейчас публикуем первую часть, чуть позже будет опубликована и вторая часть.
1. Введение
SELinux (SELinux) — это система принудительного контроля доступа, реализованная на уровне ядра. Впервые эта система появилась в четвертой версии CentOS, а в 5 и 6 версии реализация была существенно дополнена и улучшена. Эти улучшения позволили SELinux стать универсальной системой, способной эффективно решать массу актуальных задач. Стоит помнить, что классическая система прав Unix применяется первой, и управление перейдет к SELinux только в том случае, если эта первичная проверка будет успешно пройдена.
1.1 Некоторые актуальные задачи.
Для того, чтобы понять, в чем состоит практическая ценность SELinux, рассмотрим несколько примеров, когда стандартная система контроля доступа недостаточна. Если SELinux отключен, то вам доступна только классическая дискреционная система контроля доступа, которая включает в себя DAC (избирательное управление доступом) или ACL(списки контроля доступа). То есть речь идет о манипулировании правами на запись, чтение и исполнение на уровне пользователей и групп пользователей, чего в некоторых случаях может быть совершенно недостаточно. Например:
— Администратор не может в полной мере контролировать действия пользователя. Например, пользователь вполне способен дать всем остальным пользователям права на чтение собственных конфиденциальных файлов, таких как ключи SSH.
— Процессы могут изменять настройки безопасности. Например, файлы, содержащие в себе почту пользователя должны быть доступны для чтения только одному конкретному пользователю, но почтовый клиент вполне может изменить права доступа так, что эти файлы будут доступны для чтения всем.
— Процессы наследуют права пользователя, который их запустил. Например, зараженная трояном версия браузера Firefox в состоянии читать SSH-ключи пользователя, хотя не имеет для того никаких оснований.
По сути, в традиционной модели избирательного управления доступом (DAC), хорошо реализованы только два уровня доступа — пользователь и суперпользователь. Нет простого метода, который позволил бы устанавливать для каждого пользователя необходимый минимум привилегий.
Конечно, есть множество методов обхода этих проблем в рамках классической модели безопасности, но ни один из них не является универсальным.
1.1.1 Основные термины, использующиеся в SELinux:
Домен — список действий, которые может выполнять процесс. Обычно в качестве домена определяется минимально-возможный набор действий, при помощи которых процесс способен функционировать. Таким образом, если процесс дискредитирован, злоумышленнику не удастся нанести большого вреда.
Роль — список доменов, которые могут быть применены. Если какого-то домена нет в списке доменов какой-то роли, то действия из этого домена не могут быть применены.
Тип — набор действий, которые допустимы по отношения к объекту. Тип отличается от домена тем, что он может применяться к пайпам, каталогам и файлам, в то время как домен применяется к процессам.
Контекст безопасности — все атрибуты SELinux — роли, типы и домены.
1.2 Решение проблем традиционной модели безопасности.
SELinux следует модели минимально необходимых привилегий для каждого сервиса, пользователя и программы намного более строго. По умолчанию установлен «запретительный режим», когда каждый элемент системы имеет только те права, которые жизненно необходимы ему для функционирования. Если же пользователь, программа или сервис пытаются изменить файл или получить доступ к ресурсу, который явно не необходим для решения их, то им будет просто отказано в доступе, а такая попытка будет зарегистрирована в журнале.
SELinux реализована на уровне ядра, так что прикладные приложения могут совсем ничего не знать о версии этой системы принудительного контроля доступа, особенностях её работы и т.д. В случае грамотной настройки, SELinux никак не повлияет на функционирование сторонних программ и сервисов. Хотя, если приложение способно перехватывать сообщения об ошибках этой системы контроля доступа, удобство пользования таки приложением существенно возрастает. Ведь в случае попытки доступа к защищенному ресурсу или файлу, SELinux передает в основное приложение ошибку из семейства «access denied». Но лишь немногие приложения используют получаемые от SELinux коды возврата системных вызовов.
Вот несколько примеров использования SELinux, которые позволяют увидеть, каким образом можно увеличить степень безопасности всей системы.
— Создание и настройка списка программ, которые могут читать ssh-ключи.
— Предотвращение несанкционированного доступа к данным через mail-клиент.
— Настройка браузера таким образом, чтобы он мог читать в домашней папки пользователя только необходимые для функционирования файлы и папки.
2. Режимы работы SELinux
SELinux имеет три основных режим работы, при этом по умолчанию установлен режим Enforcing. Это довольно жесткий режим, и в случае необходимости он может быть изменен на более удобный для конечного пользователя.
Enforcing: Режим по-умолчанию. При выборе этого режима все действия, которые каким-то образом нарушают текущую политику безопасности, будут блокироваться, а попытка нарушения будет зафиксирована в журнале.
Permissive: В случае использования этого режима, информация о всех действиях, которые нарушают текущую политику безопасности, будут зафиксированы в журнале, но сами действия не будут заблокированы.
Disabled: Полное отключение системы принудительного контроля доступа.
Вы можете посмотреть текущий режим и другие настройки SELinux (а в случае необходимости и изменить его) при помощи специального GUI-инструмента, доступного в меню «Администрирование» (system-config-selinux). Если же вы привыкли работать в консоли, то можете посмотреть текущий статус командой sestatus.
Также вы можете узнать статус SELinux при помощи команды getenforce.
Команда «setenforce» позволяет быстро переключаться между режимами Enforcing и Permissive, изменения вступают в силу без перезагрузки. Но если вы включаете или отключаете SELinux, требуется перезагрузка, ведь нужно заново устанавливать метки безопасности в файловой системе.
Для того, чтобы выбрать режим по-умолчанию, который будет применяться при каждой загрузке системы, задайте значение строки ‘SELINUX=’ в файле /etc/selinux/config, задав один из режимов — ‘enforcing’, ‘permissive’ или ‘disabled’. Например: ‘SELINUX=permissive’.
3. Политики SELinux
Как отмечалось ранее, SELinux по-умолчанию работает в режиме Enforcing, когда любые действия, кроме разрешенных, автоматически блокируются, каждая программа, пользователь или сервис обладают только теми привилегиями, которые необходимы им для функционирования, но не более того. Это довольно жесткая политика, которая обладает как плюсами — наибольший уровень информационной безопасности, так и минусами — конфигурирование системы в таком режиме сопряжено с большими трудозатратами системных администраторов, к тому же, велик риск того, что пользователи столкнутся с ограничением доступа, если захотят использовать систему хоть сколько-нибудь нетривиальным образом. Такой подход допустим в Enterprise-секторе, но неприемлем на компьютерах конечных пользователей. Многие администраторы просто отключают SELinux на рабочих станциях, чтобы не сталкиваться с подобными проблемами.
Для того, чтобы избежать этого, для ключевых приложений и сервисов, таких как, например, httpd, named, dhcpd, mysqld, определены заранее сконфигурированные целевые политики, которые не позволят получить злоумышленнику доступ к важным данным. Те же приложения, для которых политика не определена, выполняются в домене unconfined_t и не защищаются SELinux. Таким образом, правильно выбранные целевые политики позволяют добиться приемлемого уровня безопасности, не создав при этом для пользователя лишних проблем.
4. Контроль доступа в SELinux
SELinux предоставляет следующие модели управления доступом:
Type Enforcement (TE): основной механизм контроля доступа, используемый в целевых политиках. Позволяет детально, на самом низком уровне управлять разрешениями. Самый гибкий, но и самый трудоемкий для системного администратора механизм.
Role-Based Access Control (RBAC): в этой модели права доступа реализуются в качестве ролей. Ролью называется разрешения на выполнение определенных действий одним или несколькими элементами системы над другими частями системы. По-сути, RBAC является дальнейшим развитием TE.
Multi-Level Security (MLS): многоуровневая модель безопасности, в которой всем объектам системы присваивается определенный уровень доступа. Разрешение или запрет доступа определяется только соотношением этих уровней.
Все процессы и файлы в рамках SELinux имеют контекст безопасности.
Давайте посмотрим на контекст на практике, подробно рассмотрев стартовую страницу веб-сервера Apache, находящуюся по адресу /var/www/html/index.html
В дополнение к стандартным правам доступа к файлу, мы можем видеть контекст безопасности SELinux: system_u: object_r: httpd_sys_content_t.
Контекст базируется на user:role:type:mls, но поля user:role:type отображаются, в то время как поле mls скрыто. Также мы можем видеть целевую политику, в данном случае httpd_sys_content_t.
Теперь рассмотрим контекст безопасности SELinux для процесса ‘httpd’ (веб-сервер Apache):
Как мы видим, этот процесс запущен на домене httpd_t.
Ну а теперь давайте посмотрим на контекст безопасности файла в нашем домашнем каталоге:
Мы видим, что файл имеет тип user_home_t, этот тип присваивается по умолчанию всем файлам в домашнем каталоге.
Доступ разрешен только между элементами с одинаковым типом, именно поэтому веб-сервер Apache может без проблем читать файл /var/www/html/index.html, который имеет тип httpd_sys_content_t. В то же самое время, так как Apache запущен на домене httpd_t и не имеет заполненных полей userid:username, он не может получить доступ к файлу home/username/myfile.txt, хотя этот файл доступен для чтения процессам, для которых не определена целевая политика. Таким образом, если веб-сервер Apache будет взломан, то злоумышленник не сможет получить доступ к файлам или запускать процессы, которые не находятся в домене httpd_t.
5. Устранение проблем SELinux
Рано или поздно происходит ситуация, когда вы сталкиваетесь с ситуацией, когда SELinux запрещает вам доступ к чему-то. Есть несколько основных причин отказа доступа:
— Неправильно маркированный файл.
— Процесс работает в неправильном контексте
— Ошибка в политике. Процесс требует доступ к файлу, который не был учтен при создании политики.
— Попытка вторжения.
5.1 Изменение меток контекста безопасности файлов.
Команда «chcon» позволяет изменяет контекст SELinux для файлов или каталогов точно таким же образом, как команды «chown» и «chmod» позволяют менять владельца файла или права доступа к нему в рамках стандартной системы контроля доступа.
Рассмотрим несколько примеров.
Предположим, что в системе установлен веб-сервер Apache и нам необходимо изменить папку, в которой хранятся сайты (по-умолчанию это /var/www/html/) на, допустим, /html/ и создать в этом каталоге файл index.html.
Выше мы видим, что и каталог /html, и файл /html/index.html в рамках контекста безопасности имеют тип default_t. Это означает, что если мы запустим Apache и попробуем начать работать с этим каталогом или файлом, то SELinux откажет нам в доступе. И это будет абсолютно правильно, ведь правильный контекст безопасности для файлов, взаимодействующих с Apache, это httpd_sys_content_t.
Изменим контекст и проверим правильно ли все сделано:
Подобные изменения контекста безопасности будут сохраняться между перезагрузками, однако, при изменении меток файловых систем, изменения пропадут. В процессе обслуживания и эксплуатации, подобное не редкость. Правильным решением в такой ситуации будет (после тестирования, конечно) создать дополнительное правило, после чего объеденить его с местными локальными правилами. Таким образом, оно будет иметь более высокий приоритет, чем базовые правила.
Для того, чтобы SELinux корректно работал даже после изменения меток файловых систем, мы можем использовать как инструменты для управления SELinux c GUI-интерфейсом, так и консольную утилиту semanage:
В примере выше мы присвоили контекст httpd_sys_content_t всем файлам, находящимся в катологе /html.
5.2 Восстановление контекста безопасности SELinux.
Команда «restorecon» позволяет изменить контекст безопасности на тот, который был присвоен по-умолчанию.
Снова используем в качестве примера веб-сервер Apache. Предположим, что пользователь отредактировал в своем домашнем каталоге копию файла index.html и переместил (командой mv) его в каталог, в котором храняться сайты (/var/www/html).
Следует обратить внимание, что при копировании (команда cp) контекст безопасности файла будет совпадать с контекстом каталога назначения, при перемещении же, контекст безопасности будет совпадать с контекстом источника. Конечно, мы могли бы использовать команду chcon для изменения контекста безопасности, но так как перемещенные файлы находятся сейчас в каталоге /var/www/html, мы можем просто восстановить параметры контекста для всех файлов, находящихся в этом каталоге.
Для того, чтобы восстановить контекст только для файла index.html, мы можем применить команду:
Если же мы хотим рекурсивно обойти весь каталог и изменить контекст для всех содержащихся в нем файлов, используем следующую команду:
5.3 Изменение меток для всей файловой системы.
Иногда бывает необходимо заново устанавливать метки безопасности во всей файловой системе. Чаще всего такую операцию производят при повторном включении SELinux, после того, как система была на некоторое время отключена. Также это бывает нужно, если мы меняем тип управления политиками на strict (в этом случае все процессы работают в своих специальных доменах, в домене unconfined_t не может работать никто).
Для того, чтобы автоматически переразметить файловую систему при следующей перезагрузке, введите следующие команды:
Иногда автоматическая переразметка не срабатывает (чаще всего в тех случаях, когда дистрибутив с выключенной системой SELinux был обновлен). В таком случае воспользуйтесь следующей командой:
5.4 Предоставление доступа к портам.
Нередко мы хотим, чтобы сервисы, подобные Apache, имели возможность прослушивать нестандартные порты и принимать на них входящие соединения. Базовые политики SELinux позволяют получить доступ только к заранее предопределенным портам, которые жестко связаны с тем или иным сервисом. Допустим, мы хотим, чтобы Apache прослушивал 81 порт. В таком случае, нам надо добавить правило при помощи команды semanage:
Полный список портов, к которым SELinux предоставляет доступ, можно просмотреть следующим образом:
В следующей, второй части мануала, мы покажем возможность гибкой настройки политик системы.
Руководство для начинающих по SELinux
Перевод статьи подготовлен для студентов курса «Безопасность Linux»
SELinux или Security Enhanced Linux — это улучшенный механизм управления доступом, разработанный Агентством национальной безопасности США (АНБ США) для предотвращения злонамеренных вторжений. Он реализует принудительную (или мандатную) модель управления доступом (англ. Mandatory Access Control, MAC) поверх существующей дискреционной (или избирательной) модели (англ. Discretionary Access Control, DAC), то есть разрешений на чтение, запись, выполнение.
У SELinux есть три режима:
По умолчанию настройки находятся в /etc/selinux/config
Изменение режимов SELinux
Чтобы узнать текущий режим запустите
Для изменения режима на permissive запустите следующую команду
или, для изменения режима с permissive на enforcing, выполните
Если вам нужно полностью отключить SELinux, то это можно сделать только через файл конфигурации
Для отключения измените параметр SELINUX следующим образом:
Настройка SELinux
Каждый файл и процесс помечается контекстом SELinux, в котором содержится дополнительная информация, такая как пользователь, роль, тип и т.д. Если вы впервые включаете SELinux, то сначала нужно настроить контекст и метки. Процесс назначения меток и контекста известен как маркировка. Чтобы начать маркировку, в файле конфигурации изменим режим на permissive.
После установки режима permissive, создадим в корне пустой скрытый файл с именем autorelabel
и перезагрузим компьютер
Примечание: мы используем режим permissive для маркировки, поскольку использование режима enforcing может привести к краху системы во время перезагрузки.
Не беспокойтесь, если загрузка застрянет на каком-то файле, маркировка занимает некоторое время. После завершения маркировки и загрузки вашей системы вы можете перейти к файлу конфигурации и установить режим enforcing, а также запустить:
Теперь вы успешно включили SELinux на своем компьютере.
Мониторим логи
В результате вы получите список ошибок. Если ошибок в логе не было, то никаких сообщений отображаться не будет.
Настройка политики SELinux
Политика SELinux — это набор правил, которыми руководствуется механизм безопасности SELinux. Политика определяет набор правил для конкретного окружения. Сейчас мы изучим как настраивать политики, чтобы разрешить доступ к запрещенным сервисам.
1. Логические значения (переключатели)
Переключатели (booleans) позволяют изменять части политики во время работы, без необходимости создания новых политик. Они позволяют вносить изменения без перезагрузки или перекомпиляции политик SELinux.
Пример
Предположим, мы хотим предоставить общий доступ к домашнему каталогу пользователя по FTP на чтение и запись, и мы уже расшарили его, но при попытке доступа мы ничего не видим. Это связано с тем, что политика SELinux запрещает FTP-серверу читать и писать в домашнем каталоге пользователя. Нам нужно изменить политику, чтобы FTP-сервер мог обращаться к домашним каталогам. Посмотрим, есть ли для этого какие-либо переключатели, выполнив
Эта команда выдаст список доступных переключателей с их текущим состоянием (включено/on или выключено/off) и описанием. Вы можете уточнить поиск, добавив grep, чтобы найти результаты, относящиеся только с ftp:
и найдете следующее
2. Метки и контекст
Это наиболее распространенный способ реализации политики SELinux. Каждый файл, папка, процесс и порт помечаются контекстом SELinux:
Здесь мы получили httpd_sys_content_t в качестве контекста для html-файлов. Нам нужно установить этот контекст безопасности для нашего текущего каталога, который сейчас имеет следующий контекст:
Альтернативная команда для проверки контекста безопасности файла или каталога:
Мы также будем использовать semanage для изменения контекста, после того как найдем правильный контекст безопасности. Чтобы изменить контекст /home/dan/html, выполните следующие команды:
3. Создание локальных политик
Могут возникнуть ситуации, когда вышеуказанные методы бесполезны для вас, и вы получаете ошибки (avc/denial) в audit.log. Когда такое происходит, то нужно создать локальную политику (Local policy). Все ошибки вы можете найти с помощью audit2why, как было описано выше.
Для устранения ошибок можно создать локальную политику. Например, мы получаем ошибку, связанную с httpd (apache) или smbd (samba), мы grep’аем ошибки и создаем для них политику:
Здесь http_policy и smb_policy — это названия локальных политик, которые мы создали. Теперь нам нужно загрузить эти созданные локальные политики в текущую политику SELinux. Это можно сделать следующим образом:
Наши локальные политики были загружены, и мы не должны больше получать никаких avc или denail в audit.log.
Это была моя попытка помочь вам понять SELinux. Я надеюсь, что после прочтения этой статьи вы будете чувствовать себя с SELinux более комфортно.
Исправление selinux контекста twrp что это
TWRP, как отдельная операционная система. Структура, принципы работы, основные составляющие.
Устройство или ОС, прошивка: Все платформы.
Сразу хочу напомнить, что тема создавалась для людей думающих и способных подвергнуть сомнению информацию, которая тут изложена. Учесть особенности тысяч аппаратов и, уж тем более, расписать это для каждого из них я не в состоянии.
Обращаясь за помощью обязательно приложите recovery.log. Как его получить можно узнать здесь
А вот то, что будет происходить далее уже имеет отличия:
init раздела boot, следуя собственным и приложенным в подгружаемых *.rc файлах инструкциям, монтирует остальные разделы, необходимые для запуска Android OS (/system, /vendor, /data, /modem и т.д.) и запускает сервисы и службы, находящиеся, в основном, в этих разделах. Далее надевает на Linux «шкурку» java и отдает в таком виде под управление пользователю.
init раздела recovery, следуя собственным и приложенным в подгружаемых *.rc файлах инструкциям, проверяет состояние «интересующих» его разделов, а сервисы и служби запускает лишь те, которые сам и содержит. Далее надевает на Linux «шкурку», подобную веб интерфейсу***.
Что имеем в итоге? Высокую степень взаимозаменяемости консольных утилит, таблиц файловых систем, конструкций скриптов и т.д. Функции, созданные для обработки из-под OS Android после небольших правок можно выполнять, находясь в кастомном рекавери и наоборот. Примерно то, что проделывают в теме Инструкции по редактированию системных ресурсов для Android OS мы будем проворачивать здесь с TWRP (только там правится framework, SystemUI.apk, Settings.apk и т.д., мы же будем вносить изменения в «twres», «sbin» и «etc»), добиваться максимально полного контроля над кастомным рекавери, устанавливать/заменять/обновлять/удалять ПО, входящее в его состав.
*будет запускаться ядро из раздела boot или из раздела recovery зависит от сигнала загрузчику, который пользователь может подать из запущенной операционной системы или нажатием соответствующих клавиш при старте загрузчика.
*способы описываю в общих чертах, вскользь и исключительно для общего понимания. Детально и со всеми подробностями процессы описаны в профильных темах, ссылки на которые есть в шапке этой темы. Мы же будем использовать лишь некоторые этапы упомянутых выше действий в совершенно других целях.
*Набор файлов, приведённый выше, крайне примерный! Следует понимать и учитывать особенности архитектур, марок и моделей аппаратов, к которым будете пытаться применять данные наблюдения.
**В сборках TWRP 3.3.1-1 для некоторых устройств уже используется именно mksh. OrangeFOX 10+ использует bash.
Recovery Project %tw_version%
Recovery Project %tw_version%
Recovery Project %tw_version%
показываем текст Recovery Project %tw_version% (значение переменной %tw_version% нам предоставляет бинарник recovery), окрашенный в %header_color% (#555555), используя шрифт и его размер font_l (filename=»RobotoCondensed-Regular.ttf» size=»52″) по координатам в пикселах x=»540″ y=»1590″ поверх всех-привсех объектов placement=»5″.
Начинаем изучение содержимого TWRP. Возьмём интересующий нас образ и распакуем его. Увидим, что появилось две новые папки: «ramdisk» и «split_img».
Для упрощения и согласования информации, изложенной далее, предположим, что образ имеет название «twrp.img». Коротко о содержимом «split_img»:
Здесь расположены примерно* следующие файлы:
twrp.img-base
twrp.img-board
twrp.img-cmdline
twrp.img-hash
twrp.img-headerversion
twrp.img-imgtype
twrp.img-kerneloff
twrp.img-oslevel
twrp.img-osversion
twrp.img-pagesize
twrp.img-ramdisk.cpio.gz **
twrp.img-ramdiskcomp
twrp.img-ramdiskoff
twrp.img-secondoff
twrp.img-tagsoff
twrp.img-zImage
/.android/adbkey.pub в /adb_keys чтобы не отключать ro.secure.
Это ключик для adb. Помогает при unauthorized состоянии. индивидуален для каждого юзера каждого компа на котором запускается adb. Наверняка все видели запрос подтверждения доступа по adb после вайпа или при подключении нового компа к девайсу. Вот в этот момент на девайсе сохраняется публичный ключ adb. Сохраняется он в файл /data/misc/adb/adb_keys (напоминает
Пример добавления в интерфейс TWRP кнопки и программирования её на выполнение shell скрипта уже изложен в теме. Теперь посмотрим, как ещё можно это использовать.
aapt_arm64.zip ( 771.08 КБ )
adbd_arm_mini.zip ( 218.09 КБ )
charger_arm64_mini.zip ( 387.4 КБ )
ntfs_arm64.zip ( 202 КБ )
ntfs_arm.zip ( 220.96 КБ )
charger_arm_mini.zip ( 230.42 КБ )
s_zip_arm.zip ( 369.5 КБ )
s_xmlstarlet_arm.zip ( 665.54 КБ )
s_toybox_arm64.zip ( 594.94 КБ )
s_sqlite3_v4.1_arm.zip ( 316.17 КБ )
s_sqlite3_arm_arm64_x86_x64.zip ( 1.36 МБ )
s_someutils2_arm.zip ( 3.44 МБ )
s_sed_4.4_arm64.zip ( 335.25 КБ )
s_sed_4.4_arm.zip ( 317.8 КБ )
s_parted_arm.zip ( 173.54 КБ )
s_mkfs.f2fs_arm.zip ( 193.63 КБ )
s_mke2fs_arm.zip ( 408.16 КБ )
s_gdisk_arm.zip ( 638.32 КБ )
s_fastboot_arm.zip ( 365.8 КБ )
s_e2fsdroid_arm.zip ( 419.65 КБ )
s_busybox_1.30.1_arm64.zip ( 876.46 КБ )
s_busybox_1.30.1_arm.zip ( 821.16 КБ )
s_bash_5.0_arm.zip ( 605.75 КБ )
s_aapt_x86.zip ( 868.91 КБ )
s_aapt_mini_arm.zip ( 517.22 КБ )
s_7za_arm.zip ( 728.17 КБ )
s_aapt_aapt2_arm.zip ( 1.58 МБ )
s_adb_arm.zip ( 547.35 КБ )
s_ffmpeg_arm_x86.zip ( 27.26 МБ )
s_someutils_arm_arm64_x86_x64.zip ( 57.69 МБ )
s_toybox_arm.zip ( 222.94 КБ )
s_readelf_arm.zip ( 331.15 КБ )
System
System Image
Vendor
Vendor Image
Boot
Recovery
Cache
Data
Data (искл. Storage)
SDcard
Память устройства
Micro SDCard
USB OTG
Android Secure
Dalvik/ART Cache
SD-EXT
Adopted Data
Adopted Storage
Team Win Recovery Project
TWRP %tw_version%
ЦП: %tw_cpu_temp% °C
Батарея: %tw_battery%
Сорт.по имени
Сорт.по дате
Сорт.по размеру
Имя
Дата
Размер
ОСНОВНЫЕ
ОПЦИИ
КОПИИ
ЧАСОВОЙ ПОЯС
ЭКРАН
ВИБРАЦИЯ
ЯЗЫК
Установка
Очистка
Резервирование
Восстановление
Монтирование
Настройки
Дополнительно
Перезагрузка
Файлы
Копировать лог
Выбор типа
Установка Zip
Установка Zip
Установка Img-образа
Установка Img
Выбор файла
Папки
Текущий накопитель: %tw_storage_display_name% (%tw_storage_free_size% МБ)
ADB Sideload
Установка
Выберите накопитель
Выбор накопителя
Очередь
Файлов в очереди: %tw_zip_queue_count% из 10 возможных
Файл %tw_zip_queue_count% из 10:
Эта операция может установить несовместимое ПО на
ваше устройство и сделать загрузку системы невозможной.
Нажмите назад для отмены установки этого zip.
Нажмите назад для очистки очереди.
Папка:
Файл:
Проверка подписи Zip
Интегрировать TWRP после установки
Автоматическая перезагрузка после установки
Опции
Подтвердите установку
Очередь:
Опции:
Подтвердить
Добавить еще Zip
Очистить очередь Zip
Установка Zip %tw_zip_index% из %tw_zip_queue_count%
Установка Zip: %tw_file%
Неудача
Успешно
Установка не удалась
Установка выполнена успешно
Очистка cache/dalvik
Перезагрузка в ОС
Выбор раздела
Выберите раздел для прошивки образа:
Целевой раздел:
Прошивка образа.
Прошивка образа завершена
Очистить Cache & Dalvik?
Очистка Cache & Dalvik.
Очистка Cache & Dalvik завершена
Свайп для очистки
Очистка
Система не установлена! Вы уверены,
что хотите перезагрузить?
что хотите выключить?
Перезагрузка.
Свайп для перезагрузки
Перезагрузка
Установить TWRP App?
Вы хотите установить официальное приложение TWRP?
Оно позволит вам проверять наличие новой версии TWRP.
Предлагать установку TWRP App при его отсутствии
Установить как системное приложение
Установка TWRP приложения.
Свайп для установки TWRP App
Свайп для прошивки
Подтвердить действие
Нажмите назад для отмены.
Отмена
Очистка
Сброс до заводского состояния
Сброс на фабричные
Очистка Data, Cache, и Dalvik
(исключая внутреннее хранилище)
В большинстве случаев очистка
этих разделов достаточна.
Сброс до заводского состояния.
Выборочная очистка
Выборочная очистка
Очистить шифрованные данные?
Форматирование Data.
Свайп для форматирования
Форматировать Data
Сброс до заводского состояния завершен
Выбор разделов
Очистить выбранные разделы?
Очистка разделов.
Очистка завершена
Выберите разделы для очистки:
Выбран неверный раздел
Форматировать Data
Форматировать Data
Форматирование Data удалит все приложения,
резервные копии, картинки, видео, медиафайлы
и зашифрованные файлы во внутренней памяти,
включая расширенное хранилище.
Форматирование данных удалит все приложения, резервные копии, картинки, видео, медиафайлы
и зашифрованные файлы во внутренней памяти.
Форматирование данных удалит все приложения,
резервные копии и медиа. Это не может быть отменено.
Это не может быть отменено.
Форматирование данных завершено
Чтение SELinux-контекста не поддерживается ядром.
Присутствует полная поддержка SELinux.
Отсутствует поддержка SELinux (нет libselinux).
MTP Включено
Сбой MTP: MTP не запущен при загрузке.
Расшифровка выполнена успешно с паролем по умолчанию.
Невозможно расшифровать с паролем по умолчанию. Возможно потребуется выполнить форматирование Data.
Вычисление MD5
* Вычисление md5.
* MD5 создана.
* Ошибка MD5!
* Ошибка вычисления MD5.
(Текущая дата)
(Создать автоматически)
Не удается найти ‘<1>‘ раздел для расчета копирования.
Не выбраны разделы для резервного копирования.
* Общее количество разделов для резервного копирования: <1>
* Общий объем данных: <1>МБ
* Доступный объем: <1>МБ
Не удается найти накопитель для хранения.
В накопителе для хранения недостаточно свободного места.
[РЕЗЕРВНОЕ КОПИРОВАНИЕ НАЧАТО]
* Папка для резервной копии: <1>
Не удается создать папку для резервной копии.
Средняя скорость копирования для файлов: <1>МБ/сек
Средняя скорость копирования для образов: <1>МБ/сек
[ВСЕГО СКОПИРОВАНО <1>МБ]
[КОПИРОВАНИЕ ЗАВЕРШЕНО ЗА <1>СЕКУНД(Ы)]
[ВОССТАНОВЛЕНИЕ НАЧАТО]
Папка для восстановления: ‘<1>‘
[ <1>выполнено за <2>секунд(ы)]
Проверка MD5
Пропуск проверки MD5 согласно настройкам.
Вычисление информации о восстановлении.
Невозможно восстановить <1>— смонтировано только для чтения.
Не удается найти ‘<1>‘ раздел для восстановления.
Не выбраны разделы для восстановления.
Восстановление <1>разделов.
Общий размер для восстановления: <1>МБ
Обновление информации о системе
[ВОССТАНОВЛЕНИЕ ЗАВЕРШЕНО ЗА <1>СЕКУНД(Ы)]
Невозможно создать папку ‘<1>‘ (<2>).
Не удается смонтировать ‘<1>‘ (<2>)