= Info 1 아래 코드는 Ubuntu Server 21.10, PuTTY 기준으로 작성되었습니다. (운영체제 등에 따라 조금 다를 수도 있습니다.) (만약 업데이트 등에 의해 코드가 다르다면 알려주세요!) |
= Info 2 서버는 Vultr를 통해 VPS를 대여하고 있습니다. Vultr 회원가입을 원하시는 분은 "여기"를 눌러 포스팅을 참고해주세요. |
대부분의 Ubuntu Server에서 작동하는 프로그램들(Nginx, MySQL ...)이 systemctl을 통해 제어가 되는데, Flask나 uWSIG를 사용하는 경우, Service를 따로 제작할 필요가 있었습니다.
이번 시간에는 이 Service를 제작하는 방법에 대해 알아봅시다.
일단 PuTTY를 통해 Ubuntu Server에 접속한 후, 로그인까지 진행합니다.
(PuTTY 사용법의 경우 "여기"를 참고해주세요.)
다음으로 Service 파일을 제작해 줍시다.
([File Name]의 경우, 원하는 서비스의 이름으로 설정해주시면 됩니다. 단, 띄워쓰기가 있으면 안됩니다!)
편집기에 따라 방법이 다름으로 vi편접기와 nano 편집기 기준으로 설명드리겠습니다.
nano 편집기 사용시
명령어를 입력하여 nano 편집기를 실행하고, 파일을 생성합니다.
sudo nano /etc/systemd/system/[File Name].service
해당 파일을 다음과 같이 작성합니다.
[Unit]
Description=[설명]
[Service]
ExecStart=[명령]
Restart=on-failure
KillSignal=SIGQUIT
Type=notify
NotifyAccess=all
StandardError=syslog
[Install]
WantedBy=multi-user.target
"[설명]"에는 서비스 설명을, "[명령]"에는 해당 Service에서 사용할 명령을 입력합니다.
"컨트롤(Ctrl) + X"키를 누른후, 파일을 저장할 것인지 물어보는 창에서 "Y"를 눌려 저장해줍니다.
vi 편집기 사용시
(vi 편집기에 대해 조금 더 자세히 알고 싶다면 "여기"를 눌러주세요.)
명령어를 입력하여 vi 편집기를 실행하고, 파일을 생성합니다.
sudo vi /etc/systemd/system/[FileName].service
" i "를 입력하여, 작성 모드를 시작하고 해당 파일을 다음과 같이 작성합니다.
[Unit]
Description=[설명]
[Service]
ExecStart=[명령]
Restart=on-failure
KillSignal=SIGQUIT
Type=notify
NotifyAccess=all
StandardError=syslog
[Install]
WantedBy=multi-user.target
"[설명]"에는 서비스 설명을, "[명령]"에는 해당 Service에서 사용할 명령을 입력합니다.
"ESC"키를 누르고, ":wq"를 입력하여 파일을 저장하고 종료합니다.
여기까지 따라오셨다면, Service 파일 생성은 성공입니다.
이 Service가 "서버 시작(부팅)"때 자동으로 켜지게 하고 싶다면 심볼릭 링크를 추가해주시면 됩니다.
("[FileName]"의 경우, 아까전에 입력하였던 이름을 입력하시면 됩니다.)
sudo ln -s /etc/systemd/system/[FileName].service /etc/systemd/system/multi-user.target.wants/
이후 Service 제어는 "systemctl"을 이용하면 됩니다.
"systemctl" 이용법은 "여기"를 눌러 확인할 수 있습니다.
여기까지 따라와 주시고, 끝까지 봐주신 여러분들께 감사드립니다!
혹시 궁금한 점이나 사진과 틀린 점이 있으면 알려주세요! 수정하도록 하겠습니다!!
(가시기 전에 공감 한 번만 눌러주시면 저에게 큰 힘이 됩니다! 감사합니다!)
'OS > Ubuntu' 카테고리의 다른 글
systemctl 사용법 (0) | 2023.01.06 |
---|
댓글