Service (서비스)
정의
서비스는 운영 체제에서 실행되는 프로세스를 논리적으로 분류한 것으로, 사용자 또는 시스템에 특정 기능을 제공
데몬은 서비스의 하위 개념으로, 서비스는 시스템의 중요한 작업을 지원
특징
서비스는 데몬 형태로 실행되거나 특정 작업 완료 후 종료될 수 있음
네트워크 서비스, 데이터베이스 서비스 등 다양한 형태로 제공
systemd
와 같은 서비스 관리자를 통해 제어
systemctl
은 systemd
시스템 및 서비스 매니저에서 시스템과 서비스 관련 작업을 제어하고 관리하는 데 사용되는 명령어입니다.
이 명령어는 서비스 시작, 중지, 재시작, 상태 확인 등 다양한 작업을 수행할 수 있게 해줍니다.
systemd
는 현대 리눅스 배포판에서 널리 사용되는 시스템 및 서비스 매니저로, 부팅 프로세스, 서비스 관리, 시스템 상태 확인 등을 통합적으로 관리합니다. systemd
는 시스템의 초기화부터 서비스를 관리하고 모니터링하는 역할을 하며, 시스템의 효율성과 안정성을 높여줍니다.
관리 명령어
systemctl:
Ubuntu는 기본적으로
를 사용하여 서비스를 관리systemctl
systemctl status [서비스명] # 서비스 상태 확인 systemctl start [서비스명] # 서비스 시작 systemctl stop [서비스명] # 서비스 중지 systemctl restart [서비스명] # 서비스 재시작 systemctl enable [서비스명] # 부팅 시 서비스 자동 시작 systemctl disable [서비스명] # 부팅 시 서비스 자동 시작 해제 service [서비스명] start service [서비스명] stop service [서비스명] restart service [서비스명] reload
서비스 목록 확인
systemctl list-unit-files
명령어 예제
# 서비스 상태 확인 systemctl status sshd # 서비스 시작 systemctl start sshd # 서비스 중지 systemctl stop sshd # 서비스 재시작 systemctl restart sshd # 부팅 시 서비스 자동 시작 설정 systemctl enable sshd # 부팅 시 서비스 자동 시작 해제 systemctl disable sshd # httpd 데몬 상태 확인 systemctl status httpd # httpd 데몬 시작 systemctl start httpd # httpd 데몬 재시작 systemctl restart httpd # httpd 데몬 중지 systemctl stop httpd # 특정 서비스가 자동으로 시작되도록 설정 systemctl enable httpd # 특정 서비스의 자동 시작 해제 systemctl disable httpd # 모든 활성화된 서비스 확인 systemctl list-units --type=service # 특정 서비스 다시 로드 systemctl reload sshd # 특정 서비스 활성화 상태 확인 systemctl is-enabled sshd # 특정 서비스 비활성화 상태 확인 systemctl is-disabled httpd # 서비스 활성화된 후 로그 확인 journalctl -u sshd # 부팅 시 모든 서비스의 상태 확인 systemctl list-unit-files --type=service # 특정 서비스의 로그 확인 journalctl -xe -u httpd
서비스 상태 종류
systemctl
을 사용하여 서비스 상태를 확인할 때, 다양한 상태 코드가 있습니다. 예를 들어:
- active (running): 서비스가 정상적으로 실행 중입니다.
- inactive (dead): 서비스가 실행 중이 아닙니다.
- failed: 서비스가 실패하여 종료되었습니다.
- activating: 서비스가 활성화 중입니다.
- deactivating: 서비스가 비활성화 중입니다.