본문 바로가기
IT/리눅스

리눅스 패키지(우분투와 CentOS)

by IT 과학정복 2024. 2. 29.
반응형

리눅스를 사용하면서 가장 편리한 점은 명령줄에 명령어만 입력하면 서버를 운영할 수 있다는 점입니다. 이런 리눅스의 편리함을 극대화시켜 주는 것은 리눅스의 명령어 보따리 격인 패키지입니다. 오늘은 리눅스 패키지에 대해 설명해 드리고 두 가지 대표적인 리눅스 배포판인 우분투(Ubuntu)와 CentOS에서의 패키지 사용법에 대해 알아보겠습니다.

리눅스 패키지란

리눅스 시스템에서 소프트웨어를 설치하고 관리하는 데 사용되는 파일 또는 소프트웨어의 모음을 말합니다. 이러한 패키지는 리눅스 배포판에 필요한 프로그램, 라이브러리, 문서 등을 포함하고 있어, 사용자가 쉽게 소프트웨어를 설치하고 업데이트할 수 있도록 해줍니다.

반응형

리눅스 패키지 시스템의 이점

리눅스 패키지 관리 시스템은 다음과 같은 이점을 제공합니다:

  • 효율적인 소프트웨어 관리: 사용자는 패키지 관리 시스템을 통해 소프트웨어 설치, 업데이트, 제거를 명령어 한 줄로 간단히 수행할 수 있습니다.
  • 최적화된 기능 제공: APT와 YUM(DNF) 같은 시스템은 각각 우분투와 CentOS와 같은 특정 배포판에 최적화되어 있어, 해당 환경에서 최상의 성능을 발휘합니다.
  • 시스템 관리의 단순화: 명령어의 옵션과 사용법을 숙지함으로써 사용자는 시스템 관리를 보다 쉽게 수행할 수 있습니다.


우분투(Ubuntu)에서의 패키지 관리

출처: 우분투 홈페이지

 저에겐 centOS보다 우분투가 편리하고 친숙하기 때문에?? 우분투를 먼저 소개를 해드리려고 합니다. 우분투(Ubuntu)는 전 세계 수많은 서버와 데스크톱에서 사용되는 인기 있는 리눅스 배포판입니다. 그 핵심 중 하나는 APT(Advanced Package Tool) 패키지 관리 시스템의 사용입니다. APT는 Debian 기반의 시스템에서 소프트웨어 패키지를 관리하는 데 사용되는 강력한 도구로, 사용자가 소프트웨어를 쉽게 설치, 업데이트, 제거할 수 있도록 설계되었습니다. 우분투에서 APT를 사용하여 패키지를 관리하는 방법에 대해서 알아보겠습니다.

패키지 설치

우분투에서 소프트웨어를 설치하는 기본 명령어

sudo apt-get install [패키지명]

이 명령은 지정된 패키지를 설치합니다.

 

예를 들어, 웹 서버로 널리 사용되는 nginx를 설치하고자 할 때는 다음과 같이 입력합니다:

sudo apt-get install nginx

APT 시스템은 필요한 모든 의존성을 자동으로 처리하며, 사용자에게 설치 과정에 대한 정보를 제공합니다.

패키지 업데이트

시스템을 최신 상태로 유지하기 위해 정기적으로 패키지 목록을 업데이트하고 설치된 패키지를 업그레이드하는 것이 중요합니다. 개발자들이 만든 패키지는 보안취약점이 생기거나 버그가 발생할 수 있고, 새로운 기능이 추가될 수 있습니다. 이런 경우에 리눅스의 패키지는 업데이트나 업그레이드가 필요합니다.

 

패키지 목록 업데이트

sudo apt-get update

  1. 이 명령은 우분투의 패키지 저장소에서 최신 패키지 정보를 가져와 로컬 패키지 데이터베이스를 갱신합니다. 이 단계는 실제로 설치된 패키지를 업데이트하지 않고, 사용 가능한 업데이트를 찾기 위한 것입니다.
  2. 시스템의 패키지 목록을 최신 상태로 업데이트하려면, 다음 명령을 사용합니다:
  3. 설치된 패키지 업그레이드 : sudo apt-get upgrade
  4. 이 명령은 업데이트된 패키지 목록을 바탕으로 시스템에 설치된 패키지들을 최신 버전으로 업그레이드합니다. 만약 특정 패키지의 업그레이드가 시스템의 다른 부분에 영향을 미칠 경우, 사용자에게 추가적인 확인을 요청할 수 있습니다.
  5. 시스템에 설치된 모든 패키지를 최신 버전으로 업그레이드하려면 다음 명령을 실행합니다:

패키지 제거

더 이상 필요하지 않은 소프트웨어 패키지를 제거하는 것도 APT의 중요한 기능 중 하나입니다. 리눅스 서버의 용량이 한정적이거나 서버의 관리를 위해서 패키지를 제거해 주는 것도 필요합니다.

 

패키지를 제거하는 명령

sudo apt-get remove [패키지명]

 

예를 들어, nginx 웹 서버를 시스템에서 제거하려면, 다음 명령을 입력합니다:

sudo apt-get remove nginx

이 명령은 지정된 패키지를 시스템에서 제거하지만, 패키지와 관련된 설정 파일은 보존합니다. 완전히 제거하려면 purge 명령을 사용합니다:

sudo apt-get purge [패키지명]

이렇게 하면 패키지와 관련된 설정 파일까지 모두 제거되어, 시스템이 더 깨끗해집니다.

 

CentOS에서의 패키지 관리

출처: cenOS 홈페이지

CentOS는 안정성과 보안이 중요한 서버 환경에서 널리 사용되는 리눅스 배포판입니다. Red Hat Enterprise Linux(RHEL)을 기반으로 하며, 강력한 패키지 관리 시스템을 제공합니다. CentOS 7 이하에서는 yum(Yellowdog Updater, Modified)이 기본 패키지 관리자로 사용되었으며, CentOS 8부터는 DNF(Dandified YUM)가 그 자리를 차지하고 있습니다. 이 포스트에서는 CentOS에서 yum과 DNF를 사용하여 패키지를 관리하는 방법을 알려드리겠습니다.

패키지 설치

CentOS에서 소프트웨어 패키지를 설치하는 과정은 yum 또는 DNF 명령어를 사용하여 수행됩니다.

  • YUM을 사용한 패키지 설치 (CentOS 7 이하):예를 들어, Apache 웹 서버를 설치하려면, 다음과 같이 입력합니다
  • sudo yum install httpd
  • sudo yum install [패키지명]
  • DNF를 사용한 패키지 설치 (CentOS 8 이상):DNF를 사용하여 nginx를 설치하는 명령은 다음과 같습니다
  • sudo dnf install nginx
  • sudo dnf install [패키지명]

패키지 업데이트

CentOS에서는 yum 또는 DNF를 사용하여 이 작업을 쉽게 수행할 수 있습니다.

 

YUM을 사용한 패키지 업데이트

 

특정 패키지를 업데이트

sudo yum update [패키지명]

 

시스템 전체를 업데이트

sudo yum update

 

DNF를 사용한 패키지 업데이트 (CentOS 8 이상)

특정 패키지를 업데이트

sudo dnf update [패키지명]

 

DNF를 사용하는 경우에도 명령어 구조는 비슷합니다. 

전체 시스템을 최신 상태로 업그레이드

sudo dnf update

패키지 제거

더 이상 사용하지 않는 소프트웨어는 시스템에서 제거하여 관리를 간소화할 수 있습니다.

 

YUM을 사용한 패키지 제거

sudo yum remove [패키지명]

 

예시, httpd 서버를 제거

sudo yum remove httpd

 

DNF를 사용한 패키지 제거 (CentOS 8 이상)

sudo dnf remove [패키지명]

 

예시, nginx를 제거

sudo dnf remove nginx

 

마무리

리눅스 패키지 시스템은 리눅스 사용자에게 없어선 안 되는 큰 장점입니다. 우분투의 APT나 CentOS의 YUM(DNF) 모두 각자의 배포판에 최적화된 기능을 제공하기 때문에, 이를 통해 소프트웨어 관리를 보다 효율적으로 수행할 수 있습니다. 각 명령어의 옵션과 사용법을 숙지하면 강력한 리눅스 서버를 구축할 수 있을 뿐 아니라, 시스템 관리가 한결 수월해질 것입니다.

 

이 글이 리눅스 패키지 관리에 대한 기본적인 이해를 돕는 데에 도움이 되기를 바랍니다.

반응형