-
[ 기본정리 ] 우분투 패키지Technique/LINUX 2016. 5. 11. 22:39반응형
리눅스에서 소프트웨어는 소스코드 형식 또는 바로 설치하여 사용할 수 있는 패키지 형태로 배포된다. 소스코드로 배포하는 경우는 대부분 하나의 아카이브 파일로 묶은 후 압축하여 배포한다.
그리고 바이너리 패키지로 배포되는 경우에 리눅스에서 주로 사용하는 패키지는 RPM과 .deb의 두 가지 형식이 있다. 이 중 우분투는 기본적으로 .deb 형식의 패키지를 사용하고, RPM 형식은 레드햇 계열 리눅스에서 주로 사용한다. 우분투에서도 RPM 형식의 패키지를 설치할 수는 있으나 별도의 명령을 설치해야 가능하며, 특별한 경우가 아니면 사용하지 않는다.
우분투 패키지의 구성
우분투는 데비안 계열의 표준 패키지를 사용하며, 구조가 단순하고, 설치, 제거가 간단하다.
특징
- 바이너리 파일로 구성되어 있어 컴파일이 필요 없다.
- 패키지의 파일들이 관련 디렉토리로 바로 설치된다.
- 패키지를 삭제할 때 관련된 파일을 일괄적으로 삭제할 수 있다.
- 기존에 설치한 패키지를 삭제하지 않고 바로 업그레이드할 수 있다.
- 패키지의 설치 상태를 검증할 수 있다.
- 패키지에 대한 정보를 제공한다.
- 해당 패키지와 읜존성을 가지고 있는 패키지가 무엇인지 알려준다. 의존성이 있는 패키지를 미리 설치할 수도 있고, 자동으로 설치할 수도 있다.
카테고리
데비안 배포판에 포함된 모든 패키지는 데비안 자유 소프트웨어 지침에 따라 자유롭게 사용하고 배포할 수 있으며, 이에 따라 우분투도 네 개의 카테고리로 나누어 소프트웨어를 제공한다
- main : 우분투에 의해 공식적으로 지원되며 자유롭게 배포할 수 있다.
- restricted : 우분투에 의해 지원되나 완전한 자유 라이센스 소프트웨어는 아니다.
- universe : 리눅스에서 사용할 수 있는 거의 대부분의 소프트웨어로 자유 소프트웨어 일 수도 있고 아닐 수도 있으며, 기술적 지원을 보장하지 않는다.
- multiverse : 자유 소프트웨어가 아닌 소프트웨어가 포함되어 있으며, 개인이 직접 라이센스를 확인해야 한다.
우분투 패키지의 이름 구성
우분투는 데비안 계열이므로 .deb를 확장자로 사용하며, 패키지의 이름아래와 같다.
파일명_버전-리비전_아키텍처.deb
- 파일명 : 첫 번째 항목은 패키지의 성격을 나타내는 파일명이다.
- 패키지 버전 : 두번째 항목은 패키지의 버전을 의미한다.
- 패키지 리비전 : 리비전은 원래 소스의 버전이 업그레이드되지는 않았지만 패키지의 보안 문제나 의존성 변화, 스크립트의 변화 등이 있음을 의미한다.
- 아키텍처 : 사용하는 시스템 아키텍처로 i386은 인텔을, all은 시스템과 상관없는 문서나 스크립트 등을 의미한다.
- 확장자 : 우분투 패키지의 확장자는 .deb를 사용한다.
패키지 저장소
우분투는 패키지와 패키지에 대한 정보를 저장하고 있는 서버인 패키지 저장소라는 개념을 사용한다. 패키지 저장소에서는 패키지의 기능 추가나 보안 패치 등 지속적인 업그레이드를 집중적으로 관리하고, 사용자는 저장소에 접속하여 촤신 패키지를 내려받아 설치할 수 있다.
패키지 저장소를 이용하려면 먼저 패키지 저장소를 설정해야 한다. 패키지 저장소에 대한 정보는 /etc/apt/sources.list 파일에 저장되어 있다. 이 파일을 수정하면 저장소를 추가하거나 삭제 할 수 있다.
sources.list 파일은 한 줄에 저장소의 정보를 하나씩 나열한다. 각 행은 패키지 유형( 바이너리, 소스 ), 저장소 주소, 우분투 버전 정보, 카테고리로 구성되어 있다.
- 패키지 유형 : deb는 바이너리 패키지의 저장소를 deb-src는 패키지의 소스 저장소를 의미한다. 보통 한 저장소에 바이너리와 소스를 함께 저장한다.
- 저장소 주소 : http 프로토콜을 사용하는 URL주소를 사용한다.
- 우분투 버전 정보 : 저장소에서 관리하는 패키지에 해당하는 우분투의 버전을 표시한다. 버전은 번호가 아니라 버전의 이름을 사용한다.
- 카테고리 : 저장소가 가지고 있는 소프트웨어 카테고리( main, restricted 등 )를 표시한다.
/etc/apt/sources.list 파일을 수정하여 저장소를 추가하거나 삭제할 수 있다.
이 파일을 수정했다면 저장소 정보가 수정된 것을 시스템이 알 수 있도록 해야 한다.
반응형'Technique > LINUX' 카테고리의 다른 글
[ 기본정리 ] 사용자 계정 관리 (0) 2016.05.11 [ 기본정리 ] 패키지 관리 (0) 2016.05.11 [ 기본정리 ] 데몬 프로세스 (0) 2016.05.10 [ 기본정리 ] init 프로세스와 런레벨 (0) 2016.05.10 [ 기본정리 ] 리눅스 시스템 부팅 (2) 2016.05.10