[AWS 클라우드 스쿨 12일차]_시작서비스

miniPig·2024년 5월 31일

AWS cloud school

목록 보기
5/31

시작서비스 Lab

시작서비스가 어떻게 시작되는지를 본 것!

컴퓨터가 켜지면 자동으로 실행되는 프로그램을 모아둔 폴더에 넣어주거나 링크를 걸어주면 컴퓨터가 전원이 켜질 때 동시에 실행될 수 있음!!!!

내가 만든 파일이 컴퓨터가 재부팅되어도 자동 실행되도록 만들 것!!

파일명 : cho.sh

→ 반복문을 이용해서 출력한 줄들을 cho.log란 파일에 저장해둠

→ 해당 파일은 실행 가능해야하므로 실행 가능한지 볼 것!

cho.sh 파일은 실행 권한이 없음

→ 권한을 주는 명령어 입력 후 권한 재확인

chmod +x /usr/local/bin/cho.sh

→ 실행 권한까지 획득!!

→ 이제 실행 파일은 만들었으니 서비스를 만들어줘야 함

→ 서비스를 만들어줌

→ 서비스를 만든 뒤 리로드 해줌!

💡 **sudo systemctl daemon-reload** → Systemd 데몬에게 새로운 서비스 파일이나 수정된 서비스 파일을 다시 읽도록 지시

→ 서비스를 실행해주고, tail 명령어로 파일 실행 결과를 확인해줌

  • start는 그 즉시 서비스를 실행시켜줌
  • reboot 해도 서비스가 자동 실행되나 확인!

  • 시간이 지나도 서비스가 실행되지 않는 것을 볼 수 있음

  • Restart=on-failure 항목 추가!!

→ 재부팅해도 생김!!!

  • 컴퓨터가 실행할 때 실행시켜주고 싶은 파일을 test.sh로 만듦
  • 이 파일이 실행될 수 있도록 실행 권한을 줘야 함
  • 권한은 해당 파일의 경로로 가야 확인 가능
💡 **심볼릭 링트(Symbolic Link)** **심볼릭 링크를 통해 파일이 자동으로 실행되는 이유** → 심볼릭 링크가 참조하는 파일의 실행 권한과 경로 설정 때문 → 심볼릭 링크 자체는 단순히 원본 파일에 대한 경로를 가리키는 역할을 하지만, 실행 가능한 파일을 참조하는 심볼릭 링크가 특정 위치에 있을 때, 그 링크를 통해 원본 파일이 실행될 수 있음 💡 **`systemctl enable` , `Restart=on-failure` 차이점**
  • systemctl enable: 시스템이 부팅될 때 서비스가 활성화되어 실행되도록 보장합니다.
  • Restart=on-failure: 서비스가 실행 중에 실패할 경우, 자동으로 재시작되어 지속적으로 실행 상태를 유지하도록 보장합니다.

0개의 댓글