HTC Magic, рутированный с помощью CyanogenMod 5. Пытался установить busybox с помощью "Busybox Installer" из Маркета, в итоге система странно борется. Андроид не загружается, зависает на заставке. Оболочка ADB, однако, работает. С другой стороны, почти ни одна из команд не работает.
Похоже, файл busybox находится в /system/xbin. Однако всякий раз, когда я его вызываю, я получаю «Отказано в доступе». Даже после судо.
Выполнение общих команд, таких как ls, cp, ln, дает то же сообщение об ошибке: «Отказано в доступе». Похоже, это симлинки на busybox, который забит, см. выше.
/system/bin/toolbox есть, но он отказывается выполнять большинство полезных команд с единообразным сообщением «Нет такого инструмента». Ls, cp, mount, chmod, chown - "Нет такого инструмента". Опытным путем обнаружил, что set, ps, kill, reboot работают. Есть ли список команд панели инструментов?
Единственное релевантное сообщение в logcat: «02-02 01:36:38.280: E/logwrapper (61): выполнение /system/xbin/busybox не удалось: разрешение отклонено». Я вроде знал это.
Я могу писать на SD-карту. Есть ли способ перепрошить busybox, сделав его исполняемым?
Есть ли исполняемый файл где-нибудь в /data, чтобы я мог отправить туда копию busybox?
Я могу перезагрузиться в режиме восстановления, который является собственным режимом восстановления Android.
Есть идеи, как вернуть систему в рабочее состояние? Телефон с нуля, так что потеря данных не проблема - там нет хороших данных.
Кажется, что создание исполняемого файла busybox каким-то образом вернет все обратно. Я совершенно потерян, однако, как это сделать. И я довольно удивлен, что набор инструментов не поддерживает chmod.
РЕДАКТИРОВАТЬ: забавная точка данных. Когда я загружаюсь в рекавери, я все еще могу сделать оболочку ADB. И я получаю совсем другое окружение — там командная строка с ls, busybox (!) и прочее. /система почти пуста. Можно ли из этой среды как-то вернуться в обычную /system? Доступна команда mount.
Ура, телефон снова загружается.
Вот волшебный рецепт.
Boot into recovery.
adb shell
mkdir /data/s
mount -o rw -t yaffs2 /dev/block/mtdblock3 /data/s
chmod 755 /data/s/xbin/busybox
Reboot the phone.
Моя оболочка вернулась. Теперь есть странная причуда - ls (предполагается, что из busybox) думает, что ADB является терминалом ANSI, и пытается выдать escape-последовательности ANSI. Тем не менее, ура.
Мэтью Рид
эльдарератис
/data/local
, а затем использовать его дляchmod
того, который находится в/system/xbin
.Сева Алексеев
эльдарератис
Мэтью Рид
su
пока в рекавери прилаживать? Это может сделать все видимым. На моем Vibrant «окружающая среда» точно такая же, как и в обычном режиме восстановления, поэтому я надеюсь, что и для вас она не отличается.эльдарератис
/system
раздел устройства из восстановления.mount /system
сам по себе работает для меня, но я не знаю, зависит ли это от устройства/восстановления/и т. д. Это на HTC EVO.Сева Алексеев