#1. 서비스와 리눅스 패키지

1. 서비스

1) 서비스란?

  • 웹 서버, 데이터베이스 서버 등을 운영하기 위한 서버 프로세스(실행 중인 프로그램, background process)이다.
  • 서비스, 데몬, 서버 프로세스는 모두 동일한 개념이다.

※ 데몬(Daemon)

  • 프로그램 뒤에 d(daemon)이 붙어있으면 서버용 프로그램이다.

 

2) 서버 프로세스

  • 백그라운드로 실행되는 프로세스.
  • 서비스 매니저 프로그램인 systemd 프로그램이 운영한다.
  • 각 프로세스가 독자적인 하나의 동작을 제공한다.
    • http 서비스는 웹 서버 동작
    • mysqld는 데이터베이스 서버 동작
    • smtp는 메일 발송

 

2. 서비스 관리

1) 서비스 시작, 중지 관련 스크립트 파일 위치

  • 보통 /usr/lib/systemd/system 디렉토리에 위치한다.
  • 파일명은 서비스이름.service 형식이다.
  • 실행 스크립트 파일은 systemctl 명령어에 의해 제어된다. 

 

2) 실행 및 종료

  • systemcrl 명령에 옵션을 적용하여 사용한다.
  • 서비스 운영은 root 권한을 통해서만 수행 가능하다.
    • 즉, su 명령어를 사용해서 관리자 계정으로 수행하거나 sudo 명령어를 사용해서 수행해야 한다.
$ systemctl 옵션 서비스명

※ 서비스명은 파일이름.service 또는 확장자를 뺀 서비스파일이름을 말한다.

- 서비스 시작하기

$ sudo systemctl start 서비스명
  • start 명령어만 사용하면 부팅시 매번 start를 해줘야 한다

 

- 서비스 중지하기

$ sudo systemctl stop 서비스명

 

- 서비스 재시작하기

$ sudo systemctl restart 서비스명

 

- 부팅시 자동 실행 등록

$ sudo systemctl enable 서비스명

 

- 부팅시 자동 실행 해제

$ sudo systemctl disable 서비스명

 

- 서비스 가동 상태 확인

$ sudo systemctl status 서비스명

 

- 부팅시 자동 실행이 등록된 서비스 목록 확인

  • grep 명령어와 함께 사용하여 출력결과를 원하는 결과만 검색할 수 있다.
$ sudo systemctl list-unit-files

빠져나올 때는 q 명령어 사용

 

3. 리눅스 패키지 (Linux Package)

1) 리눅스 패키지란?

  • 리눅스 시스템에서 소프트웨어를 실행하는데 필요한 파일들(실행파일, 설정파일, 라이브러리 등)이 담겨 있는 설치 파일 묶음이다.
  • 공인된 저장소(Repository)에 등록되어 있는 패키지를 인터넷을 통해 내려받아 시스템에 설치한다.

 

2) 패키지 관리자

  • 패키지의 설치, 업그레이드, 삭제 등을 수행하여 패키지를 관리하는 목적의 프로그램이다.
  • apt-get(Ubuntu), yum(RedHat), Homebrew(Mac), Chocolatey(Windows), NPM(Node), Yarn(Node), PIP(Python) 등이 있다.

 

3) apt-get

  • apt-get(Advanced Packaging Tool)은 Ubuntu를 포함한 Debian 계열의 리눅스에서 쓰이는 패키지 관리 명령어 도구이다.

 

- 패키지 인덱스 정보 업데이트

$ sudo apt-get update
  • apt-get은 인덱스를 가지고 있는데 이 인덱스는 /etc/apt/sources.list 에 존재
  • 이곳에 저장된 저장소에서 사용할 패키지의 정보를 얻는다.

 

- 설치된 패키지 업그레이드

$ sudo apt-get upgrade

 

- 의존성 검사 후 설치

$ sudo apt-get dist-upgrade
  • A 패키지를 업그레이드 하려고 할 때 B 패키지가 A 패키지를 의존하고 있고, A 패키지를 업그레이를 함으로써 B 패키지에 에러가 발생하면 업그레이드 하지 않는다.

 

- 패키지 설치

$ sudo apt-get install 패키지이름

 

- 패키지 재설치

$ sudo apt-get --reinstall install 패키지이름

 

- 패키지 삭제 (설정파일은 삭제하지 않음)

$ sudo apt-get remove 패키지이름

 

- 패키지 삭제 (설정파일까지 모두 삭제)

$ sudo apt-get --purge remove 패키지이름

 

- 패키지 검색

$ sudo apt-cache search 패키지이름

 

- 패키지 정보 보기

$ sudo apt-cache show 패키지이름

'국비수업 > Linux' 카테고리의 다른 글

[Linux] FTP (File Transfer Protocol)  (0) 2022.07.23
[Linux] 네트워크와 방화벽  (0) 2022.07.22
[Linux] 쉘(Shell)  (0) 2022.07.20
[Linux] 프로세스 관리  (0) 2022.07.20
[Linux] 파일 다운로드, 압축하기  (0) 2022.07.20

+ Recent posts