반응형
라즈베리파이에 전원을 넣었을 때, 즉, 부팅이 되었을 때 바로 프로그램이 실행되도록 해보자.
몇가지 방법이 있지만, 라즈베리파이에 설치한 kali 리눅스에 설정하는 방법을 정리한다.
먼저, /etc/init.d/wips 파일을 생성하여, 아래 내용의 스크립트를 작성한다.
# cd /etc/init.d
# sudo vi wips
/etc/init.d/wips 파일 안의 내용은 아래와 같이 만든다.
#!/bin/sh
case "$1" in
start)
eval "cd /home/pi/wips/"
echo "Starting WIPS Sensor"
eval "./start_wips.sh &"
;;
stop)
echo "WIPS Sensor stopped"
eval "pkill wips"
;;
*)
echo "Usage: /etc/init.d/wips {start|stop}"
exit 1
;;
esac
exit 0
위의 스크립트가 잘 만들어졌는지 확인하려면, 실행을 시켜보자. 먼저, 실행 가능하게 파일 모드를 아래와 같이 바꾼다.
# sudo chmod 755 wips
실행을 할 때는 아래와 같이 실행시키고, 종료도 되는지 를 확인해 본다.
# sudo /etc/init.d/wips start
# sudo /etc/init.d/wips stop
실행 오류가 나거나, 실행 종료가 안되면 스크립트를 재확인하여 정상적으로 실행되도록 하면 된다.. ^^ 말은 쉽다.
이제 마지막 단계로, 부팅할 때 자동 실행되도록 등록한다.
# sudo update-rc.d wips defaults
이제 부팅을 해서 자동 실행되는지를 확인해보자.
3. SysV Runlevel Config
2번에서 rcN.d에 연결파일이 생성되어 있더라도 run level이 제대로 설정되지 않는 경우가 발생하며,
이럴 때는 process 수행이 잘 안되는 경우가 있음
- 2번 수행 후 run level 편집
- case 1) # sudo sysv-rc-conf
- 없을 경우: # sudo apt-get install sysv-rc-conf
- 등록한 process의 필요한 run level 칸이 X가 채워지도록하고 종료하면 끝
- 아래 사진 처럼, WIPS의 라인에 있는 런레벨별로 모두 X가 채워지게 하면 된다. 마지막에는 q를 선택하여 프로그램을 종료한다.
- case 2) # sudo sysv-rc-conf --level 2345 myservice on
- usage [sysv-rc-conf] : http://sysv-rc-conf.sourceforge.net/
process script가 단순 shell script인 경우 2번 방법으로 프로세스 실행이 잘 안되는 경우가 많았으나,
3번 방법으로 run level을 편집해 주면 실행이 잘되었음
출처: https://dh8607.tistory.com/207 [::: Blog from Hoons :::]
반응형
'라즈베리파이 > 라즈베리파이 일반' 카테고리의 다른 글
라즈베리파이 이미지 히스토리 (Raspberry pi older image) (0) | 2021.05.15 |
---|---|
vi의 rc파일 (0) | 2021.04.18 |
pcap.h 를 찾을 수 없을 때 (file not found) (0) | 2021.03.09 |
gccmakedep command not found 가 나올 때 (0) | 2021.03.09 |
라즈베리파이 초기 비밀번호(raspberry pi password) (0) | 2020.08.24 |