도와주세요!!
글 수 15,339
2003.05.22 17:49:08 (*.159.129.2)
7704
감사합니다 그린비님...
좋은 팁 올려주셔서여..
그런데 스크립트는 약간 바꾸는게 좋을 듯 해서여..
제가 감히(^^) 한번 바꿔R습니다.
용서해 주셔요..
#!/bin/sh
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/program_dir/lib
if ps | grep program > /dev/null; then
clear
echo " now program is running "
echo " have a nice day "
else
cd /program_dir
clear
./program
fi
님께서 스크립트 예제 주신걸로 삽질해본 결과 항상 "have a nice day"만 나
와서요...
위와같이 고치니 되더군요..
그런데 첨부하신 rungetty로는 자동 로긴이 안되던데요...
자세히 방법좀 알려주세요ㅜ.ㅜ
삽질중입니다.
그럼 즐코 하시구여...
그린비 wrote..
: 안녕하세요...
:
: 어느덧 이지보드를 알고 지낸지가 많이 시간이 지나가네요...
:
: 이것저것 정리해서 저와같은 닭질(??)을 줄이시라고 올리고 싶은데 실력없 는
: 초짜라서 그냥 되는대로 올리네요...
:
: 우선은 자동로그인에 대해서 무쟈게 많은 질문도 하고 많은 답도 주시고 하 셨
: 는데 생각처럼 쉽지가 않아서요..
: 우선은 /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문에서 그 프로세스가 떠서 써졌는지 확인하고...
: 그다음에 해당 디렉토리로 이동.. 확인용 파일 삭제 그리고 최종적으로 프 로
: 그램 실행...
: 해당 프로그램이 있는 디렉토리로 이동하는 건 꼭 하시는게 나을거예요.
: 절대경로로 라이브러리나 이미지 뭐 잡다한 스크립트 헤더파일들을 참조하 는
: 프로그램이라면 상관없지만..
: 그럼... 잘해보세요... 즐코하세용...
:
: 추신 : 프로세스가 없음 무조건 실행시킨단 사실 명심하세요..
: 또 도움이 되셨다면 답글로라도 감사메시지라도 ㅋㅋ (업드려서 절받기 ㅋ
ㅋ)
좋은 팁 올려주셔서여..
그런데 스크립트는 약간 바꾸는게 좋을 듯 해서여..
제가 감히(^^) 한번 바꿔R습니다.
용서해 주셔요..
#!/bin/sh
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/program_dir/lib
if ps | grep program > /dev/null; then
clear
echo " now program is running "
echo " have a nice day "
else
cd /program_dir
clear
./program
fi
님께서 스크립트 예제 주신걸로 삽질해본 결과 항상 "have a nice day"만 나
와서요...
위와같이 고치니 되더군요..
그런데 첨부하신 rungetty로는 자동 로긴이 안되던데요...
자세히 방법좀 알려주세요ㅜ.ㅜ
삽질중입니다.
그럼 즐코 하시구여...
그린비 wrote..
: 안녕하세요...
:
: 어느덧 이지보드를 알고 지낸지가 많이 시간이 지나가네요...
:
: 이것저것 정리해서 저와같은 닭질(??)을 줄이시라고 올리고 싶은데 실력없 는
: 초짜라서 그냥 되는대로 올리네요...
:
: 우선은 자동로그인에 대해서 무쟈게 많은 질문도 하고 많은 답도 주시고 하 셨
: 는데 생각처럼 쉽지가 않아서요..
: 우선은 /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문에서 그 프로세스가 떠서 써졌는지 확인하고...
: 그다음에 해당 디렉토리로 이동.. 확인용 파일 삭제 그리고 최종적으로 프 로
: 그램 실행...
: 해당 프로그램이 있는 디렉토리로 이동하는 건 꼭 하시는게 나을거예요.
: 절대경로로 라이브러리나 이미지 뭐 잡다한 스크립트 헤더파일들을 참조하 는
: 프로그램이라면 상관없지만..
: 그럼... 잘해보세요... 즐코하세용...
:
: 추신 : 프로세스가 없음 무조건 실행시킨단 사실 명심하세요..
: 또 도움이 되셨다면 답글로라도 감사메시지라도 ㅋㅋ (업드려서 절받기 ㅋ
ㅋ)