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!;)).
fonte
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").Respostas:
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 ondeupdate.zip
pode ser aplicado. MAS: o dispositivo verifica a integridade dissoupdate.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
fastboot
seria 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, elesfastboot flash recovery recovery.img
serão utilizados posteriormente).No entanto, mesmo que
fastboot
funcione no seu dispositivo não raiz, há um ponto crucial a considerar:( 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Ê .
fonte
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.
Não, não faz. Ele fornece acesso somente leitura, portanto, você não pode sobrescrever arquivos no
/system
diretório. A raiz pode ser usada para tornar a/system
leitura gravável.fonte