도와주세요!!
글 수 15,339
2008.07.28 17:21:24 (*.119.82.131)
7513
밑에 질문을 했는데 답변이 없으셔서 다시 올립니다.
2.6.21커널을 다운받아서 직접 보고 따라 했는데 똑같은 현상이 발생했습니다..^^;;
우선 저가 어떻게했는지 처음부터 말해드리겠습니다 혹시나 틀린부분이 있다면 말씀해주세요..^^
결과는 다음과 같이 나옵니다.
문제점1> SCSI error처리가 됩니다.
왜 그렇죠??
문제점2> 자동실행하는데 파일을 찾을수없다고 나옵니다.
분명히 app폴더에 arm-Client라는 컴파일된 실행파일이 있는데 왜그렇죠?
물론, app_script파일에도 /arm-Client라고 편집했습니다.
과정은 다음과 같습니다.
램디스크에서
> vi etc/inittab에서 다음 그림과 같이 A0:12345:wait:/app/rc.app라고 입력했습니다 캡쳐 그림은 다음과 같습니다.
맨밑에 보시는 빨간 칸처럼 넣고 저장하고 타겟보드에 올렸는데 똑같은 현상이 발생합니다.
물론 타겟보드에는 /app폴더에 rc.app라는 파일이 존재하구요 chmod도 777로 바꿨습니다.
rc.app파일 안에는 다음과 같이 입력해줬습니다.
/arm_Clinet라고 /실행파일을 입력했습니다.
문제점이 있는것인가요??
혹시나 하여 rc.local그림도 캡쳐해서 올리겠습니다
>vi etc/tc.d/rc.local
번거롭게 해서 죄송합니다..
너무 너무 안되서..깝깝해서요....;;
빠른답변 부탁드립니다...휴가가시기 전에 해결해야할껀데..ㅠㅠ
2.6.21커널을 다운받아서 직접 보고 따라 했는데 똑같은 현상이 발생했습니다..^^;;
우선 저가 어떻게했는지 처음부터 말해드리겠습니다 혹시나 틀린부분이 있다면 말씀해주세요..^^
결과는 다음과 같이 나옵니다.
문제점1> SCSI error처리가 됩니다.
왜 그렇죠??
문제점2> 자동실행하는데 파일을 찾을수없다고 나옵니다.
분명히 app폴더에 arm-Client라는 컴파일된 실행파일이 있는데 왜그렇죠?
물론, app_script파일에도 /arm-Client라고 편집했습니다.
과정은 다음과 같습니다.
램디스크에서
> vi etc/inittab에서 다음 그림과 같이 A0:12345:wait:/app/rc.app라고 입력했습니다 캡쳐 그림은 다음과 같습니다.
맨밑에 보시는 빨간 칸처럼 넣고 저장하고 타겟보드에 올렸는데 똑같은 현상이 발생합니다.
물론 타겟보드에는 /app폴더에 rc.app라는 파일이 존재하구요 chmod도 777로 바꿨습니다.
rc.app파일 안에는 다음과 같이 입력해줬습니다.
/arm_Clinet라고 /실행파일을 입력했습니다.
문제점이 있는것인가요??
혹시나 하여 rc.local그림도 캡쳐해서 올리겠습니다
>vi etc/tc.d/rc.local
번거롭게 해서 죄송합니다..
너무 너무 안되서..깝깝해서요....;;
빠른답변 부탁드립니다...휴가가시기 전에 해결해야할껀데..ㅠㅠ
2008.07.29 17:33:23 (*.119.82.131)
우선 답변 감사합니다.^^
계속 테스트하다가 보니 캡쳐가 잘못 된거 같습니다.
죄송합니다.
염치 없지만 한가지 더물어보겠습니다. 저가 실행하고자 하는 실행파일이 arm-Client입니다.
이 실행파일은 app폴더 안에 있습니다.
그렇다면 app_script파일안에
/app/arm-Clinet라고 직접 쓰고 저장하고 다시 재 부팅했을때 다음과 같은 애러 메세지가 나옵니다.
app_script파일은 다음과 같이 했습니다.
inittab의 밑부분은 삭제 하고 다시 램디스크를 올려 실행한 결과들입니다.
물로 직접 손으로 실행하면 됩니다.
이유가 뭔지 모르겠습니다. 한번 안되니 계속 꼬이네요..ㅠㅠ
죄송하지만 예를 보여주시면 아주 감사하겠습니다.
타겟보드 app폴더에 저가 실행하고자 하는 파일 test라는 파일이 있습니다.
app폴더안에 자동실행을 위해 app_script라는 파일도 만들었습니다.
물론 app_script의 권한도 777로 바꿔 놨구요..
램디스크에 /etc/rc.d/rc.local에
if [ -f /app/app_script ]; then
/app/app_script
fi
라고 첨부했습니다.
이런 상황에서 어떻게 해야하는지 예를 보여주시면 감사하겠습니다.
바쁘신데 죄송하구요..
저도 너무 급해서 이렇게 계속 질문을 합니다.
초보대학생이라서 그렇습니다 너그럽게 봐주세요..^^;
(혹시 아시는분있으시면 충고 부탁드리겠습니다.^^)
2008.07.30 16:45:22 (*.138.143.22)
^^ 이런 문제는 (자동 실행시 공유라이브러 에러) rc.local 에서 pthread 라이브러리를 사용하는 프로그램을
실행시킬때 자주 나타 납니다. 라이브러리 패스가 잡히지 않은 상태에서 프로그램이 실행되기 때문에 발생합니다.
해결방법 시도1)
rc.sysinit 에서 패스를 잡아주고 있는데 이곳에 /lib 디렉토리를 추가하시는 방법이 있습니다.
해결방법 시도2)
또는 /etc/inittab 파일에서 getty 가 실행된 이후에 실행되도록 하는 방법도 있구요
해결방법 시도3)
또다른 방법으로는 어플 컴파일할때 라이브러리 링크 옵션을 -static 으로 주는 방법도 있습니다.
시간이 되시면 위의 방법들을 모두 해보신 후 맞는 답을 찾아 주시면 감사하겠습니다.
예전에 전 이문제를 자동로그인을 이용하여 해결했는데 이방법은 아니라고 판단되거든요.
지금 테스트하려니 귀챦음이 ㅋㅋ
[자동실행 문제]
/app/app_script 스크립트는 일단 실행되었다는 메세지가 나오는 군요
그리고 그 스크립트 안의 내용중 '/' (root)밑에있는 arm-Client 파일이 없다라는 메세지가 보입니다.
/arm-Client 인지 ./arm-Client 인지 확인 해보세요
그런데 질문중에 inittab 파일에서는 /app/rc.app 파일이 실행되게 되어 있군요
보여주신 에러메세지하고는 연관성이 없어서 당혹스럽습니다.
그리고 실행하고자 하는 스크립트를 직접 손으로 실행해 보세요.. (당연히 해보셨을 내용이겠지만)
[SCSI 에러 관련하여]
그리고 또 rc.loacal 파일에 보면 usb 를 마운트 하고 있습니다.
usb disk 장치가 붙지 않아서 SCSI 에러가 났다고 판단되네요
usb 디스크장치는 기본통신이 끝난이후 SCSI 디스크와 동일한 프로토콜로 동작을 수행하게 됩니다.