Jak uzyskać pozwolenie na utworzenie tego pliku w powłoce Androida?

8

Próbuję zrootować Kindle i utknąłem. Odmowa uzyskania zgody i nie wiem jak lub jakie uprawnienia do zmiany.

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:/ $

Używam Ubuntu 12.04, jeśli to robi różnicę.

hortstu
źródło
Osiągnąłem uprawnienia root bez uzyskiwania tych uprawnień. Dziękuję za wszelką pomoc.
hortstu

Odpowiedzi:

7

Krótka odpowiedź: w tym celu musisz zrootować urządzenie.

Objaśnienie:shell użytkownik nie ma zgody tam zapisu. /dataKatalog nie jest własnością shell, ani też ich grupy mecz: na moim Motorola Milestone 2, na przykład, jest własnościąsystem:system i ma uprawnienia drwxrwxr-x, natomiast shellnależy do shelljedynej grupy. Tylko na zrootowanym urządzeniu możesz zmienić uprawnienia lub mieć wystarczające uprawnienia, aby je zastąpić.

PS: Na Androidzie sudopolecenie jest po prostu wywoływane su- co wyjaśnia twój ostatni błąd ( /system/bin/sh: sudo: not found) w przypadku, gdy Twoje urządzenie jest już zrootowane.

Izzy
źródło
@hortstu, jeśli uznasz to za pomocne, nie wahaj się głosować (kliknij strzałkę „w górę” obok) lub, jeśli w tajemniczy sposób rozwiązałeś problem, nawet go zaakceptuj (przycisk „znacznik wyboru”). Ale cokolwiek zdecydujesz: Cieszę się, że mogłem pomóc :)
Izzy
Chciałbym, ale nadal nie mam wystarczającej reputacji.
hortstu
Ups ... Pomyślałem przynajmniej o odpowiedziach na własne pytanie ... Cóż, w tym przypadku przepraszam za „rzeczy dla nauczycieli”. Teraz masz przedstawiciela :)
Izzy
7

Spróbuj tego:

powłoka adb "cd / data / local && mkdir tmp"
powłoka adb mv / data / local / tmp /data/local/tmp.bak
powłoka adb ln -s / data / data / local / tmp
adb restart

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

Tworząc link do od /datado /data/local/tmp, Android uwierzą piszesz aby /data/local/tmpchociaż jesteś rzeczywiście piśmie do /data. Ta metoda jest faktycznie używana do pomyślnego zrootowania wielu urządzeń, chociaż niektóre mają ją specjalnie wbuild.prop , że /data/tmpjest poza zasięgiem.

Ta metoda może nie działać z ogniem Kindle, chociaż nie próbowałem. Zrootowałem Ogień Kindle, ale obejmował on zupełnie inną metodę. Po pierwsze, odzyskanie TWRP musiało zostać sflashowane. Następnie wykorzystaj fałszywy obraz odzyskiwania. Następnie możesz uzyskać dostęp do kopiowania przez pliki binarne su i busybox.

Możesz jednak wypróbować local.propmetodę opisaną powyżej. Jest kompatybilny z wieloma urządzeniami.

Skippy
źródło
Dzięki za pomoc. Udało mi się uzyskać root. Z powodów, których nie rozumiem, udało mi się pominąć kilka kroków w samouczku i zadziałało idealnie.
hortstu
2

Nie wykonałeś poprawnie instrukcji rootowania.

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

W powyższej instrukcji utworzysz dowiązania symboliczne do katalogu / data / z / data / local / tmp /, dzięki czemu plik /data/local.prop będzie zapisywalny po ponownym uruchomieniu.

Upewnij się, że postępujesz dokładnie według instrukcji, w tym restartów i wszystkich, i upewnij się, że sprawdzasz na każdym kroku, że nie powodują nieoczekiwanego komunikatu o błędzie.

Lie Ryan
źródło
Postępowałem właściwie zgodnie z instrukcją rootowania. Po prostu użyłem innej techniki rootowania niż ta, z którą się połączyłeś. Dziękuję za pomoc, ale udało mi się pominąć kilka kroków z powodów, których nie rozumiem i zrootowałem rozpałkę.
hortstu