2012-06-11 5 views
6

Я пострадал от использования adb.exe.Разрешено разрешение на использование андроида adb

Я хотел использовать adb.exe приглашение оболочки так же, как Баш, так что я решил изменить Баш по умолчанию Двоичному (конечно двоичному был крест скомпилированных, и все было идеально)

изменения Баш двоичным следует ниже порядка

  1. adb remount
  2. adb push bash /system/bin/

  3. adb shell

  4. cd /system/bin
  5. chmod 777 bash
  6. mv sh sh.bak
  7. ln -s bash sh

первое изменение было успешным, но проблема произошла, когда вторая попытка.

Я нажимаю новый бинарный файл bash, но я пропустил разрешение 777 изменения bash и отключил adb shell.

после

C:\Program Files (x86)\Android\android-sdk\platform-tools>adb.exe shell 
- exec '/system/bin/sh' failed: Permission denied (13) - 

C:\Program Files (x86)\Android\android-sdk\platform-tools> 

Есть ли хорошая идея, чтобы устранить эту проблему разрешения?

пожалуйста, помогите мне ...

ответ

1

Если устройство не разбилось полностью (/ система/бен/ш является зависимостью для многих вещей - перезагрузка не очень далеко!) И системный раздел все еще доступен для записи, возможно, вы сможете adb нажимать новую копию bash, где вы должны установить биты разрешения по желанию в хост-системе, прежде чем нажимать ее (возможно, вам придется использовать cygwin или даже linux, чтобы имел разрешение биты локально)

Похоже, устройство укоренилось, поэтому вы можете настроить или настроить приложение эмулятора терминала, чтобы дать вам сеанс, используя резервную копию sh, запустить резервное копирование sh снова, как root, используя некоторый инструмент эскалации, а затем устраните проблему.

Если у вас есть модифицированное восстановление с помощью adb, вы могли бы исправить его оттуда, установив (обычный) системный раздел вручную.

Последняя помощь будет восстанавливаться с изображения, подписанного вендором.

Надеюсь, вы получите неувязку, , но, возможно, вы узнали из этого опыта. - изменение оболочки по умолчанию, вероятно, не очень хорошая идея. Было бы лучше загрузить вашу собственную оболочку под другим именем и запустить ее вручную.

+0

есть другой пользовательский терминал не только adb ?. Если есть терминал, который запускает определенный двоичный код, который находится в моем телефоне, проблема будет легко исправлена. но я не могу найти этот пользовательский терминал, можете ли вы дать мне несколько ключевых слов об этом? –

+0

Я установил разрешение в linux и нажимаю этот двоичный код на свой телефон. но ошибка разрешения все еще происходит. Я думаю, что разрешение не является собственностью файла. thx –

+0

У вас может возникнуть другая проблема, выходящая за пределы разрешений файла, попробуйте вернуть копию исходной оболочки Android. Любое приложение терминала, которое вы создаете из источника, должно быть настроено в том, что он запускает, возможно, некоторые готовые из них даже предлагают это как вариант меню, хотя я не помню, чтобы это видел. –

1

Общее решение для таких задач: удаление системного приложения и все такое.

adb shell 
mount -o rw,remount -t yaffs2 /dev/block/mtdblk4 /system 
cd /system/app/ 
rm maps.apk 
mount -o ro,remount -t yaffs2 /dev/block/mtdblk4 /system 
sync 
reboot 
+1

. Это не поможет, потому что в моем случае я не могу выполнить приглашение оболочки с помощью оболочки adb (разрешение файла bash не имеет возможности excutable) Я решаю свою проблему, форматируя всю прошивку спасибо, что ответили! –

0

Если у вас есть последние версии CWM установлена, вы можете быть сохранены

а) восстановление ADB перезагрузки (загрузки телефона в восстановление)

б) в CWM восстановления монтирования/системный раздел (с помощью ваш телефон).

с) ADB убить-сервер

d) Суд ADB запуск сервер

е) ADB оболочки

е) Есть ли ваша вещь установить разрешение правильно

я находился под влиянием ответ здесь https://android.stackexchange.com/questions/38085/is-it-a-hard-brick/113507#113507?newreg=6e0c0c0be98349058d3e1668532cd7dc

Смежные вопросы