todo/root/Magisk-install.md
loop-uh 08b4491545
Some checks failed
Published content check / validate (push) Failing after 3s
Завершить переезд базы знаний на Forgejo
Обновить правила репозитория и подписи исходников в 99 заметках, не затрагивая пользовательские незакоммиченные файлы. Сделать Forgejo Actions содержательным: проверять опубликованный commit, а не пустое рабочее дерево после checkout.
2026-08-07 08:27:28 +03:00

132 lines
15 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
date: 2026-07-18
tags:
- root
- android
- magisk
- install
aliases:
- Установка Magisk
- Magisk install
- Прошивка Magisk
- патч boot Magisk
link: https://topjohnwu.github.io/Magisk/install.html
---
# 🛠️ Установка Magisk — патч boot/init_boot, Recovery, Samsung
> [!info] О чём заметка
> Пошаговая установка **Magisk** на Android по [официальной документации](https://topjohnwu.github.io/Magisk/install.html): требования, как понять, какой образ патчить, патч `boot`/`init_boot`/`recovery`, отдельные случаи для устройств без boot-ramdisk и для Samsung, удаление и сохранение root при обновлениях. Что такое Magisk, зачем он и как устроен (systemless, модули, Zygisk, скрытие root) — в обзорной заметке [[root/Magisk|Magisk — systemless-root и модули]].
> [!danger] Нужны навыки прошивки и разблокированный загрузчик
> Инструкция предполагает, что вы умеете пользоваться **`adb` и `fastboot`** и знаете, как выводить устройство из «кирпича». **Загрузчик обязан быть разблокирован** (его разблокировка стирает все данные). Если планируете ещё и **кастомное ядро** — ставьте его **после** Magisk. Заранее сохраните оригинальные `boot.img`/`init_boot.img` для отката.
## TL;DR
- Ставится **приложением Magisk**: оно патчит **загрузочный образ**, который вы затем прошиваете через `fastboot`.
- Сначала определите по строке **Ramdisk** в приложении, какой образ патчить: `boot.img`/`init_boot.img` (есть ramdisk) или `recovery.img` (нет).
- Образ берите **от своей прошивки той же версии** и патчите **только на своём устройстве** — чужой пропатченный образ шить нельзя.
- **Samsung** — особый путь (Odin + AP tar, необратимый Knox, полный wipe).
- После каждого **OTA** root слетает; на A/B-устройствах спасает «Install to Inactive Slot».
## Шаг 1. Понять, какой образ патчить (строка Ramdisk)
Ключевой вопрос перед установкой — **есть ли ramdisk в boot-разделе** устройства. От этого зависит, какой образ патчить. Установите свежее **приложение Magisk** (APK) и посмотрите на главном экране строку **Ramdisk**:
- **Ramdisk = Yes** → патчим `boot.img`; на устройствах с отдельным разделом `init_boot` (Pixel с Android 13+ и др.) — **`init_boot.img`**. Это случай большинства современных устройств.
- **Ramdisk = No** → ramdisk в boot нет, Magisk «захватывает» **recovery-раздел**: патчим `recovery.img` (см. [[#Особый случай: Magisk in Recovery (устройства без boot-ramdisk)|Magisk in Recovery]]).
> [!note] Редкое исключение
> Некоторые устройства (известны отдельные модели Xiaomi) принимают ramdisk в boot, даже когда «не должны». Автоматически это не определить — если стандартный путь не срабатывает, действуйте так, будто ramdisk в boot **есть**. Большинству об этом можно не думать.
Нужный образ (`boot.img` / `init_boot.img` / `recovery.img`) извлекают из **официальной прошивки или zip вашего кастомного ROM** — строго **той версии**, что стоит на устройстве.
## Шаг 2. Пропатчить образ и прошить (общий случай)
Стандартный путь для устройств с boot-ramdisk (например, Pixel — там `init_boot`). Порядок по [официальной инструкции](https://topjohnwu.github.io/Magisk/install.html):
- [ ] Скопировать стоковый `boot.img` / `init_boot.img` от **вашей текущей прошивки** на телефон.
- [ ] В приложении Magisk нажать **Install** (кнопка в карточке Magisk).
- [ ] *(Только для recovery-образа)* включить опцию **«Recovery Mode»**.
- [ ] Метод — **«Select and Patch a File»**, выбрать образ, запустить установку.
- [ ] Забрать пропатченный образ на ПК: `adb pull /sdcard/Download/magisk_patched_[строки].img`.
- [ ] Уйти в fastboot и прошить в **тот же раздел**, что патчили:
```bash
fastboot flash init_boot magisk_patched-*.img
# или: fastboot flash boot magisk_patched-*.img
# или: fastboot flash recovery magisk_patched-*.img
```
- [ ] *(Необязательно)* если есть отдельный раздел `vbmeta`: `fastboot flash vbmeta --disable-verity --disable-verification vbmeta.img`**может стереть данные**.
- [ ] Перезагрузиться и запустить приложение Magisk; на запрос «environment fix» согласиться и дождаться ребута. Готово.
> [!danger] Патчить образ — только на своём устройстве и от своей прошивки
> **Никогда не прошивайте чужой пропатченный образ** и не патчите образ на другом устройстве — даже той же модели. Это может привести к «кирпичу» с необходимостью полного wipe данных. Всегда патчьте `boot`/`init_boot` **на том же устройстве**, где ставите Magisk, и **от точно той прошивки**, что установлена.
> [!note] Известная проблема на Android 16 (Pixel)
> По сообщениям ([Magisk issue #9583](https://github.com/topjohnwu/Magisk/issues/9583)), на **Android 16** со свежими сборками Magisk root иногда «не берётся» после прошивки — патч не распознаётся. Обходной путь из обсуждения: **переустановить сам APK Magisk** после флеша, тогда Zygisk и модули появляются. Это баг-репорт, а не официально закрытая проблема — проверяйте актуальность.
## Особый случай: Magisk in Recovery (устройства без boot-ramdisk)
Если у устройства **нет ramdisk в boot** (`Ramdisk = No`), Magisk вынужденно **занимает recovery-раздел**. Тогда Magisk включается **только при загрузке в recovery**: обычная загрузка идёт **без** Magisk, а чтобы система стартовала с root, нужно каждый раз входить через комбинацию клавиш recovery (у каждой модели своя — легко ищется по названию устройства).
Схема (от выключенного состояния):
- **Обычное включение** → система **без** Magisk.
- **Комбо recovery** → сплеш-экран → **отпустить все кнопки** → система **с** Magisk.
- **Комбо recovery** → сплеш-экран → **долго держать Volume Up** → настоящий recovery.
В этом режиме **обновлять/ставить Magisk через кастомный recovery нельзя** — только методом «Patch Image».
## Особый случай: устройства Samsung
> [!warning] Samsung: необратимый Knox и обязательный wipe
> На Samsung установка Magisk **навсегда «сжигает» Knox Warranty Bit** (необратимо) и **при первой установке требует полного wipe данных**.
Порядок на Samsung отличается — вместо `fastboot` используется **Odin** (Windows) / **Odin4** (Linux) / **Heimdall**:
- [ ] Проверить в **Download mode**, что загрузчик разблокирован: `OEM Lock = OFF (U)` и что **KnoxGuard (RMM)** не активен (значения `Checking`/`Completed`/`Broken` = разблокирован). Активный KnoxGuard не даст поставить Magisk.
- [ ] Скачать официальную прошивку своей модели (SamFirm.NET, Frija, Samloader, Bifrost) и скопировать на телефон **AP tar** (`AP_[модель_версия].tar.md5`).
- [ ] В Magisk: **Install***(если нет boot-ramdisk — включить «Recovery Mode»)***«Select and Patch a File»** → выбрать AP tar.
- [ ] Забрать результат по ADB: `adb pull /sdcard/Download/magisk_patched_[строки].tar`. **Не использовать MTP** — он портит большие файлы.
- [ ] В **Odin** прошить `magisk_patched.tar` как **AP** вместе с `BL`, `CP` и `CSC` (именно `CSC`, а не `HOME_CSC`, — чтобы стереть данные при первой установке).
- [ ] После прошивки согласиться на factory reset; при отсутствии boot-ramdisk — загрузиться в recovery, чтобы включить Magisk. Запустить приложение Magisk и дать ему доделать настройку с автоперезагрузкой.
> [!danger] Samsung: важные запреты
> - После рутинга **OTA недоступны** — новую прошивку ставят вручную тем же патчем AP. При **апгрейде** в Odin используют `HOME_CSC` (а не `CSC`), чтобы **не** стирать данные.
> - **Никогда не восстанавливайте `boot`/`init_boot`/`recovery`/`vbmeta` обратно на сток** — это грозит «кирпичом» с восстановлением только через полный Odin-флеш с wipe.
> - Никогда не шейте стоковый AP напрямую при обновлении — всегда сперва патчьте его в Magisk.
## Root и обновления прошивки (OTA): как не терять root
Как и любой boot-based root, **Magisk слетает после OTA** — обновление перезаписывает `boot`/`init_boot`. На **A/B-устройствах** (современные Pixel и др.) переустанавливать через ПК не нужно — есть функция **«Install to Inactive Slot (After OTA)»**:
- [ ] Установить обновление (например, в LineageOS Updater / системном апдейтере), но **не перезагружаться**, когда предложит «Reboot».
- [ ] В Magisk: **Install → «Install to Inactive Slot (After OTA)»** — Magisk пропатчит неактивный слот, куда легло обновление.
- [ ] Только теперь перезагрузиться — система стартует с обновлённого слота уже с root.
> [!warning] Порядок критичен
> Сначала установка OTA в неактивный слот, **потом** Magisk в тот же слот, и лишь затем перезагрузка. Если перезагрузиться раньше — root слетит, и придётся патчить `boot`/`init_boot` вручную и шить через `fastboot`. Изредка трюк с неактивным слотом даёт сбой (зависит от версии Magisk/сборки) — тогда откатываетесь к ручному патчу текущего образа.
## Удаление Magisk
- **Через приложение Magisk** — кнопка **Uninstall** (простой и рекомендуемый способ).
- **Через кастомный recovery** — переименовать APK Magisk в `uninstall.zip` и прошить как обычный flashable-zip. Способ **устарел** и поддерживается по минимуму; на современных устройствах используйте метод «Patch Image».
> [!warning] Не стирайте cache-раздел
> Файлы правил `sepolicy.rule` некоторых модулей могут лежать в разделе `cache`. При манипуляциях **не выполняйте wipe cache**, иначе потеряете настройки модулей.
## 📚 См. также
- [[root/Magisk|Magisk — systemless-root и модули]] — обзорная заметка: что это, зачем, systemless, модули, Zygisk, скрытие root, сравнение с KernelSU
- [[root/ReSukiSU-install|Установка ReSukiSU]] — установка root **через ядро**; там же общий разбор `fastboot`, слотов A/B и почему на LineageOS удобнее Magisk
- [[Zapret/android|Обход блокировок на Android]] — смежная тема: DPI и блокировки на телефоне (root не требуется, но иногда с ним удобнее)
- 🔗 [Официальная инструкция по установке Magisk](https://topjohnwu.github.io/Magisk/install.html) — первоисточник этой заметки
- 🔗 [Репозиторий Magisk на GitHub](https://github.com/topjohnwu/Magisk) — исходники и релизы (в т.ч. Canary)
- 🔗 [Magisk issue #9583](https://github.com/topjohnwu/Magisk/issues/9583) — root «не берётся» на Android 16, обходной путь
---
> [!quote] 🤖 Эти статьи открыты — можно обучать на них ИИ
> При желании вы можете натренировать ИИ на наших статьях. Исходное форматирование и скачивание всего репозитория одним zip-архивом доступны в Forgejo: [исходник этой заметки](https://git.zapret.moe/zapretdiscordyoutube/todo/src/branch/main/root/Magisk-install.md) · [весь репозиторий](https://git.zapret.moe/zapretdiscordyoutube/todo/src/branch/main).