도와주세요!!
글 수 15,339
2003.04.03 13:31:18 (*.79.181.161)
6676
안녕하세요...
어느덧 이지보드를 알고 지낸지가 많이 시간이 지나가네요...
이것저것 정리해서 저와같은 닭질(??)을 줄이시라고 올리고 싶은데 실력없는
초짜라서 그냥 되는대로 올리네요...
우선은 자동로그인에 대해서 무쟈게 많은 질문도 하고 많은 답도 주시고 하셨
는데 생각처럼 쉽지가 않아서요..
우선은 /etc/rc.d/rc.local에 집어넣는 방법을 해봤는데 문젠... 실장해놓은
이지보드를 케이블을 연결하지 않고 네트웍으로 할수 있는 방법이 없더군요.
자동실행도 되고 백그라운드로 돌리지 않고 텔넷도 같이 될수 있는 방법을 찾
다가 결국 알아낸 방법입니다. 단. 문제점에 대한건... 책임못져용...
제가 한 방식을 알려드리고자 합니다.
우선 제가 첨부해놓은 파일을 다운받아서 램디스크이미지에 /sbin/에 넣어주
시고요...
이건... rungetty라는 프로그램을 컴파일한건데... 소스코딩하시기 귀찮으실
거 같아서요.. linux-2.4.18에서 컴파일 했어요...
램디스크이미지에 /etc/inittab을 약간 수정을 하시면 되고요...
/etc/profile에서 로그인시 실행되는 사용자 .bash_profile을 참조하도록 수
정하시고요..
그런후에 자신이 맞는 프로파일을 만들어 놓으면 자동 로그인에 자동시작이
가능하답니다...
자 그럼... 순서대로 해볼까요?
1. 램디스크를 수정하기 위해 램디스크를 마운트 시키자..(이건 아시죠?)
편의상 마운트된 디렉토리를 /dir_ramdisk라도 지정하겠습니다.
2. 첨부해놓은 rungetty 파일을 /dir_ramdisk/sbin/에 넣습니다.
3. /dir_ramdisk/etc/inittab 파일의 이부분을 수정해주세요...
변경전
T0:12345:respawn:/sbin/getty -L ttySA0 115200 vt100
T1:12345:respawn:/sbin/getty -L tty1 115200 vt100
변경후
T0:12345:respawn:/sbin/getty -L ttySA0 115200 vt100
T1:12345:respawn:/sbin/rungetty --autologin root tty1
4. root로 자동실행시킨다는 전제로 하면요...
/dir_ramdisk/root/.bash_profile을 생성시켜서 그곳에 환경변수를 먼저
설정한 후 자동실행하고자 하는 스크립트나 프로그램을 기입한다.
단 주의하실점은 프로세스 체크가 되지 않으면... ㅋㅋ 텔넷으로든 무엇이로
든 로그인이 되면 무조건 실행되면 프로그램이 계속 중복해서 돌겠죠?
전 그냥 대충 처리했는데... 음... 제 .bash_profile을 보여드릴께요.
참고로 이지보드에서 프로그램이 /program_dir/program 이란 걸 실행한다는
전제로 말씀드릴께요.
#!/bin/sh
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/program_dir/lib
ps | grep program > /tmp/tmp_program
if [ -z `cat /tmp/tmp_program` ]; then
cd /program_dir
rm -f /tmp/tmp_program
clear
./program
else
clear
echo " now program is running "
echo " have a nice day "
fi
뭐 이런식으로 작업했어요.
맨위엔 셀의 종류를 지정하고요.
그다음엔 필요한 환경변수 잡아주고요.
그다음엔 루트로 실행한 프로세스를 보고 해당 프로세스가 있는지 본후에
파일로 만들고는 if문에서 그 프로세스가 떠서 써졌는지 확인하고...
그다음에 해당 디렉토리로 이동.. 확인용 파일 삭제 그리고 최종적으로 프로
그램 실행...
해당 프로그램이 있는 디렉토리로 이동하는 건 꼭 하시는게 나을거예요.
절대경로로 라이브러리나 이미지 뭐 잡다한 스크립트 헤더파일들을 참조하는
프로그램이라면 상관없지만..
그럼... 잘해보세요... 즐코하세용...
추신 : 프로세스가 없음 무조건 실행시킨단 사실 명심하세요..
또 도움이 되셨다면 답글로라도 감사메시지라도 ㅋㅋ (업드려서 절받기 ㅋㅋ)
어느덧 이지보드를 알고 지낸지가 많이 시간이 지나가네요...
이것저것 정리해서 저와같은 닭질(??)을 줄이시라고 올리고 싶은데 실력없는
초짜라서 그냥 되는대로 올리네요...
우선은 자동로그인에 대해서 무쟈게 많은 질문도 하고 많은 답도 주시고 하셨
는데 생각처럼 쉽지가 않아서요..
우선은 /etc/rc.d/rc.local에 집어넣는 방법을 해봤는데 문젠... 실장해놓은
이지보드를 케이블을 연결하지 않고 네트웍으로 할수 있는 방법이 없더군요.
자동실행도 되고 백그라운드로 돌리지 않고 텔넷도 같이 될수 있는 방법을 찾
다가 결국 알아낸 방법입니다. 단. 문제점에 대한건... 책임못져용...
제가 한 방식을 알려드리고자 합니다.
우선 제가 첨부해놓은 파일을 다운받아서 램디스크이미지에 /sbin/에 넣어주
시고요...
이건... rungetty라는 프로그램을 컴파일한건데... 소스코딩하시기 귀찮으실
거 같아서요.. linux-2.4.18에서 컴파일 했어요...
램디스크이미지에 /etc/inittab을 약간 수정을 하시면 되고요...
/etc/profile에서 로그인시 실행되는 사용자 .bash_profile을 참조하도록 수
정하시고요..
그런후에 자신이 맞는 프로파일을 만들어 놓으면 자동 로그인에 자동시작이
가능하답니다...
자 그럼... 순서대로 해볼까요?
1. 램디스크를 수정하기 위해 램디스크를 마운트 시키자..(이건 아시죠?)
편의상 마운트된 디렉토리를 /dir_ramdisk라도 지정하겠습니다.
2. 첨부해놓은 rungetty 파일을 /dir_ramdisk/sbin/에 넣습니다.
3. /dir_ramdisk/etc/inittab 파일의 이부분을 수정해주세요...
변경전
T0:12345:respawn:/sbin/getty -L ttySA0 115200 vt100
T1:12345:respawn:/sbin/getty -L tty1 115200 vt100
변경후
T0:12345:respawn:/sbin/getty -L ttySA0 115200 vt100
T1:12345:respawn:/sbin/rungetty --autologin root tty1
4. root로 자동실행시킨다는 전제로 하면요...
/dir_ramdisk/root/.bash_profile을 생성시켜서 그곳에 환경변수를 먼저
설정한 후 자동실행하고자 하는 스크립트나 프로그램을 기입한다.
단 주의하실점은 프로세스 체크가 되지 않으면... ㅋㅋ 텔넷으로든 무엇이로
든 로그인이 되면 무조건 실행되면 프로그램이 계속 중복해서 돌겠죠?
전 그냥 대충 처리했는데... 음... 제 .bash_profile을 보여드릴께요.
참고로 이지보드에서 프로그램이 /program_dir/program 이란 걸 실행한다는
전제로 말씀드릴께요.
#!/bin/sh
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/program_dir/lib
ps | grep program > /tmp/tmp_program
if [ -z `cat /tmp/tmp_program` ]; then
cd /program_dir
rm -f /tmp/tmp_program
clear
./program
else
clear
echo " now program is running "
echo " have a nice day "
fi
뭐 이런식으로 작업했어요.
맨위엔 셀의 종류를 지정하고요.
그다음엔 필요한 환경변수 잡아주고요.
그다음엔 루트로 실행한 프로세스를 보고 해당 프로세스가 있는지 본후에
파일로 만들고는 if문에서 그 프로세스가 떠서 써졌는지 확인하고...
그다음에 해당 디렉토리로 이동.. 확인용 파일 삭제 그리고 최종적으로 프로
그램 실행...
해당 프로그램이 있는 디렉토리로 이동하는 건 꼭 하시는게 나을거예요.
절대경로로 라이브러리나 이미지 뭐 잡다한 스크립트 헤더파일들을 참조하는
프로그램이라면 상관없지만..
그럼... 잘해보세요... 즐코하세용...
추신 : 프로세스가 없음 무조건 실행시킨단 사실 명심하세요..
또 도움이 되셨다면 답글로라도 감사메시지라도 ㅋㅋ (업드려서 절받기 ㅋㅋ)