Почему root-доступ необходим для пользовательского ПЗУ?

15

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

Скажем, я хочу установить пользовательское ПЗУ на устройство, тогда, как мне кажется, мне нужен root-доступ. Я могу узнать от каждой веб - страницы , на том , как я могу корень устройства, но я не могу найти , как , почему мне нужно искоренять устройство. Я понимаю, что рутирование устройства просто дает мне root-доступ на устройстве, но зачем это нужно? Если я подключу телефон к ПК, это не даст мне доступ ко всей файловой системе устройства? Если так, то почему я не могу просто перезаписать соответствующие части FS любым ПЗУ, которое я хочу?

Кроме того, почему рутирование и использование пользовательского ПЗУ приводят к блокировке устройства? Не мог ли я просто перезаписать ПЗУ, которое вызывало проблему, с оригинальным (что я думал сделать резервную копию!;)).

R4D4
источник
5
If I connect the phone to a PC then doesn't that give me access to the entire file system of the device?- По умолчанию нет. Это дает вам доступ к очень определенной части файловой системы («внешнему» хранилищу).
eldarerathis
1
Здесь и здесь
t0mm13b
@ t0mm13b Ни один из этих вопросов не отвечает на вопрос ПОЧЕМУ . Думаю, я пойду и положу что-нибудь сюда.
Иззи

Ответы:

16

Короткий ответ:

По соображениям безопасности и гарантии.

Подробный ответ:

Это в основном мера предосторожности, принятая большинством (не всеми!) Производителей устройств, чтобы избавить их от слишком большого количества запросов на обслуживание от «играющих детишек» (а также людей, которые хотят попробовать все, даже если они ничего не понимают). Поэтому эти производители предприняли специальные действия, чтобы избежать «прошивки» пользовательских ПЗУ (или, точнее, любых ПЗУ, не предоставленных ими).

Как уже упоминалось выше в t0mm13b в его комментариях, по умолчанию вы не получаете физического доступа к файловой системе вашего устройства, просто подключив ее через USB. В зависимости от устройства, версии Android и некоторых других критериев, вы можете видеть только части. Это может быть вся SD-карта (физическая, в режиме UMS ) или даже только «логический» доступ к ее частям через MTP . Некоторый более привилегированный доступ может быть получен через ADB при включении отладки по USB - но со стандартным ПЗУ, ни в одном из этих случаев вы не получаете полный доступ .

Теперь, как обновляются тогда? Очень распространенная практика - использование специального файла ZIP ( update.zip). Это помещается на SD-карту, которая вставляется в устройство, и устройство загружается в специальный режим (восстановление), откуда update.zipможно применить. НО: устройство проверяет целостность этого update.zip- оно должно быть подписано ключом производителя. По понятным причинам этот ключ недоступен в свободном доступе, поэтому на такой стандартной системе не может быть установлено пользовательское ПЗУ.

Все эти вещи могут быть обойдены только с доступом суперпользователя к устройству - что означает: вы должны его рутировать.

Так что это для ПОЧЕМУ часть - в то время как не обрабатывает КАК часть рутирования. Точно так, как вы просили :)


Обновление для еще более подробной информации

Как Лиам указал в своем комментарии, что использование fastbootбудет методом для прошивки пользовательских ПЗУ без предварительного условия рутирования устройства, я провел небольшое исследование, чтобы узнать об этом. Я буду продолжать изучать это, но все же уже хотел добавить свои первые результаты здесь.

До определенного момента Лиам был прав с этим: он кажется не только действительным для устройств Samsung (как я предполагал вначале), но некоторые другие устройства (не все) также поддерживают этот метод без участия root (за исключением того факта, что Конечно, большинство пользовательских ПЗУ будут поставляться с root-правами - так что у вас будет root-доступ после их установки). Тем не менее, существуют устройства, которые, кажется, требуют root даже для fastboot flash(см., Например, TheUnlockr относительно Iconia A100 , цитата: вы должны были рутировать свое устройство перед выполнением этой процедуры. - И да, они используют fastboot flash recovery recovery.imgвпоследствии).

Тем не менее, даже если это fastbootработает для вашего рутированного устройства, есть один важный момент для рассмотрения:

Чтобы прошить ROM для вашего устройства Android с помощью fastboot, у вас должен быть разблокированный загрузчик или инженерный загрузчик

( Руководство по перепрошивке - Android - XDA-Developers )

Что означает: если ваш загрузчик заблокирован, вам нужно сначала разблокировать его, что приведет к удалению (сброс к заводским настройкам) вашего устройства. Таким образом, все данные будут утеряны навсегда - хотя с помощью root вы могли бы сделать полное резервное копирование (Nandroid, Titanium Backup) до этого шага. Однако, начиная с Android 4.0, это больше не является реальной проблемой - так как вы можете сделать полное резервное копирование через ADB (см. Полное резервное копирование нерутированных устройств )


Резюме:

Существуют устройства, требующие рутирования, прежде чем вы сможете прошить пользовательское ПЗУ. Если ваше устройство попадает в эту категорию, причины, по которым требуется root-доступ для прошивки пользовательского ПЗУ , указаны выше.

Тем не менее: Есть также устройства, которые могут быть прошиты с использованием fastboot без рута. Если ваше устройство попадает в эту категорию, вопрос « Зачем нужен root-доступ для прошивки пользовательского ПЗУ» становится недействительным (ответ «нет», поскольку ex falso quodlibet sequitur («из ложного может последовать что угодно») вы можете сделать любой вывод из неверной предпосылки :)

То есть: ЕСЛИ требуется рут, то выше почему .

Иззи
источник
1
На самом деле вам не нужен root для установки пользовательского ПЗУ на большинстве устройств;)
Liam W
@LiamW Как говорится в моем вопросе - я очень не осведомлен о мобильных ОС, и Иззи имеет репутацию 13,3 тыс., Что указывает на то, что он знает об этом больше, чем я сам; как таковой, я предполагаю, что его ответ является полностью правильным, поскольку я ничего не знаю об обратном; Кроме того, его ответ также получил наибольшее количество голосов (опять же, это указывает на его техническую правильность). Тем не менее, если вы считаете, что его ответ неправильный, не стесняйтесь обновлять свой ответ, а если голоса будут отброшены, я изменю принятый ответ.
R4D4
1
@LiamW Вы имеете в виду «на большинстве устройств Samsung ». Я никогда не видел устройства, на котором можно было бы прошить пользовательское ПЗУ без рута, извините, и я видел некоторые устройства. Ну, я держался подальше от пластиковых бомбардировщиков ... XD Так что технически ваш последний комментарий неверен: D
Иззи
1
Это курица и яйцо ... вам нужен root, чтобы иметь возможность прошить пользовательское ПЗУ, а для того, чтобы прошить пользовательское ПЗУ, вам обычно нужен разблокированный загрузчик с рутированной средой восстановления ... и рутированная среда восстановления, такая как CWM / TWRP .... ловить-22!
t0mm13b
1
@ R4D4 Принятый ответ должен помочь вам больше всего. Если вы не в состоянии полностью оценить ответ, то вполне нормально не принимать его. Принятие самого высокого ответа только потому, что он самый высокий, или ответ от кого-то с высоким повторением, определенно осуждается. В конце концов, хотя это ваше решение, никто не должен говорить вам иначе.
Мэтью Читал
7

Как правило, вам не нужно рутировать телефон для установки пользовательского ПЗУ, вам нужно рутировать телефон для установки механизма установки пользовательского ПЗУ (такого как пользовательский образ для восстановления).

Некоторые телефоны имеют разблокируемые загрузчики - вы можете прошивать загрузочные файлы и файлы system.img через загрузчик без необходимости рута.

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

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

Вам может потребоваться root для установки пользовательского образа восстановления, если ваше устройство не поддерживает fastboot, но, как правило, вам это не нужно - оно просто поставляется с установленным вами образом.

Устройства Samsung имеют режим загрузки - для этого не нужно рутироваться, просто нужен ODIN.

Если я подключу телефон к ПК, это не даст мне доступ ко всей файловой системе устройства? Если так, то почему я не могу просто перезаписать соответствующие части FS любым ПЗУ, которое я хочу?

Нет, это не так. Это дает вам доступ только для чтения, поэтому вы не можете перезаписывать файлы в /systemкаталоге. Root может быть использован для /systemчтения и записи.

Лиам W
источник
1
«Как правило, вам не нужно рутировать телефон для установки пользовательского ПЗУ, вам нужно рутировать телефон для установки механизма для установки пользовательского ПЗУ (такого как пользовательский образ для восстановления)». наверняка сводится к тому, что вам нужен root, чтобы перейти от наличия готовой ОС к заказному ПЗУ?
GAThrawn
1
@ GAThrawn Нет. Вы можете прошить кастомное рекавери используя fastboot. Вам не нужен root для доступа к fastboot (а иногда вам нужно использовать fastboot для доступа к root)
Liam W
1
Однако многие устройства не Samsung не имеют разблокируемых загрузчиков (особенно старых), поэтому вы не можете прошить собственное восстановление без предварительной загрузки загрузчика или установки другого способа (ROM Manager / Goo Manager). Часто это связано с укоренением, хотя это не всегда так. Я думаю, что именно к этому @GAThrawn и другие пытаются добраться. Все больше производителей начали предлагать инструмент разблокировки загрузчика, но многие до сих пор этого не сделали. Например, на устройствах Motorola сложно установить пользовательские ПЗУ по сравнению с другими.
eldarerathis