2012-07-11 6 views
11

한 앱에서 작성한 파일에 다른 앱에 대한 액세스 권한을 부여하려고합니다. chgrp을 adb 셸 (command 'chgrp' not found)에서 사용할 수 없습니다. BusyBox를 설치했으나 chgrp에 액세스하려면 가져 왔습니다.루팅 된 Android 기기에서 파일의 그룹 ID를 변경하는 방법은 무엇입니까?

예를 들어, chown app_79 file.txt 명령을 사용하면 작동합니다. 하지만 chgrp app_79 file.txt을 할 때 항상 chgrp: unknown group app_79

같은 내가 무리를 봤 대부분의 리눅스 시스템은 해당 시스템에 대한 그룹 정보를 저장하는 파일 /etc/group이 발견 반환하지만 안드로이드에 존재하지 않습니다.

답변

21

내장 도구를 사용하지 않고 비지 박스보다, 그것의가 가진 이러한 ID로 아마

chown uid.gid filename 

것 매트가 지적한 것처럼 수치 여야합니다.

+0

ID는 나를 위해 숫자 일 필요는 없습니다. 'root.root'와'root.system'은 예를 들어 장치에서 작동했습니다. – BuvinJ

+0

리눅스에서'chown owner : group filepath'는 일반적으로이 기간 구문과 비교하여 작동합니다. – BuvinJ

3

일부 그룹 ID가 하드 코드 된 방법에 대한 정보 here이 있습니다. 나는 또한 /data/system/packages.list/data/system/packages.xml에 10000 + x와 같은 앱의 UID가 포함되어 있다는 이전 지식을 가지고있었습니다. 내가 지금 알고있는 것은 x가 "app_"다음에 오는 숫자라는 것입니다.

그래서 이상한 일은 chgrp 10079 file.txt 수 있지만 chgrp app_79 file.txt 수 없습니다.

희망이 있으면 도움이됩니다.

6

busybox chown uid.gid file.txt을 사용하고 이름 대신 숫자로 UID 및 GID를 지정하십시오. app_79 가능성이 ID 10079 (당신이 busybox ls -l -n /data/data 그것을 다시 확인 할 수 있습니다 확인하기 위해)에 corresponds는 :

busybox chown 10079.10079 file.txt 
관련 문제