Comment obtenir l'autorisation de créer ce fichier dans un shell Android?

8

J'essaie de rooter un Kindle et je suis bloqué. Obtention d'une autorisation refusée et je ne sais pas comment ni quelles autorisations modifier.

mike@Inspiron:~/Downloads/android-sdk-linux/platform-tools$ adb shell
shell@android:/ $ echo 'ro.kernel.qemu=1' > /data/local.prop
/system/bin/sh: cannot create /data/local.prop: Permission denied
1|shell@android:/ $ sudo echo 'ro.kernel.qemu=1' > /data/local.prop            
/system/bin/sh: cannot create /data/local.prop: Permission denied
1|shell@android:/ $ sudo
/system/bin/sh: sudo: not found
127|shell@android:/ $

J'utilise Ubuntu 12.04 si cela fait une différence.

Hortstu
la source
J'ai atteint la racine sans avoir acquis ces autorisations. Merci pour toute aide.
hortstu

Réponses:

7

Réponse courte: vous devrez rooter votre appareil pour cela.

Explication: L' shellutilisateur n'y a aucune autorisation d'écriture. Le /datarépertoire n'appartient pas à shell, ni leur groupe ne correspond: sur mon Motorola Milestone 2, par exemple, il appartient à system:systemet a les autorisations drwxrwxr-x, alors qu'il shellappartient au shellgroupe uniquement. Uniquement sur un appareil rooté, vous pouvez soit modifier les autorisations, soit avoir les privilèges suffisants pour les remplacer.

PS: Sur Android, la sudocommande est simplement appelée su- ce qui explique votre dernière erreur ( /system/bin/sh: sudo: not found) au cas où votre appareil est déjà rooté.

Izzy
la source
@hortstu si vous l'avez trouvé utile, n'hésitez pas à voter (cliquez sur la flèche "vers le haut" à côté) ou, s'il a mystérieusement résolu votre problème, acceptez-le même (le bouton "coche"). Mais quoi que vous décidiez: je suis content d'avoir pu aider :)
Izzy
J'adorerais mais je n'ai toujours pas assez de réputation.
hortstu
Oups ... J'ai pensé au moins aux réponses à vos propres questions ... Eh bien, dans ce cas désolé pour les "trucs d'enseignant". Maintenant, vous avez le représentant :)
Izzy
7

Essaye ça:

adb shell "cd / data / local && mkdir tmp"
adb shell mv / data / local / tmp /data/local/tmp.bak
adb shell ln -s / data / data / local / tmp
adb reboot

adb wait-for-device
adb shell rm /data/local.prop
adb shell "echo \" ro.kernel.qemu = 1 \ "> /data/local.prop"
adb reboot

En créant un lien vers de /dataà /data/local/tmp, Android pensera que vous écrivez /data/local/tmpmême si vous écrivez réellement vers /data. Cette méthode est en fait utilisée pour rooter avec succès de nombreux appareils, bien que certains l'ont spécifiquement dans le build.propqui /data/tmpest hors limites.

Cette méthode peut ne pas fonctionner avec un Kindle Fire, mais je n'ai pas essayé. J'ai enraciné un Kindle Fire, mais cela impliquait une méthode complètement différente. Tout d'abord, la récupération TWRP devait être flashée. Ensuite, un faux exploit d'image de récupération. Ensuite, vous pouvez accéder à la copie de vos binaires su et busybox.

Vous pouvez essayer la local.propméthode comme je l'ai décrit ci-dessus. Il est compatible avec de nombreux appareils.

Skippy
la source
Merci de votre aide. J'ai réussi à atteindre la racine. Pour des raisons que je ne comprends pas, j'ai pu ignorer quelques étapes du didacticiel et cela a parfaitement fonctionné.
hortstu
2

Vous n'avez pas suivi correctement l'instruction d'enracinement.

http://rootzwiki.com/topic/34162-root-kindlefire-7hd-probably-the-other-2ndgen-kindlefire/

L'instruction ci-dessus vous obligerait à créer des liens symboliques vers le répertoire / data / à partir de / data / local / tmp /, ce qui rendrait le /data/local.prop accessible en écriture après un redémarrage.

Assurez-vous de suivre les instructions avec précision, y compris les redémarrages et tout, et assurez-vous de vérifier à chaque étape qu'elles ne produisent pas de message d'erreur inattendu.

Lie Ryan
la source
J'ai suivi correctement l'instuction d'enracinement, j'utilisais simplement une technique de racine différente de celle à laquelle vous êtes lié. Merci pour votre aide mais j'ai finalement pu sauter quelques étapes pour des raisons que je ne comprends pas et j'ai enraciné le Kindle.
hortstu