파일 혹은 proc의 permission denied 문제
글쓴이: dalfengz / 작성시간: 수, 2011/09/21 - 2:35오후
현재 kernel v2.4에서 작성된 모듈 코드를 v2.6에 맞게 컴파일 해서
생성된 .ko 파일을 insmod로 모듈을 올렸습니다.
올리고 나서 /proc/ 밑에 올려진 것을 사용하려고 했는데,
(e.g. # echo on > /proc/xxx/yyy )
다음 메세지가
/proc/xxx/yyy: Permission denied. 로 뜨고 있습니다.
file /proc/xxx/yyy 했더니,
/proc/xxx/yyy: regular file, no read permission 이라고 뜨더군요...
여러 곳에서 검색했을 때, file 해서 empty라고 떴어야 사용이 가능한 걸로 보였었는데 말이죠...
이런 퍼미션을 수정하는 방법이 있는 것인가요?
아니면 모듈 올릴때 뭔가 다르게 해줬어야 하는 것인가요?
이 모듈 코드가 외부에서 참조하는 거라 아직 제대로 보고 있질 않아서 어디가 문제인지 찾지 못하고 있습니다.
Forums:
ls -l /proc/xxx/yyy whoami su
혹시 이 답글 달아주신 이유가 root 계정으로 하고
혹시 이 답글 달아주신 이유가 root 계정으로 하고 있는가? 라면,
root 계정으로 진행하고 있고, /proc/xxx/yyy는 -rw-r--r-- 입니다.
file 프로그램으로 확인할 때 /proc 파일이
file 프로그램으로 확인할 때 /proc 파일이 항상 "empty"라고 표시되는 건 아닙니다. 파일 크기가 0일 때만 그렇게 표시됩니다.
file 프로그램 출력에서 "no read permission"이라고 표시된 걸 보면 읽기를 할 때 권한 관련 문제가 있고 "echo on > /proc/xxx/yyy"에서 Permission denied 오류가 난 걸 보면 쓰기를 할 때도 권한 관련 문제가 있습니다. 그런데 사용자 ID와 파일 권한을 보면 아무 문제가 없다면... 커널 모듈 내의 /proc/xxx/yyy 파일 열기/읽기/쓰기 핸들러 함수에서 어떤 이유로 오류라고 판단하여 -EPERM을 반환하기 때문일 수 있습니다.
$PWD `date`
댓글 달기