---------------------------------------------------------------------------------
실행파일을 adb push로 전송시 보통 /sdcard/로 전송하면 전송된 실행파일의 실행권한을 주기위하여 target에서 chmod로 권한변경시 적용안된다. 안드로이드가 보호를 위한 장치로 실행권한 안준다?
이에 adb remout로 system을 다시 마운트하면서 system/bin에 넣은 out파일은 chmod로 권한 부여되더라.
원문 : http://www.aesop.or.kr/?document_srl=400683
'안드로이드 권한 설정' 키워드로 읽게된 글 입니다. 앱에서 권한에 대해서 찾다가 안드로이드 커널 소스 중
/dev 하위 디렉토리에 관한 설정을 할 수 있는 글을 보게 되서 스크랩 합니다.
질문
안드로이드 터미널 앱을 이용하여 파일 접근 권한 설정 질문입니다.
$cd dev
$ls -l ttyS0
crw------- root root 253, 0 2011-03-28 07:44 ttyS0
$chmod 777 ttyS0
Unable to chmod ttyS0: Operation not permitted
이렇게 출력이 됩니다.
모든 권한을 풀어 주려면 어찌 해야 할까요?
여러가지 웹이나 질문들을 보고 따라 해봤지만
설정이 바뀌지 않는군요.
mkdir 명령으로 폴더를 만드니 Read-only File System이라고 출력이 나오는 것과 관련이 있는건가요?
$cd dev
$ls -l ttyS0
crw------- root root 253, 0 2011-03-28 07:44 ttyS0
$chmod 777 ttyS0
Unable to chmod ttyS0: Operation not permitted
이렇게 출력이 됩니다.
모든 권한을 풀어 주려면 어찌 해야 할까요?
여러가지 웹이나 질문들을 보고 따라 해봤지만
설정이 바뀌지 않는군요.
mkdir 명령으로 폴더를 만드니 Read-only File System이라고 출력이 나오는 것과 관련이 있는건가요?
답변
폴더 생성 시 Read-only File System 라고 출력되는 것은
Android의 Root partition에 해당하는 영역이 RO 영역이기 때문입니다.
따라서 폴더 생성을 하시려면 init.rc 파일에서 rootfs 영역을 ro로 remount 하기 전에 생성하도록 하여 부팅 시 생성을 하셔야 합니다.
device file에 대한 권한 변경은 console에서 하실 경우에는 su 권한이 없는 것이므로
$ su 이렇게 하시면 프롬프트가 $에서 #으로 바뀔겁니다.
그리고 나서 chmod 명령을 사용하시면 됩니다.
다만 RO 영역이므로 rebooting 하면 다시 권한을 설정하셔야 합니다.
device file에 대한 권한 설정은 Froyo 까지는 Android Source의 system/core/init/devices.c 에서
설정을 하게 되고,Gingerbread 부터는 system/core/rootdir/ueventd.rc 파일에서 설정하게 되어 있습니다.
기본 코드 흐름은 비슷하고 권한을 가져오는 방법이 다소 변경되었다라고 보시면 되겠네요..^^
Android의 Root partition에 해당하는 영역이 RO 영역이기 때문입니다.
따라서 폴더 생성을 하시려면 init.rc 파일에서 rootfs 영역을 ro로 remount 하기 전에 생성하도록 하여 부팅 시 생성을 하셔야 합니다.
device file에 대한 권한 변경은 console에서 하실 경우에는 su 권한이 없는 것이므로
$ su 이렇게 하시면 프롬프트가 $에서 #으로 바뀔겁니다.
그리고 나서 chmod 명령을 사용하시면 됩니다.
다만 RO 영역이므로 rebooting 하면 다시 권한을 설정하셔야 합니다.
device file에 대한 권한 설정은 Froyo 까지는 Android Source의 system/core/init/devices.c 에서
설정을 하게 되고,Gingerbread 부터는 system/core/rootdir/ueventd.rc 파일에서 설정하게 되어 있습니다.
기본 코드 흐름은 비슷하고 권한을 가져오는 방법이 다소 변경되었다라고 보시면 되겠네요..^^
https://kldp.org/node/122571
awk/mknod 없다.
busybox 올려야하나?