Read only file system на Android: причины ошибки и способы исправления

Ошибка «Read-only file system» на Android появляется в тот момент, когда система или пользователь пытается записать данные в раздел, смонтированный только для чтения — чаще всего это /system, /vendor или /product при работе через ADB, либо карта памяти, переведённая контроллером в защищённый режим. Текст сообщения может отличаться: «failed to copy ... Read-only file system», «mount: permission denied» или отказ файлового менеджера сохранить изменённый файл. Проблема не означает поломку устройства — она указывает на ограничение прав записи, которое либо снимается программно, либо сигнализирует об аппаратном износе накопителя.

Дальше разберём, где именно возникает ошибка, почему современные версии Android блокируют запись в системные разделы даже с root-правами и какие шаги безопасны в каждом сценарии. Инструкции разделены по ситуациям, потому что порядок действий для ADB, recovery и SD-карты принципиально разный.

Почему Android отказывается записывать в системный раздел

Начиная с определённых поколений платформы, Google перевела системные разделы на режим только для чтения в рамках механизма Verified Boot и динамических разделов (dynamic partitions). Разделы /system, /vendor, /product объединены в так называемый super-раздел, и их содержимое проверяется по контрольным суммам при загрузке. Любая модификация нарушает целостность, поэтому система монтирует их в режиме ro (read-only).

Даже наличие root-прав само по себе не делает раздел записываемым: нужно явно перемонтировать его в режим rw, а на устройствах с динамическими разделами это часто невозможно без специальных обходных решений. Именно поэтому команда adb push в /system завершается ошибкой даже на рутированном смартфоне.

Отдельный случай — карта памяти. Контроллер microSD при критическом износе ячеек переводит карту в аппаратный режим «только чтение», чтобы дать возможность скопировать данные. Такая защита не снимается программно — это важный диагностический признак, который мы рассмотрим ниже.

Диагностика: где именно возникает ошибка

Прежде чем что-либо исправлять, определите контекст появления сообщения. От этого зависит весь дальнейший план действий.

  • 🖥️ ADB или терминал: ошибка при adb push, adb remount или редактировании файлов в /system — проблема в режиме монтирования раздела.
  • 📁 Файловый менеджер: не сохраняются файлы на внутренний накопитель или SD-карту — проверяйте права приложения и состояние карты.
  • 💾 Только SD-карта: файлы читаются, но не удаляются и не записываются даже с ПК — вероятен аппаратный перевод карты в read-only.
  • 🔧 Кастомное recovery: ошибка при прошивке или изменении разделов — раздел смонтирован в режиме ro или повреждена файловая система.

Быстрая проверка режима монтирования выполняется одной командой в ADB shell или терминале на устройстве:

mount | grep system

Если в выводе видны флаги ro — раздел действительно смонтирован только для чтения, и проблема подтверждена. Если же стоит rw, но запись всё равно не работает, причина глубже: повреждение файловой системы или аппаратные ограничения.

📊 Где вы столкнулись с ошибкой Read-only file system?
При работе через ADB
В файловом менеджере
При записи на SD-карту
В кастомном recovery

Исправление при работе через ADB

Классическая последовательность для устройств с root-доступом выглядит так: сначала запросить права суперпользователя в shell, затем перемонтировать нужный раздел. Команды выполняются по одной, и после каждой стоит проверять результат.

adb shell

su

mount -o rw,remount /system

На некоторых устройствах вместо /system нужно указывать корневой раздел / или конкретный путь, например /vendor. Если команда возвращает «Permission denied» — root либо отсутствует, либо менеджер прав суперпользователя не выдал разрешение оболочке. Проверьте, подтверждён ли запрос root на экране устройства.

На устройствах с динамическими разделами команда adb remount может потребовать предварительного отключения проверки целостности через adb disable-verity с последующей перезагрузкой. Это работает не везде: на ряде прошивок функция заблокирована, и единственный рабочий путь — модификация через Magisk-модули, которые изменяют систему бессистемно (systemless), не трогая сам раздел.

⚠️ Внимание: отключение проверки целостности (verity) и перемонтирование системных разделов может привести к bootloop — устройство перестанет загружаться. Перед любыми изменениями сделайте резервную копию важных данных и убедитесь, что знаете способ восстановить прошивку для вашей конкретной модели.

☑️ Подготовка перед перемонтированием раздела

Выполнено: 0 / 5

Ошибка на SD-карте: программная защита или износ

С картой памяти ситуация иная. Сначала выполните безопасные проверки: извлеките карту, подключите её к компьютеру через кардридер и попробуйте записать любой файл. Если запись невозможна и на ПК, проверьте физический переключатель защиты от записи на адаптере SD — он должен быть в положении «разблокировано».

Если переключатель в порядке, а карта по-прежнему read-only, высока вероятность, что контроллер карты самостоятельно перевёл её в режим только для чтения из-за критического износа памяти. Это необратимый аппаратный механизм защиты данных. В таком случае:

  • 💾 Немедленно скопируйте все важные файлы на компьютер, пока карта читается.
  • 🔍 Проверьте состояние карты фирменными или диагностическими утилитами на ПК.
  • 🚫 Не форматируйте карту «для проверки» — при аппаратном read-only форматирование всё равно не выполнится, а попытки низкоуровневых вмешательств могут ускорить отказ.
  • 🛒 Замените карту на новую — восстановить изношенную память программно невозможно.

Если же на ПК карта записывается нормально, а ошибка возникает только на смартфоне — дело в Android. Проверьте, выданы ли приложению разрешения на доступ к хранилищу, и не используется ли карта как adoptable storage с повреждённой файловой системой. В последнем случае помогает резервное копирование и переформатирование карты средствами самого устройства.

Ошибка в кастомном recovery

В средах вроде TWRP сообщение о read-only появляется, когда раздел смонтирован в режиме чтения или повреждён. Порядок безопасных действий: сначала откройте раздел монтирования в интерфейсе recovery и проверьте, какие разделы подключены и в каком режиме. Многие recovery позволяют снять режим «только чтение» переключателем прямо в меню монтирования.

Если раздел не монтируется вовсе или монтируется с ошибками, возможна проблема файловой системы. Некоторые recovery предлагают функцию проверки и восстановления раздела — используйте её до попыток форматирования. Точные названия пунктов меню зависят от версии recovery и порта под конкретное устройство, поэтому сверяйтесь с инструкцией для вашей модели.

⚠️ Внимание: форматирование раздела data в recovery удаляет все пользовательские данные, включая внутреннее хранилище. Не путайте format data с обычной очисткой кэша — это принципиально разные операции с разными последствиями.

Сравнение сценариев и методов решения

Сценарий Вероятная причина Способ решения Риск
ADB, запись в /system Раздел смонтирован в ro mount -o rw,remount с root Средний (bootloop)
Динамические разделы Verified Boot, super-раздел Magisk-модули (systemless) Низкий
SD-карта на ПК и телефоне Аппаратный износ контроллера Копирование данных, замена карты Нет (решение — замена)
SD-карта только на телефоне Права доступа, ФС карты Проверка разрешений, форматирование Низкий
Кастомное recovery Режим ro или повреждение ФС Перемонтирование, восстановление ФС Средний

Как видно из таблицы, универсального решения нет: для системного раздела ключевым фактором является поколение Android и наличие динамических разделов, а для карты памяти — её физическое состояние. Выбирайте метод строго под свой сценарий.

Почему Magisk считается более безопасным способом модификации

Magisk использует подход systemless: изменения накладываются поверх системного раздела на этапе загрузки, а сам раздел остаётся нетронутым и проходит проверку целостности. Удаление модуля или сброс настроек Magisk возвращает устройство к исходному состоянию без перепрошивки. Именно поэтому для изменения системных файлов на современных версиях Android рекомендуют модули, а не прямую запись в /system.

Что делать, если ничего не помогло

Если перемонтирование не выполняется, root отсутствует, а модификация системы необходима — остановитесь и оцените, действительно ли задача требует записи в системный раздел. Многие цели (блокировка рекламы, смена hosts, замена системных приложений) достигаются альтернативными средствами без правки /system: локальными VPN-фильтрами, ADB-командами отключения пакетов (pm disable-user) или Magisk-модулями.

Если же ошибка read-only появляется на внутреннем накопителе при обычном использовании — например, не сохраняются фото или не устанавливаются приложения — это тревожный симптом возможной деградации флеш-памяти устройства. Скопируйте данные, проверьте свободное место и попробуйте сброс до заводских настроек. При повторении проблемы после сброса вероятен аппаратный дефект, и дальнейший путь — диагностика в сервисном центре.

Частые вопросы

Можно ли исправить Read-only file system без root-прав?

Для системных разделов — практически нет: запись в /system требует прав суперпользователя и перемонтирования. Без root доступны только альтернативы, не трогающие раздел: ADB-команды отключения приложений, VPN-фильтры, настройки системы. Для SD-карты root не нужен — там проблема решается проверкой разрешений, форматированием или заменой карты.

Почему команда mount -o rw,remount возвращает Permission denied?

Чаще всего shell не получил права суперпользователя: либо root на устройстве отсутствует, либо запрос не подтверждён в менеджере root-прав. Выполните su отдельно и проверьте, появился ли запрос на экране. Также на устройствах с динамическими разделами перемонтирование может быть заблокировано на уровне прошивки.

SD-карта стала read-only на всех устройствах — это исправимо?

Если карта не записывается ни на смартфоне, ни на ПК, а переключатель защиты на адаптере в правильном положении — почти наверняка контроллер карты перевёл её в защитный режим из-за износа. Это необратимо: скопируйте данные и замените карту. Программного способа снять аппаратную защиту не существует.

Опасно ли отключать verity через adb disable-verity?

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

Ошибка появляется при обычном использовании, без ADB и root — что это?

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