Por que o acesso root é necessário para uma ROM personalizada?

15

Eu gostaria de ser claro e, como minha pergunta indica, eu sou muito ignorante em relação aos dispositivos móveis em geral, então peço desculpas se isso for de conhecimento geral.

Digamos que eu queira instalar uma ROM personalizada em um dispositivo, parece que preciso de acesso root. Sou capaz de descobrir em todas as páginas da web como posso fazer root em um dispositivo, mas não consigo descobrir por que preciso fazer root em um dispositivo. Entendo que o root de um dispositivo simplesmente me dá acesso root no dispositivo, mas por que isso é necessário? Se eu conectar o telefone a um PC, isso não me dará acesso a todo o sistema de arquivos do dispositivo? Se sim, então por que não posso simplesmente substituir as partes relevantes do FS com a ROM que eu desejar?

Além disso, por que o root e o uso de uma ROM personalizada faz com que um dispositivo seja bloqueado? Eu não poderia simplesmente substituir a ROM que estava causando o problema com a original (que eu tinha pensado em fazer backup!;)).

R4D4
fonte
5
If I connect the phone to a PC then doesn't that give me access to the entire file system of the device?- Por padrão, não, não. Dá acesso a uma parte muito específica do sistema de arquivos (o armazenamento "externo").
Eldarerathis
11
Aqui e aqui
t0mm13b
@ t0mm13b Nenhuma dessas perguntas responde à parte PORQUE . Acho que vou em frente e colocar algo aqui.
Izzy

Respostas:

16

Resposta curta:

Por razões de segurança e garantia.

Resposta detalhada:

Isso é principalmente uma precaução tomada pela maioria dos fabricantes de dispositivos (não todos!) Para salvá-los de muitas solicitações de serviço de "brincar com crianças" (e do tipo de pessoas que querem tentar de tudo, mesmo que não estejam entendendo nada). Portanto, esses fabricantes tomaram ações especiais para evitar que "ROMs personalizadas" (ou, mais precisamente, quaisquer ROMs não fornecidas por si mesmas) fossem exibidas.

Como t0mm13b já apontou em seus comentários acima, por padrão, você não obtém acesso físico ao sistema de arquivos do seu dispositivo simplesmente conectando-o via USB. Dependendo do dispositivo, versão do Android e mais alguns critérios, você verá apenas partes. Pode ser o cartão SD inteiro (físico, no modo UMS ) ou até apenas o acesso "lógico" a partes dele via MTP . Um acesso mais privilegiado pode ser obtido via ADB ao ativar a Depuração USB - mas com uma ROM de estoque, em nenhum desses casos, você obtém acesso total .

Agora, como as atualizações são realizadas, então? Uma prática muito comum é o uso de um arquivo ZIP especial ( update.zip). Ele é colocado no cartão SD, inserido no dispositivo, e o dispositivo é inicializado em um modo especial (recuperação), de onde update.zippode ser aplicado. MAS: o dispositivo verifica a integridade disso update.zip- ele deve ser assinado com a chave do fabricante. Por razões óbvias, essa chave não está disponível gratuitamente - portanto, nenhuma ROM personalizada pode ser instalada dessa maneira em um sistema de estoque.

Tudo isso pode ser contornado apenas com o acesso de superusuário ao dispositivo - o que significa: você deve fazer o root.

Portanto, isso é para a parte PORQUE - embora não esteja lidando com a parte COMO do enraizamento. Exatamente como você pediu :)


Atualização para mais detalhes

Como Liam apontou em seu comentário que o uso fastbootseria um método para atualizar ROMs personalizadas sem a pré-condição de ter o dispositivo enraizado, fiz uma pesquisa um pouco mais para descobrir isso. Continuarei analisando isso, mas ainda assim já queria adicionar meus primeiros resultados aqui.

Até certo ponto, Liam está certo com isso: parece não apenas válido para dispositivos Samsung (como eu assumi primeiro), mas alguns outros dispositivos (não todos) também suportam esse método, sem que o root esteja envolvido (além do fato de que a maioria das ROMs personalizadas é enviada com root, é claro - assim você terá o root disponível após a instalação). No entanto, existem dispositivos que parecem exigir root mesmo fastboot flash(veja, por exemplo, TheUnlockr sobre o Iconia A100 , citação: Você deve ter feito o root no seu dispositivo antes de executar este procedimento. - e sim, eles fastboot flash recovery recovery.imgserão utilizados posteriormente).

No entanto, mesmo que fastbootfuncione no seu dispositivo não raiz, há um ponto crucial a considerar:

Para atualizar uma ROM para o seu dispositivo Android com o fastboot, você deve ter um gerenciador de inicialização desbloqueado ou um gerenciador de inicialização de engenharia

( Guia intermitente - Android - XDA-Developers )

O que significa: Se o seu carregador de inicialização estiver bloqueado, é necessário desbloqueá-lo primeiro, o que limpará (redefinição de fábrica) o seu dispositivo. Portanto, todos os dados desaparecerão assim - enquanto no root você poderia ter feito um backup completo (Nandroid, Titanium Backup) antes desta etapa. No entanto, a partir do Android 4.0, isso não é mais um problema real - como você pode fazer um backup completo via ADB (consulte: Backup completo de dispositivos não-rooteados )


Resumo:

Existem dispositivos que precisam estar enraizados antes que você possa atualizar uma ROM personalizada. Se o seu dispositivo se enquadra nessa categoria, os motivos do Por que o acesso root é necessário para a atualização de uma ROM personalizada são os mencionados acima.

No entanto: também existem dispositivos que podem ser utilizados com flash fastboot sem antes serem enraizados. Se o seu dispositivo se enquadra nessa categoria, a pergunta Por que o acesso root é necessário para fazer o flash de uma ROM personalizada se torna inválida (a resposta não é, como ex falso quodlibet sequitur ("from false pode seguir qualquer coisa"), você pode tirar uma conclusão de uma premissa errada :)

Ou seja: se o enraizamento é necessário, o acima é PORQUÊ .

Izzy
fonte
11
Você realmente não precisa de raiz para instalar uma ROM personalizada na maioria dos dispositivos;)
Liam W
@LiamW Como minha pergunta diz - eu sou muito ignorante com sistemas operacionais móveis, e Izzy tem 13,3k de reputação, o que indica que ele sabe mais sobre isso do que eu; como tal, presumo que a resposta dele esteja totalmente correta, pois não sei nada ao contrário; sua resposta também foi a mais votada (novamente indicando que é tecnicamente correta). No entanto, se você acredita que a resposta dele está incorreta, fique à vontade para atualizá-la e, se os votos mudarem, eu mudarei a resposta aceita.
R4D4
11
@LiamW Você quer dizer "na maioria dos dispositivos Samsung ". Eu nunca vi um dispositivo que você pudesse exibir uma ROM personalizada sem fazer root, desculpe, e vi alguns dispositivos. Bem, eu mantive longe de bombardeiros de plástico ... XD Então, tecnicamente, seu último comentário está incorreto: D
Izzy
11
É uma galinha e um ovo ... você precisa de raiz para poder exibir uma ROM personalizada e, para exibir uma ROM personalizada, geralmente precisa de um gerenciador de inicialização desbloqueado com um ambiente de recuperação raiz ... e um ambiente de recuperação raiz como como CWM / TWRP .... catch-22!
precisa saber é
11
@ R4D4 Uma resposta aceita deve ser a que mais ajuda você. Se você não está em posição de avaliar completamente a resposta, é perfeitamente aceitável não aceitar uma. Aceitar a resposta mais alta só porque é a mais alta, ou de alguém com alta reputação, é definitivamente desaprovado. No final do dia, embora a decisão seja sua, ninguém deve lhe dizer de maneira diferente.
Mateus Leia
7

Geralmente, você não precisa fazer root no telefone para instalar a ROM personalizada; é necessário fazer root no telefone para instalar um mecanismo para instalar a ROM personalizada (como uma imagem de recuperação personalizada).

Alguns telefones possuem gerenciadores de inicialização desbloqueáveis ​​- você pode atualizar os arquivos boot e system.img através do gerenciador de inicialização sem a necessidade de fazer root.

Você também pode exibir uma imagem de recuperação personalizada usando o fastboot sem estar enraizada .

Você precisaria instalar uma recuperação personalizada, pois a recuperação de estoque verifica se o zip de atualização está assinado - e a maioria dos zips de ROM personalizados não estão assinados.

Pode ser necessário fazer o root para instalar uma imagem de recuperação personalizada se o dispositivo não suportar o fastboot, mas geralmente você não precisa - ele vem apenas com a imagem que você instala.

Os dispositivos Samsung têm o modo de download - não é necessário ter root para usá-lo, você só precisa do ODIN.

Se eu conectar o telefone a um PC, isso não me dará acesso a todo o sistema de arquivos do dispositivo? Se sim, então por que não posso simplesmente substituir as partes relevantes do FS com a ROM que eu desejar?

Não, não faz. Ele fornece acesso somente leitura, portanto, você não pode sobrescrever arquivos no /systemdiretório. A raiz pode ser usada para tornar a /systemleitura gravável.

Liam W
fonte
11
"Geralmente, você não precisa fazer o root no telefone para instalar a ROM personalizada, é necessário fazer o root no telefone para instalar um mecanismo para instalar a ROM personalizada (como uma imagem de recuperação personalizada)." certamente se resume a que você precisa de raiz para deixar de ter o estoque do sistema operacional pronto para uma ROM personalizada?
precisa saber é o seguinte
11
@GAThrawn Nope. Você pode exibir uma recuperação personalizada usando o fastboot. Você não precisa de raiz para acesso fastboot (e às vezes você precisa usar fastboot a raiz de acesso)
Liam W
11
Porém, muitos dispositivos que não são da Samsung não possuem gerenciadores de inicialização desbloqueáveis ​​(principalmente os mais antigos), portanto, você não pode exibir uma recuperação personalizada sem antes explorar o gerenciador de inicialização de alguma forma ou instalar a recuperação de outra maneira (ROM Manager / Goo Manager). Muitas vezes, isso envolve fazer o enraizamento, embora nem sempre seja esse o caso. Eu acho que é isso que @GAThrawn e outros estão tentando entender. Mais fabricantes começaram a oferecer uma ferramenta de desbloqueio do gerenciador de inicialização, mas muitos ainda não o fizeram. Os dispositivos da Motorola, por exemplo, são notoriamente difíceis de obter ROMs personalizadas em comparação com outras.
Eldarerathis