2013-06-25 4 views
0

현재 RHEL 5를 사용 중입니다. USB 디버깅이 활성화 된 (완료) 상태에서 내 Nexus 4를 연결해야만 에뮬레이터가 아닌 휴대 전화에서 내 안드로이드 프로젝트를 직접 실행할 수 있습니다 매우 느리고 고통스럽게 시간이 많이 걸립니다. Android SDK 관리자를 업데이트하고 Windows에서 사용할 수있는 Google USB 드라이버를 찾지 못했음을 확인했습니다. 좀 더 인터넷 검색을하고 난 우분투에서 이것을 달성하기 위해 따라야 할 몇 단계를 밟았습니다. 1. 2. ':'로 두 개의 16 진수 값 sepearetd를 가져옵니다 (이것은 manufacturerID : deviceID로 시스템에 알려야합니다. 3. 그런 다음 루트로 다음을 수행) 처리 : sudo는 스와 -Reh Hat Linux에서 USB 디버깅 모드 활성화하기

cd /etc/udev/rules.d 
vi 51-android.rules 

이 파일에서, 당신은 당신의 장치를 처리 할 수있는 라인을 추가합니다. 문제는 다음과 같습니다. rules.d 폴더에이 파일이 없습니다. 그럼 내 장치를 다른 리눅스 배포판 (내 경우에는 RHEL 5)에서 인식 가능하게 만드는 절차는 무엇입니까? 또한

, 내가 이렇게 :

adb devices 

출력 :

List of devices attached 
???????????? no permissions 

이 제발 도와주세요. 고마워요 사전 :

답변

1

adb 실행 파일의 권한을 usb에 액세스 할 수 있도록 변경할 수 있습니다. 시스템에 설치된 '는 sudo'를하지 않은 경우

sudo ./adb kill-server 
sudo ./adb start-server 
sudo ./adb devices 

, 단지 루트 사용자와 위의 작업을 수행 루트 권한을 사용하는 경우 ADB 작품이 제대로 경우 , 첫 번째 시도. 작동하는 경우 다음 해결 방법을 사용하여 영구적으로 작동하게 할 수 있습니다.

chown root:user_group adb 
chmod 4550 adb 

이렇게하면 작동합니다.

+0

감사합니다. Alex 귀하의 명령을 사용하여 확인한 결과, adb 유틸리티가 정상적으로 작동합니다. 물론, 내 장치를 인식 할 수 없습니다. RHEL 5를 사용하고 있습니다. 문제가 있거나 새로 만든 파일 (51-android.rules)에 추가 한 행에서 실수를 저질렀습니다. SUBSYSTEM == "usb", ATTR {idVendor} == "1004", MODE = "0666", GROUP = "plugdev" plugdev는 무엇을 의미합니까? 사용자 그룹 이름입니까 아니면 일부 키워드입니까? 1004는 LG를 나타냅니다. 개발자 사이트에서 가져 왔습니다. –

+0

완료되었습니다. 작동하지 않았습니다. com을 실행하지 않았습니다. 루트로서의 mands. 이제 내 장치를 인식 할 수 있습니다. 정말 고마워 :) –

1

파일을 처음부터 만들고 줄을 삽입해야합니다. 그렇지 않으면 작동하지 않습니다.

안전하고 사용하기 쉬운 지시 사항을 따르십시오.

단계를 수행하면 adb 장치에 장치가 올바르게 표시됩니다.

+0

파일을 생성하고 줄을 추가했습니다 : SUBSYSTEM == "usb", ATTR {idVendor} == "1004", MODE = "0666", GROUP = "plugdev"1004는 LG입니다. 그러나 adb은 여전히 ​​내 장치를 인식 할 수 없습니다. ( –

+0

'chmod a + r/etc/udev/rules.d/51-android.rules'를 실행하고 장치를 다시 연결하는 것을 잊지 마십시오. – androidnoob

+0

adb가 내 장치를 인식 할 수 없습니다. 내가 GROUP 필드와 같이 사용하고있는 값에 문제가 있습니까? "plugdev"의 의미는 무엇입니까? –

0

adt-bundle-linux-x86_64-20130917/sdk/platform-tools 디렉토리로 이동하십시오. 명령의

다음 세트는 나를

[[email protected] platform-tools]$ su 
Password: 
[[email protected] platform-tools]# ./adb kill-server 
[[email protected] platform-tools]# ./adb start-server 
* daemon not running. starting it now on port 5037 * 
* daemon started successfully * 
[[email protected] platform-tools]# ./adb devices 
List of devices attached 
2648A9CFD67FD21E device 

내가 CentOS 6.4을 사용하고 일했다. 그리고 기기는 Micromax A-62이고 Android 4.0.4(ICS)입니다. 자세한 내용은 Troubleshooting steps when Android device is detected but not recognized by Eclipse ADT 문서에 제공된 스크린 샷을 참조하십시오.

0

plugdev 그룹이없는 RHEL/CentOS 6.6을 사용할 때도이 문제가 발생했습니다.

나는 권한이없는 사용자 계정 myuser으로 adb을 실행합니다.

adb kill-server 
adb devices -l 
: myuser로, 다음

udevadm control --reload-rules ; udevadm trigger 

과 :

# udev rules for USB android devices 

# samsung: 04e8 
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666", GROUP="myuser" 

# LG: 1004 
SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666", GROUP="myuser" 

내가 한 후 (루트로서) :

내 솔루션은 규칙과 /etc/udev/rules.d/50-android.rules 파일을 만드는 것이 었습니다

설명 : udev 규칙 파일 지정의 GROUP= 옵션 es에 연결할 때 장치를 소유 할 그룹. 데비안 기반 배포판에는이 목적을 달성하는 plugdev 그룹이 있지만 일부 최신 RHEL 기반 배포판에는 포함되어 있지 않습니다. 이것은 adb이 일반 사용자 (루트가 아닌 사용자)와 함께 실행될 때 사용 권한 문제를 만듭니다.이 사용자는 장치에 액세스 할 수 없기 때문입니다.

해결 방법은 USB 장치를 존재하고 Linux 사용자가 속한 그룹에 할당하는 것입니다. 필자의 경우 적절한 사용 권한을 가진 사용자의 "개인"그룹에 장치를 할당하기로 결정했습니다.

다른 솔루션 (테스트되지 않았지만 동일하게 작동해야 함)은 plugdev 그룹을 생성하고 사용자를 추가하는 것입니다.

관련 문제