1. ホーム
  2. android

[解決済み] adb devices コマンドが動作しない

2023-05-14 10:37:33

質問

Ubuntu 10.10 64bitを使用しています。私は、Android Debug Bridge バージョン 1.0.26 と共に ia32-libs をインストールしています。

私の問題 (複数可)。

  1. adb devices >>>パーミッションなし
  2. sudo adb devices >>>> sudo: adb: コマンドが見つかりませんでした。
  3. adb shell >>> error: デバイスへのアクセス権不足

これらはすべて関連しているのでしょうね。以下、関連情報です。

$ echo $PATH
/home/me/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/android-sdk-linux_x86/tools:/opt/android-sdk-linux_x86/platform-tools

$ which adb
/opt/android-sdk-linux_x86/platform-tools/adb

$ adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached 
????????????    no permissions

$ sudo adb devices
sudo: adb: command not found

$ adb shell
error: insufficient permissions for device

CM6.1 を実行している root 化された Moto Droid と CM7 ベースの ROM を実行している root 化された G-Tab で、同じ結果が得られました。

私は以下の関連記事を確認しました。

提案のほとんど (すべてではありません) を試しましたが、私の問題を解決することはできませんでした。私が試さなかったことは、不適切に思えました。私はいくつかのより多くのヒントを感謝し、トラブルシューティングを続けます。

私が試さなかったことの 1 つは、/etc/udev/rules.d/70-android.rules を編集することでした。それが問題である可能性は高いですか? それがどのように "sudo: adb: command not found" を引き起こすかはわかりません。たぶん、私の問題はすべて関連しているわけではありません。とにかく、この時点では、私はパスの問題や他の投稿で議論された他の一般的な問題があるとは思えないので、他の人からのいくつかの意見が必要だと思います。

編集:解決済み EboMikeとRivieraKidに感謝します。これは実際には2つの異なる問題でした。

  1. 上記の項目 2 (sudo: adb: command not found) は、次のようにシンボリックリンクを作成することで解決しました。

    $ sudo ln -s /opt/android-sdk-linux_x86/platform-tools/adb /usr/local/sbin/adb
    
    

    その結果、EboMike が提案したように この解決策 . これを行うことは私のMoto Droidに必要でした。(sudoとしてadbを実行することは ではなく しかし、私の Viewsonic G-Tablet では必要ありませんでした)。

  2. 私の他の 2 つの項目は、RivieraKid が提案したように udev ルールを実装することで解決しました (以下から リンク ).

どのように解決するのですか?

<ブロッククオート

私が試していないことの一つは、編集 /etc/udev/rules.d/70-android.rules を編集することです。これは それは問題である可能性が高いですか?

そうしなかった特別な理由は何ですか?質問に答えるために - はい! udevルールは、Ubuntuにデバイスが何であるかを知らせ、ユーザースペースのツールがそれにアクセスすることを可能にします。

に正しく従わなければ、adb を使用することはできません。 指示 .

しかし、それを念頭に置いて、あなたは使用しているUbuntuのバージョンを書いていませんが、私は10.10で問題がありました - 私のルールファイルの内容を投稿する必要があれば、私に知らせてください。

sudo 経由で adb を実行することについては心配しないでください、必要ありません。その MODE="0666" を使えば、どのユーザーでもデバイスにアクセスできます。


EDITです。

ルールの再読み込みを忘れずに。

sudo udevadm control --reload-rules

EDIT #2です。

Jesse Glick が正しく指摘しているように、adb がすでにデーモン モードで動作している場合、これを動作させるには再起動する必要があります。

sudo adb kill-server

ここではsudoを使用しています。sudoはadbが強制終了されることを保証し、サーバーを停止する方法として公式にサポートされているからです。次に adb が使用されたときに自動的に再起動されますが、今度は正しい環境で再起動されます。