반응형
목차
vm에 elasticsearch를 설치하여 운영해보는데
종료할때마다 ssh와 ES를 다시 실행시켜줘야해서 귀찮았다.
그래서 자동실행을 한번 해보자
1. 자동실행할 sh 파일 만들기
먼저 /etc/init.d 에 들어가자
거기서 원하는 sh파일을 생성한다.
나의 경우는 autostart.sh 로 생성하였다.
vi /etc/init.d/autostart.sh
2. 스크립트 작성
#!/bin/bash
nohup systemctl start ssh &
sh /home/ubuntu/start-node-1.sh
처음에 무조건 #!/bin/bash를 붙여 줘야한다.
그리고 작성하면되는데
백그라운드에서 실행하려면 nohup을 붙여주고 실행한다.
그리고 sh파일을 실행하려면 sh 를 붙여 줘야한다.
스크립트 관련하여 더 알고싶으면
아래 사이트 참조
https://mywiki.wooledge.org/BashGuide
3. 작성한 스크립트 적용
sudo chmod 755 /etc/init.d/autostart.sh
작성한 스크립트를 실행할수 있는 권한으로 변경해준다.
그리고 부팅시 스크립트 실행하도록 rc.d에 등록해준다.
update-rc.d autostart.sh defaults
update-rc.d에 대해 아래 사이트에 설명되어 있다.
https://wiki.debianusers.or.kr/index.php?title=Update-rc.d
안될경우 profile 수정
위와 같이 했는데 안됨..
update-rc.d 가 /etc/rc번호 디렉토리에 소프트링크로 파일 생성하여 실행시키는데
다뒤져봐도 생성을 안함
sudo로 해도 안되고 원인은.. 질문을 해보기로하고
계정별로 자동실행될수 있도록 설정을 해보자
vi ~/.profile
이파일 끝에 원하는 스크립트를 작성하면 됩니다.
권한은 해당 유저의 권한이라 루트권한이 필요할경우 시작시 비밀번호를 물어봅니다.
끝
반응형
'LINUX' 카테고리의 다른 글
wsl에서 계정비밀번호 incorrect (0) | 2022.10.05 |
---|---|
linux 볼륨 추가하여 root 용량 증가시키기 (2) | 2022.09.14 |
linux 리눅스 하드디스크 에러 났을때 (0) | 2022.09.05 |
리눅스 네트워크 에러:`gateway4` has been deprecated, use default routes instead (0) | 2022.09.01 |
linux rename 명령어 (0) | 2022.08.30 |
댓글