"./configure"파일을 실행하기위한 adb "권한 거부"


9

configure내 안드로이드 폰에 파일 을 실행해야 하므로 adb shell명령 을 사용하는 것이 가장 좋습니다 .

Windows-7 플랫폼에서 Android 에뮬레이터를 실행하고 adb shell있으며 DOS 창 에서 명령을 실행하고 있습니다. cd명령을 사용하여 configure파일이 있는 디렉토리로 변경 한 후 다음 명령을 실행하고 ./configure있습니다. 다음과 같은 오류가 발생합니다.

./configure: permission denied

따라서 루트 모드에서 adb를 실행하려고 시도 adb root하지만 분명히 내 adb는 이미 루트 모드입니다 (또한 adb 쉘의 각 줄 앞에 "#"문자가 있음).

또한 사용하려고했지만 chmod이 명령 ( ls -la) 을 실행하기 전후에 차이가 없으므로 문제가있을 수 있습니다 ( chmod명령을 어떻게 실행할 수 있습니까?).

어쩌면 여기 누군가가 내 문제를 도와 줄 수 있으며, 왜 내 configure파일 을 실행할 권한이 없는지에 대한 설명 이 있으면 좋을 것입니다.

감사.

추신 : 여기서 목표는이 프로젝트의 소스를 플랫폼으로 직접 컴파일하여 Android 플랫폼에서 net-snmp 패키지를 사용하는 것입니다.


3
아마도 문제 일 것입니다. /sdcard일반적으로 noexecAndroid 에서 플래그 와 함께 마운트 되므로 바이너리를 실행할 수 없습니다. 다른 곳으로 옮기는 것이 좋습니다 (종종 /data/local그런 것들에 사용됩니다). 이것이 문제를 해결하는지 확인하십시오.
eldarerathis

3
또한,에 복사 /usr/local/tmp(디렉토리 전체 net-snmp-5.7.2에 디렉토리를 /sdcard.
리암 W

1
@ t0mm13b하지 완전히 확인이있는 경우 입니다 그것을 악용 루트로 자신의 장치에 파일을 실행해야하는 사람들에게 도움이 될 수 있기 때문에, 주제와.
Liam W

1
알았어 고마워. 내 질문은 개발 질문보다 adb 쉘로 스크립트 sh를 실행하는 방법에 대한 것입니다. 그러나 이제 해결책이 있습니다 : "/ sdcard는 noexec 플래그와 함께 탑재되어 있습니다."eldarerathis 또는 Liam W가 그들의 의견을 실제 답변에 넣고 싶다면 그것을 확인합니다. 아니면 어떻게 질문을 닫을 수 있는지 설명해 주시겠습니까?
grattmandu03

1
@ grattmandu03 나는 이미;)
Liam W

답변:


10

이것은 두 가지 때문입니다.

  1. 파일에 실행 권한이 없습니다. [AND]
  2. 파일이 SD 카드에있는 것처럼 실행 권한을 얻을 수 없습니다. SD 카드의 파일 시스템은 파일 권한을 수락 할 수 있지만 noexec주석에 명시된대로 플래그 와 함께 마운트됩니다 . 파일 실행이 중지됩니다.

해결책:

  1. 디렉토리를 루트로 net-snmp-5.7.2디렉토리에 복사하십시오 /data/local/tmp.
  2. 루트 configure로 실행 하여 파일을 실행 가능하도록 설정하십시오 chmod 0777 /data/local/tmp/net-snmp-5.7.2/configure.
  3. 이제 /data/local/tmp/net-snmp-5.7.2/configureenter 를 입력 하고 눌러 구성 스크립트를 실행할 수 있습니다.

노트

이것은 모두 루트 사용자로 수행되어야합니다 :)


8

주석과 Liam의 답변 에서 설명했듯이 이것은 noexecsdcard를 마운트 할 때 시스템에서 사용 하는 플래그 때문 입니다. 귀하의 경우 configure파일이 쉘 스크립트 (이것은 일반적으로), 당신은 여전히이 실행되도록 속일 수 :

cd위에서 설명한대로 디렉토리에 넣은 다음를 실행하십시오 sh configure.

sh는 쉘 인터프리터이며이 바이너리는 /system/bin파일 실행 가능한 위치에 있어야합니다 . 스크립트를 첫 번째 인수로 전달하면 스크립트를 실행하는 새로운 셸 프로세스가 열립니다 configure.


답변 주셔서 감사합니다. 는 sh configure트릭을 수행합니다.
grattmandu03

1
확인 감사합니다! 그리고 내가 도울 수있어서 기뻤습니다. 나는 때때로이 트릭을 리눅스 / 유닉스 머신에서 사용한다 :)
Izzy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.