Восстановление “КИРПИЧА” без вскрытия ..или Bootloop с заблокированным загрузчиком .. – MIUI помощь – Xiaomi Community – Xiaomi

Содержание

Что такое bootloader и зачем его разблокировать

Чтобы долго не расписывать и не отнимать время у других, рекомендую почитать (если вы новичок) о том, что такое загрузчик на смартфонах Xiaomi в нашем глоссарии. Ниже мы поговорим минимум о 3 причинах разблокировки бутлоадера. Советуем внимательно изучить каждый пункт, чтобы после не возникло дополнительных вопросов.

Что происходит при включении и запуске android?

android-was-passiert
Что происходит при запуске Android

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

Сначала произойдет запуск BIOS мобильного телефона. ВIOS (Basic Input/Output System ) в переводе с английского означает «Базовая система ввода / вывода». Она постоянно автосохраняется и обеспечивает работу входов и выходов. В частности, эта система также запускает загрузчик (Bootloader).

Как явствует из названия, загрузчик загружает другие части операционной системы, например, ядро. Ядро ​​операционной системы — это основная ее часть. По сути, это нижний уровень системы Android, который отвечает за ход основных процессов и организацию данных.

Затем запускается основная операционная система под названием «ПЗУ/ ROM». ROM означает «Read Only Memory», или «Постоянное запоминающее устройство», используемое для запоминания всего массива неизменяемых данных. Будучи обычным пользователем, вы ничего не можете в ней поменять.

Параллельно загрузчик запускает не только ядро, но и Recovery, или систему восстановления.Если система Android вдруг оказывается повреждена, можно загрузить Recovery и из нее восстановить OS с нуля или с момента сохранения. Также в системе Recovery можно (и нужно) создавать резервные копии.

В свою очередь, загрузчик может находиться в трех разных состояниях: «Заблокировано», «Открыто» или «Зашифровано». Если загрузчик открыт, в систему могут быть внесены глубокие изменения, например, можно установить собственную операционную систему, также называемую «кастомной ПЗУ», вместо стандартной, то есть, «стоковой ПЗУ».

Если загрузчик зашифрован, могут быть установлены лишь самые срочные обновления системы от изготовителя. То же самое относится и к заблокированному загрузчику, но, в отличие от зашифрованного, его можно разблокировать.

«смешанный код»

Компилятор C поддерживает встроенный Ассемблер, то есть при написании кода на языке высокого уровня вы можете также использовать язык низкого уровня. Инструкции ассемблера, которые используются на высоком уровне, также называют asm вставками. Они состоят из ключевого слова “__asm” и блока ассемблерных инструкций:

__asm ;  ключевое слово, которое показывает начало ASM вставки
{ ;  начало блока
    … ; какой нибудь ассемблеровский код
} ;  конец блока

Чтобы продемонстрировать пример смешанного кода мы будем использовать ранее упомянутый код на ассемблере, который выполняет очистку экрана и объединим его с кодом написанный на C .

void ClearScreen()
{
    __asm

    {
        mov al, 02h; настройка графического режима 80x25 (текст)
        mov ah, 00h; код функции изменения видео режима
        int 10h; вызов прерывания
    }
}

1 способ: через меню в телефоне

Самый простой способ, встроенный в ваше устройство и не требующий дополнительных программ.

  1. Открываем стандартные «Настройки» смартфона;
  2. Переходим в пункт «О телефоне»;
  3. Теперь 5 раз нажимаем по строке «Версия MIUI», появится надпись «Вы успешно стали разработчиком«.
  4. Возвращаемся в основное меню и находим пункт «Расширенные настройки», нажимаем на него.
  5. Ищем пункт «Для разработчиков», переходим в него.
  6. Теперь нужно найти строку «Статус Mi Unlock«. При первом входе нужно дать разрешение и согласится с предупреждением.
  7. Если загрузчик заблокирован в самом верху будет соответствующая надпись «Загрузчик заблокирован, устройство защищено«. Если загрузчик разблокирован — на весь экран будет надпись «Загрузчик разблокирован«.

2 способ: через компьютер

Если по каким-то причинам первый вариант не устраивает можно проверить разблокирован ли загрузчик на Xiaomi с помощью ПК. Инструкция прилагается для двух операционных систем – Windows и Linux.

3 способ: при включении устройства

И последним, третьим способом проверка статуса бутлоадера является включение телефона, а точнее его загрузочный экран. Чтобы это сделать нужно:

  1. Выключить ваш Xiaomi, подождать около 20 секунд, чтобы все внутренние процессы полностью остановились.
  2. Снова включить телефон (зажать кнопку питания).
  3. Если во время загрузки в нижней/верхней части экрана написано «Unlocked» или находится иконка с открытым замком — загрузчик разблокирован.

Bios прерывания и очистка экрана

Чтобы вывести сообщение на экране, мы должны очистить его для начала. Мы будем использовать специальные BIOS прерывания для этой цели.

BIOS предлагает ряд прерываний для работы с железом, таким как видеокарта, клавиатура, системный диск. Каждое прерывание имеет следующую структуру:

int [number_of_interrupt];

Где «number_of_interrupt» является числом прерывания.

Каждое прерывание имеет некоторое количество параметров, которые должны быть установлены до его вызова. Регистр процессора — ah, всегда несет ответственность за количество функций для текущего прерывания, и другие регистры обычно используются для других параметров текущей операции.


mov al, 02h; настройка графического режима 80x25 (текст) 
mov ah, 00h; код функции изменения видео режима
int 10h; вызов прерывания

Мы будем рассматривать только те прерывания и функции, которые будут использоваться в нашем приложении. Нам понадобится:

int 10h, function 00h – выполняет меняет видео режим и очищает экран; 
int 10h, function 01h – устанавливает тип курсора; 
int 10h, function 13h – показывает строку на экране;

Bootloader: как разблокировать и зачем это нужно

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

Считается, что в таком случае пользователь получает доступ к ядру системы, который по умолчанию невозможен. Как в такой ситуации описать Bootloader? Что это, станет понятно, если взглянуть на отсутствие так называемых прав суперюзера. Получается, что после снятия блокировки они вообще не нужны ни на каком уровне.

Любой производитель мобильной техники предусматривает работу с таким компонентом, как Bootloader. Как разблокировать его? Обычно это делается при помощи специальных утилит, устанавливаемых на ПК при соединении с мобильным девайсом через USB-интерфейс. Заметьте, права суперпользователя в данном случае не требуются.

Для большинства устройств, включая, например, гаджеты Sony и HTC, подразумевается использование утилиты Adb Run, причем для Sony придется дополнительно использовать специальные драйверы Sony Fastboot, да еще и обратиться к специальному разделу Unlocker на официальном сайте. Как видим, процедура хоть и выполнимая, но достаточно сложная.

Cdisplay — реализация

  // CDisplay.h

#ifndef __CDISPLAY__
#define __CDISPLAY__

//
// colors for TextOut func
//

#define BLACK			0x0
#define BLUE			0x1
#define GREEN			0x2
#define CYAN			0x3
#define RED			0x4
#define MAGENTA		0x5
#define BROWN			0x6
#define GREY			0x7
#define DARK_GREY		0x8
#define LIGHT_BLUE		0x9
#define LIGHT_GREEN		0xA
#define LIGHT_CYAN		0xB
#define LIGHT_RED	                0xC
#define LIGHT_MAGENTA   	0xD
#define LIGHT_BROWN		0xE
#define WHITE			0xF

#include "Types.h"
#include "CString.h"

class CDisplay
{
    public:
    static void ClearScreen();

    static void TextOut(
        const char far* inStrSource,
        byte            inX = 0,
        byte            inY = 0,
        byte            inBackgroundColor   = BLACK,
        byte            inTextColor         = WHITE,
        bool            inUpdateCursor      = false
    );

    static void ShowCursor(
        bool inMode
    );
};

#endif // __CDISPLAY__

// CDisplay.cpp

#include "CDisplay.h"

void CDisplay::TextOut( 
        const char far* inStrSource, 
        byte            inX, 
        byte            inY,  
        byte            inBackgroundColor, 
        byte            inTextColor,
        bool            inUpdateCursor
        )
{
    byte textAttribute = ((inTextColor) | (inBackgroundColor << 4));
    byte lengthOfString = CString::Strlen(inStrSource);

    __asm

    {		
        push    bp
        mov     al, inUpdateCursor
        xor	     bh, bh	
        mov     bl, textAttribute
        xor	     cx, cx
        mov     cl, lengthOfString
        mov     dh, inY
        mov     dl, inX  
        mov     es, word ptr[inStrSource   2]
        mov     bp, word ptr[inStrSource]
        mov     ah, 13h
        int	     10h
        pop	     bp
    }
}
void CDisplay::ClearScreen()
{
    __asm

    {
        mov  al, 02h
        mov  ah, 00h
        int     10h
    } 
}

void CDisplay::ShowCursor(
        bool inMode
        )
                                 
{
    byte flag = inMode ? 0 : 0x32;

    __asm
    {
        mov     ch, flag
        mov     cl, 0Ah
        mov     ah, 01h
        int     10h
    }
}

Cstring реализация

CString класс предназначен для работы со строками. Он включает в себя метод Strlen(), который получает в качестве параметра указатель на строку и возвращает количество символов в этой строке.

CDisplay класс предназначен для работы с экраном. Он включает в себя несколько методов:

  1. TextOut() — выводит строку на экране.
  2. ShowCursor() — управляет курсором представления на экране: показать, скрыть.
  3. ClearScreen() — изменяет видео режим и таким образом очищает экран.
// CString.h 

#ifndef __CSTRING__
#define __CSTRING__

#include "Types.h"

class CString 
{
    public:
    static byte Strlen(const char far* inStrSource);
};

#endif // __CSTRING__

// CString.cpp

#include "CString.h"

byte CString::Strlen(const char far* inStrSource)
{
    byte lenghtOfString = 0;
        
    while(*inStrSource   != '')
    {
          lenghtOfString;
    }

    return lenghtOfString;
}

Linux

  1. Скачиваем ADB файлы по ссылке выше и переносим в нужную папку.
  2. Открываем терминал и пишем следующую команду «adb — sudo apt-get install android-tools-adb android-tools-fastboot».
  3. Смартфон переводим в режим fastboot, как и в вышеприведенном варианте. Введенная надпись разъединяется, и возле каждой части текста видим нужную информацию о бутлоадере:

sudo fastboot devices – здесь появляется номер устройства, иногда добавляется и модель;

sudo fastboot oem device-info – а вот тут уже статус загрузчика, аналогичный, как и на операционной системе Windows.

Если появилась надпись «waiting device», вероятнее всего, действия выполнены не от имени администратора.

Root-права

Имея разблокированный загрузчик, вы можете получить статус Суперпользователя. Почти во всех актуальных сборках используется Magisk, так как SuperSu уже давно не поддерживается и новые версии не выходят. Польза рут-прав огромна, начиная от удаления встроенной рекламы и заканчивая разгоном процессора.

Startpoint.asm — реализация

;------------------------------------------------------------
.286							   ; CPU type
;------------------------------------------------------------
.model TINY						   ; memory of model
;---------------------- EXTERNS -----------------------------
extrn				_BootMain:near	   ; prototype of C func
;------------------------------------------------------------
;------------------------------------------------------------   
.code   
org				07c00h		   ; for BootSector
main:
				jmp short start	   ; go to main
				nop
						
;----------------------- CODE SEGMENT -----------------------
start:	
        cli
        mov ax,cs               ; Setup segment registers
        mov ds,ax               ; Make DS correct
        mov es,ax               ; Make ES correct
        mov ss,ax               ; Make SS correct        
        mov bp,7c00h
        mov sp,7c00h            ; Setup a stack
        sti
                                ; start the program 
        call           _BootMain
        ret
        
        END main                ; End of program

Usb host

Добавляем

USB Host service

в режиме

mass storageКак разблокировать загрузчик Bootloader и установить кастомный Recovery на Андроид инструкция

После добавления драйвера в проект появляются несколько заголовочных и исполнительных файлов. Нам интересны 2 из них:

Для работы стека USB хоста прописываем в свойствах проекта два определения:

USB_MASS_STORAGE_ENABLE=true
ACCESS_MEM_TO_RAM_ENABLED=true

Для этого щелкаем правой кнопкой мыши по проекту, выбираем

Properties -> Toolchain -> ARM/GNU C Compiler -> Symbols

Комментируем строку

“#define Lun_usb_unload — NULL”USB LUNs Definitions

в файле

conf_access.h

для предотвращения ошибок при компиляции.

Для отслеживания подключенных устройств на шине USB вводится обработчик прерывания (callback) по событию

Больше про Хуавей:  Какой модем лучше выбрать для ноутбука, рейтинг 2021 года: USB-модели 4g, lte, 3g для интернета на даче с сим-картой

Start of Frame

. Это прерывание происходит только один раз при каждой посылке SOF, а так как SOF посылается раз в 1 мс, когда устройство подключено к шине, то это событие можно использовать как таймер.

Обработчик прерывания прописываем в файле

conf_usb_host.h

Для этого добавляем прототип функции

main_usb_sof_event()

в начале файла

conf_usb_host.h

после всех #include’ов.

void main_usb_sof_event(void);

Так же добавляем в этот файл строку:

# define UHC_SOF_EVENT() main_usb_sof_event()

Теперь требуется глобально определить переменную-счетчик в файле

main.c

, именно ее будем увеличивать при каждом вызове соответствующего обработчика:

volatile static uint16_t main_usb_sof_counter = 0;

Добавляем собственно обработчик прерывания (callback):

void main_usb_sof_event(void)
{
   main_usb_sof_counter  ;
}

Windows

Это сложный способ, но он самый точный.

  1. Скачиваем архив с ADB-файлами и распаковываем его в корень системного диска C, чтобы путь был таким «C:/adb/«.
  2. Выключаем смартфон, переводим его в режим fastboot. Для этого одновременно зажимаем клавишу включения и уменьшения громкости.
  3. Подключаем устройство к компьютеру с помощью USB-кабеля.
  4. На клавиатуре ПК нажимаем «Win» «r». Открывается окно «Выполнить».
  5. Набираем «cmd» и кликаем «ОК». Появляется системная командная строка.
  6. В командной строке пишем команду «cd c:/adb» и нажимаем Enter.
  7. Теперь вводим команду «fastboot oem device-info» видим необходимую нам надпись.

Если указано «true» – бутлоадер разблокированный, в противном случае «false», что говорит о заблокированном загрузчике.

Архитектура программы

Мы разрабатываем загрузчик для себя. Его задачами являются только следующие:

  1. Правильная загрузка в память по адресу 0000:7 C00.
  2. Вызов BootMain функции, которую мы написали в языке высокого уровня.
  3. Вывести на дисплей фразу — ”Hello, world…”, from low-level.

Архитектура программы.

Первый объект это StartPoint, который написан исключительно в ассемблере, поскольку в языках высокого уровня нет необходимых нам инструкции. Это говорит компилятору, какой тип памяти должен использоваться, и адрес команды в RAM, которая должна выполняться после его чтения. Он также исправляет регистры процессора и передает управление функции BootMain, которая написано на языке высокого уровня.

Следующий объект- BootMain — является аналогом main, что, в свою очередь является основной функцией в которой сконцентрированы все функции программы.

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

Ассамблирование — автоматизация

В качестве заключительного этапа в этом разделе мы опишем как превратить Microsoft Visual Studio 2005, 2008, в среду разработки с поддержкой любого компилятора. Для этого нужно перейти в свойствах проекта:

Project->Properties->Configuration PropertiesGeneral->Configuration Type

Вкладка Configuration Properties включает в себя три пункта: General, Debugging и NMake. Выберите NMake и укажите путь к «build.bat» в Build Command Line и Rebuild Command Lin.

Если все сделано правильно, то вы можете скомпилировать нажав клавиши F7 или Ctrl F7. При этом вся сопутствующие информация будет отображаться в окне вывода. Основным преимуществом здесь является не только автоматизация сборки, но и мониторинг ошибок в коде если они будут.

Восстановление "кирпича" без вскрытия ..или bootloop с заблокированным загрузчиком .. – miui помощь – xiaomi community – xiaomi

..Тема была подготовлена с целью помочь4150460623 , восстановить его Redmi 5 Plus(..Bootloop с заблокированным загрузчиком)..из пояснений 4150460623,телефон имеет внутреннее название модели — MEE7, это версия для продажи в Китае (China Version), был куплен “с вьетнамкой, на коробке иероглифы“, но при этом продавец утверждал, что “модель Глобальная с оригинальной прошивкой” ..4150460623попытался прошить с вьетнамки на Global, неразблокировавпредварительно загрузчик ..в результате получил Bootloop ..

С течением времени ..всё больше прихожу к пониманию ..что ценность данной статьи не столько в самом, довольно подробно описанном способе ..сколько в дополнительной информации, предупреждающей пользователей смарфонов Xiaomi о подстерегающих их подводных камнях ..об опасности манипуляций с прошивкой без необходимых знаний и опыта ..а так же о возможных последствиях необдуманных покупок у ненадёжных продавцов ..

..Способ опробирован ..СПОСОБ РАБОТАЕТ ) ..НО ГАРАНТИИ что сработает в Вашем случае ..НЕТ ..это связано с ужесточением политики Xiaomi по защите региональных рынков от нелегальных (серых) продаж и касается моделей смартфонов произведённых с конца 2021 года и позднее ..если в Вашем случае данный способ не помог, не отчаивайтесь — есть и ДРУГИЕ СПОСОБЫ ..в том числе требующие разборки устройства (..ценность данного способа, в числе прочего, в том что он позволяет избежать разборки устройства) ..читайте так же комментарии к данной теме #181, #183..в них есть описание других способов и полезные ссылки ..

..Особая благодарность
за интерес и проявленную активностьFatality Zer0 ..он не только одним из первых успешно опробировал способ, но и достаточно подробно (со скриншотами) держал меня в курсе процесса …

.. Fatality Zer0 .. удалось поднять этим способом Redmi Note 5 ..ждёт разблокировки загрузчика ..читайте комментарии к этой теме — стр.4 коммент. #35, 36, 38, 39  ..

.. 1747181372 .. так же удалось поднять Redmi 5 Plus ..но возникла проблема с аккаунтом ..удалось решить и эту проблему ) ..читайте комментарии к этой теме — стр.7 коммент. #63

.. 4150460623 .. таки удалось поднять свой Redmi 5 Plus..после того как, дождался разблокировки загрузчика ..и насколько я понял, проблемы были как раз из-за того, что не хотелось ему дожидаться этой самой разблокировки и пытался он пробиться через это ограничение ..не имея при этом достаточных заний и опыта ..читайте комментарии к этой теме — стр.8 коммент. #79 ..

..Данный способ предназначен для ВОССТАНОВЛЕНИЯ доступа к устройству ..Им не получится прошить на устройство прошивку, для работы которой необходим разблокированный загрузчик ..Так как, при прошивке данным способом, загрузчик принудительно блокируется ..это надо помнить ..

..Способ хорош тем, что не требует включения отладки через USB на смартфоне (..а у Вас нет такой возможности в случае Bootloop) и практически в автоматическом режиме позволяет решить проблему «This miui version cannot be installed on this device» ..скачав последнюю версию указанной Вами (официальной и именно для Вашего устройства) прошивки и установив на смартфон ..напутать можно только в выборе Global Stable/Developer или China Stable/Developer ..но если внимательно всё прочтёте, то ничего не напутаете ..

..После перепрошивки Вы получите абсолютно рабочее устройство (..проверено Redmi 5, Redmi 5 Plus, Redmi Note 5), правда пока на английском языке, но этого вполне достаточно, чтобы войти в свой аккаунт и добавить устройство на разблокировку загрузчика. После ожидания от 72 – 360 до 720 часов (примерно столько требуется для разблокировки загрузчика ..так что будьте готовы) ..Вы уже будете иметь возможность с разблокированным загрузчиком установить любую версию прошивки ..любым удобным для Вас способом ..но ..Вы помните ..не этим ..

Краткая инструкция (..конспект):

1) ..Первым делом скачиваем XiaoMiTool и устанавливаем ..после установки закрываем окно (..если открылось) ..
2) ..Запускаем C:XiaoMiXiaoMiToolFastFlash (желательно с правами админа) ..и ждем установки драйверов ..
3) ..
В меню Recovery на телефоне ..Сбрасываем все настройки ..затем выбираем Connect with MiAssistant ..
4) ..Настраиваем программу: ..Первая позиция: Сhina Developer ..Вторая, третья, четвертая позиции None ..либо как на скриншотах ниже в развёрнутой инструкции ..
5) Подключаем телефон к ПК ..Ждем пока определится программой ..
6) Все должно пройти само ..Скачивается нужная прошивка ..после чего на телефоне пойдет полоса установки (..если во время загрузки таймер покажет отрицательное значение и загрузка зависнет ..то закройте программу и запустите снова с такими же настройками ..загрузка продолжится с момента завиисания)
7) Ждем загрузки ОС и радуемся жизни ..Далее разблокируйте загрузчик и ставьте любую прошивку ..но не этим способом ..

ПОДРОБНАЯ ИНСТРУКЦИЯ :

..Перед установкой программы ..необходимо временно отключить проверку цифровой подписи драйверовв Windows ..это необходимо, что бы избежать возможных проблем, из-за неккоректной установки драйверов (после восстановления смартфона, можно вернуть проверку цифровой подписи драйверов) ..
..Устанавливаем программу ..По умолчанию она устанавливается в C:XiaoMiXiaoMiTool ..если выберете другой путь, то запомните его..

2. ..Заходим в папку куда установили и запускаем FastFlash (..желательно с правами администратора) ..

3. ..Убеждаемся, что смартфон заряжен минимум на 70-80% ..Перегружаемсмартфон в режим Recovery(..кнопка увеличения громкости кнопка питания)..Сбрасываем все настройки — Wipe Data ..затем выбираем Connect with MIAssistant (..Если Bootloop, то удерживаем кнопку питания, чтобы перезагрузить телефон ..отпускаем после начавшейся перезагрузки и ..удерживаем кнопку увеличения громкости)

4. ..Перед Настройкой программы ..первым делом необходимо выяснить версию свого устройстваСhinaVersionилиGlobal Version ..это довольно просто ..взгляните на коробку — видите на ней иероглифы — значит СhinaVersion ..или посмотрите на вилку зарядного устройства (..но только “родного” — из коробки) — видите плоские контакты и требуется переходник на наши (..используемые в России) розетки — значит опять таки СhinaVersion

..И так, если исходить из того, что у насChina Version устройства (..а это наиболее вероятно) ..то основной будет следующая Настройка программы : ..первая позиция — Сhina Developer..вторая, третья, четвертая позиции —None ..

..и жмём кнопку [ Select ] ..

..ниже на скриншотах ..даны другие возможные варианты настройки программы ..с которыми можно повторить попытки ..если с основной (выше изложенной) версией настройки возникают ошибки ..

..первая позицияСhina Developer..втораяGlobal Stable ..третья, четвертая позицииNone ..

..или вторая позицияСhina Developer..первая, третья, четвертая позицииNone ..

5. ..Подключаем смартфон USB кабелем (..исправным лучше “родным” из коробки)..напрямую ..без разветвителей/хабов и прочего ..и строго к USB 2.0 портам компьютера/ноутбука ..

..Ждем пока устройство определится программой ..

6. ..Далее все будет происходить автоматически ..Скачивается нужная прошивка ..после чего на телефоне возникнет полоса прогресса установки..Во время скачивания и прошивки ..для надёжности USB соединения ..желательно не двигать (не шевелить) смартфон и USB кабель ..

..Ожидаем окончания процесса загрузки/установки на устройство выбранной прошивки ..

(..если во время загрузки таймер покажет отрицательное значение и загрузка зависнет ..то закройте программу и запустите снова с такими же настройками ..загрузка должна продолжиться с момента зависания)

7. ..По окончании прошивки, смартфон перезагрузится на начальный экран MIUI ..но если телефон был привязан к учетной записи Xiaomi, то Вы столкнётесь с замком на экране и двумя кнопками с иероглифами ..

..данный экран не должен Вас пугать или вгонять в ступор ..всё так и должно быть

..Так как мы устанавливаем китайскую прошивку, а телефон был ранее привязан к учетке, то от нас требуется вход в Mi аккаунт ..

..В Глобальной прошивке, все немного иначе ..Изначально выбирается язык, потом вход в Google, а Mi аккаунт в конце ..Но мы ставим Китайскую для разработчиков Сhina Developer, а из нее вырезаны все сервисы Google по умолчанию, поэтому мы попадаем сразу к конечному пункту ..

..Первая кнопкаэто ввод пароля от учетной записи, вторая — это настройка Wi-Fi подключения ..там можно разобраться, так как Wi-Fi написано латинскими буквами ..

..вот для сравнения этот же экран, но уже на английском языке ..

Больше про Хуавей:  Что за кружок на экране телефона и как его убрать -

Восстановление "КИРПИЧА" без вскрытия ..или Bootloop с заблокированным загрузчиком .. - MIUI помощь - Xiaomi Community - Xiaomi

..Так как проверка пароля происходит через Интернет, то сначала нужнонастроить Wi-Fi подключение, а только после этого вводить пароль от Mi аккаунта, в противном случае ..под полем ввода высветится ошибка — иероглифами ..

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

..После ввода и проверки пароля через Интернет, подтверждения номера телефона по коду из SMS, вам станет доступен выбор языка MIUI. В китайской делоперской прошивке ..кроме китайских иероглифов — доступенанглийский ..

..Тема готова, но видимо будет ещё дополняться ..

P.S. ..некоторых скриншотов/фотографий экранов к сожалению пока нет ..буду признателен, если кто-то, восстанавливая своё устройство этим методом, будет фиксировать стадии восстановления (..делая скриншоты и фотографии экранов) ..а затем в своих комментариях к теме, поделится своим опытом и разместит эти скриншоты и фотографии экранов ..


Для сломаны, поврежденные или полностью застряли устройства android

В последней части этой статьи состоит из нескольких способов перезагрузки устройства Android. Если перезагрузка не может решить проблему вашего устройства, Вы должны найти способ, чтобы восстановить данные, сохраненные в устройстве. В этом случае, программное обеспечение, как dr.

fone — Восстановление (Android) может быть исключительно удобно. dr.fone — Восстановление (Android) это специально разработанный инструмент для восстановления данных из сломано, поврежденные или замороженные Android устройств. Вот некоторые из особенностей этого удобного программного обеспечения.

  • Это первое когда-либо программное обеспечение для извлечения данных из сломанного Android устройств
  • dr.fone — Восстановление (Android) Можно восстановить удаленные фотографии из внутренней памяти Android ,
    восстановить данные из разбитого Android
    И восстанавливать данные с поврежденных, сломанные или неисправные устройства
  • Он имеет лучшую скорость поиска данных в отрасли
  • Восстановление различных файлов, включая журналы вызовов, Сообщения, контакты, фото, видео, документы, и т.д.
  • Он работает с устройствами Samsung Galaxy, а также.

Заметка: Если вы не можете получить свой Android устройства обратно к нормальной работе, Вы не должны чувствовать себя беспомощными. В таком случае, Вы можете использовать dr.fone — Восстановление (Android) чтобы получить все ваши данные.

Инструкция как разблокировать загрузчик на телефоне xiaomi

Ранее нужно было получать одобрение на разблокировку загрузчика (писать письмо в службу поддержки) и ждать несколько дней. Теперь этого делать не нужно, однако появился так званный «таймер». Более подробно читайте ниже, в официальной инструкции.

Как зайти в recovery: инструкция

Чтобы попасть в Recovery на Android девайсах, сначала нужно выключить аппарат, а затем нажать и удерживать определенное сочетание клавиш до загорания экрана. К сожалению, не существует одной единой комбинации при помощи которой вы сможете войти в меню Рекавери как на смартфонах Samsung , так и на HTC, LG, Xiaomi и т.д. Поэтому ниже мы собрали инструкции для различных моделей.

(!)Правда, есть три практически универсальных способа – подробнее о каждом написано в конце статьи:

  1. Подключив Android-устройство к компьютеру, можно перевести его в режим восстановления через командную строку Windows, используя ADB.
  2. Специальные приложения позволяют войти в меню Recovery из системы.
  3. Через Терминал, введя команду (нужны ROOT права).

(!)Там же найдете информацию, что делать когда на экране появляется лежачий Андроид с восклицательным знаком в пузе и надписью «Команды нет (No command)».

(!)Также в некоторых смартфонах и планшетах отсутствует Recovery. В таком случае придется устанавливать его самостоятельно (если, конечно, есть кастомное рекавери для данной модели) – ссылки на инструкции есть выше.

Перемещение по меню осуществляется клавишами увеличения и уменьшения громкости, выбор делается кнопкой включения/блокировки. В новых устройствах CWM и стоковое рекавери может быть сенсорным.

Как обратно заблокировать загрузчик

Если после разблокировки загрузчика его нужно обратно закрыть — то стоит прибегнуть к нашей отдельной статье. Данной теме посвящена подробная инструкция, где все наглядно показано.

Как проверить загрузчик

Вы можете проверить загрузчик на реальном оборудовании или с использованием разработанных для этих целей виртуальных машинам — VMware. Тестирование на реальном оборудовании дает вам больше уверенности, что он работает также как и на виртуальной машине. Конечно, мы можем сказать, что VmWare отличный способ для тестирования и отладки. Мы рассмотрим оба метода.

Прежде всего, нужен инструмент, чтобы записать наш загрузчик на виртуальный или физический диск. Насколько я знаю, есть несколько бесплатных и коммерческих консолей и GUI приложений. Я использовал Disk Explorer для NTFS 3.66 (версия для FAT, называется Disk Explorer для FAT) для работы в ОС Windows и Norton Disk Editor 2002 для работы в MS-DOS.

Я опишу только Disk Explorer для NTFS 3,66 потому что это самый простой способ и подходит для наших целей больше всего.

Как увеличить шанс на одобрение разблокировки

При рассмотрении вашей заявки, касательно разблокировки, компания Xiaomi проверит всю информацию о вашем аккаунте. Многим аккаунтам вовсе не дают право на открытый Bootloader, а остальные ждут ответ по месяцу.

Чтобы ускорить процесс, нужно зарегистрироваться на официальном форуме компании xiaomi и участвовать в нём. Придумываем имя пользователя, пароль, и общаемся с людьми, как на любом форуме. В информации о вашем аккаунте обязательно будет присутствовать информация, что вы являетесь активным участником форума. Сотрудники любят таких пользователей, поэтому дают им право на разблокировку загрузчика.

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

Как узнать разблокирован ли загрузчик на xiaomi или нет?

Теперь я расскажу о 3 способах проверки статуса загрузчика на смартфонах Xiaomi и Redmi. Рекомендую делать проверку минимум 2 методами, так как до сих пор встречаются модели (купленные за «очень дешево» или б/у) которые были прошиты либо взломаны в обход разблокировки загрузчика.

Какой компилятор вам нужен

Чтобы использовать технологию смешанного кода, нужно по крайней мере два компилятора: для ассемблера и для C/C , а также компоновщик который объединит объектные файлы(.obj) в один исполняемый файл.

Теперь, давайте поговорим о некоторых особых моментов. Есть два режима функционирования процессора: реальный и защищенный режим. Реальный режим является 16-битным и имеет некоторые ограничения. Защищенный режим является 32-битным и полностью используется операционной системой.

Когда компьютер только начинает работу, процессор работает в 16-битном режиме. Таким образом, чтобы написать программу и получить исполняемый файл, вам понадобится компилятор и компоновщик для ассемблера для 16-битного режима. Для C/C вам потребуется только компилятор, который умеет создавать объектные файлы для 16-битного режима.

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

Я пробовал несколько бесплатных и коммерческих компиляторов для 16-битного режима и выбрал продукт от Microsoft. Компилятор вместе с компоновщиком для ассемблера, C и C включены в Microsoft Visual Studio 1.52, его можно скадать с официального сайта компании. Некоторые подробности о компиляторов которые нам нужны приведены ниже.

ML 6,15 — компилятор ассемблера от Microsoft для 16-битного режима.LINK 5,16 — компоновщик, который умеет создавать COM-файлы для 16-битного режима. CL — С, С компилятор для 16-битного режима.

Вы также можете использовать несколько альтернативных вариантов.

DMC — бесплатный компилятор для компиляции ассемблера, C, C для 16 и 32-битном режиме Digital Mars.LINK — бесплатный компоновщик для компилятора DMC.

Есть также некоторые продукты от Borland.

BCC 3,5 — С, С компилятор, который умеет создавать файлы для 16-битного режима.TASM — компилятор асемблера для 16-битного режима.TLINK — компоновщик, который может создавать файлы COM для 16-битного режима.

Все примеры кода в этой статьи, были разработаны с инструментами от Microsoft.

Китайская версия телефона

При покупке телефонов на таких сайтах как AliExpress или Gearbest можно найти очень выгодные цены, которые могут отличаться от местных на 50-100 долларов. Именно поэтому многие пользователи покупают телефоны с низкой ценой. Продавцы в свою очередь могут продать китайскую версию под видом глобальной. Китайская версия смартфона Xiaomi всегда дешевле и на ней может быть установлена MIUI China, или MIUI Global.

Рекомендую к прочтению эту статью: в чем отличие китайской версии телефона от глобальной.

Ответы на популярные вопросы

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

Ошибки и проблемы

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

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

Память

Адресное пространство в памяти микроконтроллеров серии SAMD20/21 устроено просто:

Энергонезависимая память организована рядами, каждый ряд содержит 4 страницы. Размер 1 страницы 64 байта. Энергонезависимая память стирается рядами, а записывается постранично. Это важно помнить.

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

Bootloader-секция защищена соответствующими этому адресному пространству lock-битами и фьюзами BOOTPROT.

Фьюзы BOOTPROT одновременно определяют размер bootloader-секции и защищают выделенную область памяти от чтения.

EEPROM может быть записана несмотря на защиту соответствующей ей области памяти.

Перезагружаемся в download mode

Та же операция работает и с , о котором я писал выше. После загрузки модуля телефон перезагружается в спец режим, который работает как usb mass storage device. Т.е. я имею доступ ко всем разделам телефона без защиты от чтения! Попробовал записать свой recovery.

Пришлось ограничить скорость записи, иначе телефон отваливается и запись прекращается. Возможно это результат переполнения кэша mass storage загрузчика. Пришлось написать хак:

Загрузил телефон, выполнил и ничего. Только вибрация с последующей обычной загрузкой. Помните про раздел , не стоит проверять recovery через запись в этот раздел.

При помощи этого же способа я примонтировал раздел к компьютеру и вручную записал на него supersu. Первоначальная задача выполнена: перманентный root доступ получен. Осталось автоматизировать загрузку подставного WiFi модуля, который отключает hooks.

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

Подготовка файла прошивки

(как и в других контроллерах серии SAMD20/21) каждый ряд NVM состоит из 4 страниц, каждая из которых по 64 байта. Таким образом 200 рядов (которые мы выделяем под bootloader) это (200 * 4 * 64) байт = 51200 (0xC800) байт памяти. И application часть должна начинаться после 51200 байт flash памяти.

Разбиение flash памяти:

Секция bootloader:

Секция application:

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

Сам файл можно найти в solution explorer. В нашем случае он называется

samd21j18a_flash.ld

Путь: src-asf-sam0-utils-linker scripts-samd21-gcc

В него необходимо внести изменения определений областей памяти:

Конфигурация по умолчанию:

rom (rx) : ORIGIN = 0x00000000, LENGTH = 0x00040000

должна быть заменена на

rom (rx) : ORIGIN = 0x0000C800,LENGTH = 0x00033800

Больше про Хуавей:  помогите невозможно пользоватся приложением яндекс го, - MIUI обратная связь - Mi Community - Xiaomi

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

Порядок действий

ВАЖНО. Следует понимать, что рассматриваемые действия при неудачном исполнении могут привести к тому, что ваш гаджет превратиться в «кирпич» и попросту откажется включаться. . Кроме того, приведённый порядок действий гарантированно приведёт к удалению всего содержимого на смартфоне/планшете, поэтому первое, о чём необходимо позаботиться, – это обеспечить сохранность всей важной для вас информации, после чего можно приступать непосредственно к основным манипуляциям, которые выглядят следующим образом:

Кроме того, приведённый порядок действий гарантированно приведёт к удалению всего содержимого на смартфоне/планшете, поэтому первое, о чём необходимо позаботиться, – это обеспечить сохранность всей важной для вас информации, после чего можно приступать непосредственно к основным манипуляциям, которые выглядят следующим образом:

Шаг 1 – Android SDK и USB драйверы:

Шаг 2 – Отладка:

  • В упомянутой выше папке «Platform-tools» и с зажатой клавишей «SHIFT» кликните правой кнопкой по пустому участку экрана и выберите пункт «Открыть окно команд»;
  • Выполните команду «adb devices» и в ответ на это перед вами будет выведен серийный номер Android-устройства;
  • На смартфоне/планшете откройте «Настройки» и перейдите в раздел «О телефоне»;
  • Найдите строку «Номер сборки» и тапайте по ней, пока не появится сообщение и присвоении полномочий разработчика;
  • Вернитесь в основной раздел настроек и откройте новый пункт меню с красноречивым названием «Для разработчиков» и если там имеется строка «Разблокировка OEM» (что далеко не всегда) нажмите на неё;
  • Активируйте пункт «Отладка по USB» и по необходимости введите пароль;
  • Подключите смартфон/планшет к компьютеру и в ответ на сообщение «Разрешить отладку по USB?» выберите «Всегда разрешать на данном ПК».

Шаг 3 – Ключ разблокировки:

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

Данный процесс в деталях описывать бессмысленно, так как он носит индивидуальный характер, и единственное, что здесь следует отметить, – это то, что после получения от производителя ключа разблокировки в виде файла с расширением «.bin» поместите его в папку «Platform-tools».

Шаг 4 – Работа с «Bootloader»:

  • Выключите планшет или смартфон;
  • Зажмите кнопку питания и понижения громкости для загрузки в режиме «Fastboot». Это срабатывает не для всех моделей мобильных гаджетов, поэтому при необходимости уточните индивидуальный для вас порядок действий;
  • С помощью USB-кабеля подключите девайс к компьютеру;
  • По аналогии с вышеприведёнными пунктами в Шаге 2 откройте пункт «Открыть окно команд»;
  • Введите предусмотренные для вашей модели команды, например:
  • В ответ на выполненную команду на смартфоне/планшете может появиться требование о подтверждении разблокировки, где необходимо выбрать «Да»;
  • Дождитесь завершения работы, с учётом того, что процесс может занять достаточно длительное время, это касается и первого запуска ОС после проведённых действий;
  • Наберитесь терпения и самовольно не прерывайте загрузку операционной системе и штатное включение устройства.

Работа с disk explorer для ntfs

После запуска программы мы идем в наш диск (File-> Drive). В появившемся окне идем в раздел логические диски и выбираем наш созданный диск(в моем случае это Z).

Теперь мы выбираем меню пункт View как Hex команды. В это появившемся окне мы можем видеть информацию диска в 16-разрядном представлении, разделенная на сектора. Сейчас у нас только 0-ли, так как диск пуст, пока что.

Сейчас мы должны записать наш загрузчик в первый сектор. Мы устанавливаем маркер в положение 00, как это показано на предыдущей картинке. Чтобы скопировать загрузчик мы используем пункт меню Edit->Paste from file command. В открывшемся окне укажите путь к файлу и кликните Open.

Вы также должны записать подпись 55AAh по позиции 1FE от начала сектора. Если вы не сделаете это, BIOS проверит последние два байта, и не найдя указанную подписи, будет считать что этот сектор не является загрузочным и не загрузит его в память.

Для переключения в режим редактирования нажмите клавишу F2 и напишите необходимые номера — 55AAh подписи. Чтобы выйти из режима редактирования нажмите ESC.

Теперь нам нужно подтвердить записанные данные.

Чтобы применить записанное мы идем в Tools-> Options, теперь мы идем в пункт Mode и выбираем метод записывания — Virtual Write и нажмите кнопку Write.

Большую часть рутинных действий закончили, наконец, и теперь вы можете видеть, что мы разработали с самого начала этой статьи. Давайте вернемся к VwWare чтобы отключить виртуальный диск (File->Map or Disconnect Virtual Disks … and click Disconnect).

Давайте запустим виртуальную машину. Мы видим теперь, как из глубины царства машинных кодов появляются знакомые строки — «Hello World… », from low-level…”.

Работа с энергонезависимой памятью

Добавляем NVM-Non-volatile memory (driver). Кроме этого определяем необходимые константы и переменные в файле main.c:

#define APP_START_ADDRESS (NVMCTRL_ROW_SIZE * 200)
uint8_t page_buffer[NVMCTRL_PAGE_SIZE];

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

struct nvm_config nvm_cfg;
void nvm_init(void)
{
	nvm_get_config_defaults(&nvm_cfg);
	nvm_cfg.manual_page_write=false;
	nvm_set_config(&nvm_cfg);
}

Все необходимые модули добавлены, можно писать код.

Создание виртуальной машины

Нам понадобится VmWare версия программы 5.0, 6.0 или выше. Чтобы проверить загрузчик мы создадим новую виртуальную машину с минимальным размером диска, например, 1 Gb. Отформатируйте его в файловую систему NTFS. Теперь нам нужно отобразить отформатированный жесткий диск на VmWare в качестве виртуального диска. Для этого выберите:

File->Map or Disconnect Virtual Disks…

После этого появится окно. Там вы должны нажать кнопку «Map». В следующем появившемся окне вы должны указать путь к диску. Теперь Вы также можете выбрать букву диска.

Не забудьте снять флажок «Open file in read-only mode (recommended)». После того как выполнили все выше описанные индикации диск должен быть доступен в режиме только для чтения чтобы избежать повреждения данных.

После этого мы можем работать с диском виртуальной машины, как с обычными логическим диском в ОС Windows. Теперь мы должны использовать Disk Explorer для NTFS 3,66 чтобы записать загрузочную запись с позиции 0.

Стороннее recovery

Разблокировав загрузчик, можно без труда устанавливать TWRP или CWM-рекавери, необходимое не только для получения рут-прав, но и для других важных операций на вашем смартфоне. Рассмотрим подробнее:

Сторонняя прошивка

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

Цифровая подпись aboot и boot разделов

Я пытался выяснить каким публичным ключём подписаны boot образы. Распаковал ключи из aboot (), извлек подписи из образов и прошелся всеми публичными ключами по ним. Выяснил, что все образы подписаны одни ключём. С ходу не разобрался как вычислить смещение подписи у boot разделов, потому я просто перепаковываю образ и использую его размер как смещение.

В качестве эксперимента я попробовал записать boot раздел в раздел fota, зная, что при загрузке fota снимаются все ограничения. Здесь я сильно рисковал, т.к. мог получить bootloop, похожий на bootloop recovery. Метка загрузки в fota записывается в раздел fotamng и если раздел не загрузится, то я получу бесконечную перезагрузку.

К сожалению, boot раздел, записанный в fota не загрузился, а bootloop я, к счастью, не получил. Не понятно почему тогда boot раздел, записанный в recovery успешно загрузился. Толку от этого конечно нет, для recovery используется та же защита, что и для boot. Не знаю чем вызвано подобное поведение. Возможно различными смещениями ramdisk и tags:

boot/recovery:

fota:

В Secure boot whitepaper от Qualcomm говорится о том, что подписывается sha256 hash от sha256 hash’ей нескольких сегментов ELF загрузчика. Количество сегментов определено в Subject’е сертификата. Например OU=05 00002000 SW_SIZE говорит о том, что в подписи содержится sha256 hash от первых 256 hash’ей областей по 32 байта (0×2000/32=256). Сам по себе aboot не содержит ELF заголовка и описание больше подходит к sbl1 (secondary boot loader).

Есть описание работы little kernel от Qualcomm, но и там нет ничего про алгоритм создания подписи aboot. Задача определить алгоритм все еще актуальна.

Шаг 1: подключение mi-аккаунта к телефону

Для разблокировки загрузчика обязательным условием является наличие Xiaomi аккаунта на устройстве. Если его еще нет — читаем как создать Mi-аккаунт. Если на телефоне уже привязана учетная запись — переходим ко второму шагу.

Шаг 2: связывание аккаунта с устройством

Теперь нужно связать Mi-аккаунт с вашим телефоном. Для этого последовательно выполняйте указанные шаги. Часть пунктов уже выполнилась при проверке статуса загрузчика с помощью телефона. Там же есть наглядные скриншоты.

  1. Выходим из своего Mi-аккаунта, это нужно чтобы избежать появления ошибки о невозможности проверки устройства и аккаунта.
  2. Переключаемся с Wi-Fi на мобильный интернет. Это обязательное условие, по другому процесс не пройдет. Читайте как настроить мобильный интернет на Xiaomi.
  3. Переходим в пункт «О телефоне» — нажимаем до 7 раз на строку «Версия MIUI».
  4. Возвращаемся в главное меню настроек, ищем разделы «Расширенные настройки» — «Для разработчиков».
  5. Нажимаем на пункт «Статус Mi Unlock». Подтверждаем свои действия согласием на появившееся предупреждение.
  6. Нажимаем на кнопку «Связать аккаунта с устройством».
  7. Система MIUI потребует войти в Mi-аккаунт, входим.
  8. После успешного входа произойдет связывание аккаунта с вашим телефоном.
  9. При успешной привязке вы увидите соответствующею надпись.
  10. Готово. Теперь нужно подождать пока пройдет обязательный срок в 360 или 720 часов.
  11. Проверить сколько еще осталось времени до разблокировки можно с помощью финального шага.

Если во время привязывания аккаунта к смартфону возникли трудности, то посмотрите это видео.

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

Шаг 4: запуск mi unlock

Теперь открываем программу Ми Анлок от имени администратора, видим белый экран с текстом на китайском языке (если локализованная версия как у меня — то на русском), где указаны правила отказа от ответственности. Соглашаемся и кликаем на соответствующую кнопку.

Шаг 6: подключение телефона к компьютеру

После возвращаемся к самому смартфону. Выключаем его и переводим в режим fastboot, одновременно зажав клавишу включения и уменьшения звука. С помощью USB-кабеля подключаем телефон к компьютеру.

Шаг 7: процесс разблокировки

Завершающий финальный этап: программа проверяет устройство, если все условия соблюдены — пойдет процесс разблокировки загрузчика. Ждем несколько минут (в моем случае 25 секунд), и если все сделали правильно – получаем уведомление об успешной разблокировке – три зеленых галочки. Готово.

1 Звездаслабоватона троечкухорошо!просто отлично! (1 оценок, среднее: 5,00 из 5)
Загрузка...

Расскажите нам ваше мнение:

Ваш адрес email не будет опубликован. Обязательные поля помечены *