리눅스에서 deb 패키지 만들기 너무 쉽다: 우분투 deb 설치 패키지 파일의 내부 구성과 사용 원리 분석

WBOY
풀어 주다: 2024-02-19 13:21:15
앞으로
824명이 탐색했습니다.

리눅스에서 deb 패키지 만들기 너무 쉽다: 우분투 deb 설치 패키지 파일의 내부 구성과 사용 원리 분석

Deb 파일은 Linux Debian 및 그 파생 배포 프로그램을 배포하고 설치하는 데 사용되는 아카이브 파일로, 일반적으로 응용 프로그램 데이터가 포함되어 있습니다. 종속성 처리, 데스크탑 통합, 사전 및 사후 설치 스크립트 실행에 매우 편리합니다. Deb 형식과 유사한 또 다른 패키지 형식은 Fedora 시리즈 배포판에서 일반적으로 사용되는 rpm 파일입니다.

이 글에서는 예제를 통해 간단한 deb 패키지를 만드는 방법을 보여주고, deb 패키지에 있는 각 파일의 역할과 설치 후 이를 적용하고 유지하는 방법을 설명합니다.

deb 패키지 분석

deb는 애플리케이션 및 기타 유틸리티 파일이 포함된 일반적인 Unix ar 아카이브 형식입니다. 핵심 구성 요소는 deb 패키지와 설치 프로그램에 대한 중요한 정보가 포함된 제어 파일(control)입니다.

  • 내부적으로 deb 패키지에는 /usr, /usr/bin, /opt 등과 같은 Linux의 일반적인 파일 시스템 디렉터리 구조를 시뮬레이션하는 파일 모음이 포함되어 있습니다. 설치 중에 이러한 디렉터리 중 하나에 있는 파일은 실제 파일 시스템의 동일한 위치에 복사됩니다. 예를 들어 패키지의 /usr/bin/binaryfile과 같은 바이너리 파일은 시스템의 /usr/bin/binaryfile에 설치됩니다.
  • 외부적으로 모든 deb 패키지 파일은 특정 명명 규칙을 따릅니다.
으아악

64비트 프로세서(AMD64)용으로 제작된 mynano 버전 1.0이라는 프로그램을 게시한다고 가정해 보겠습니다. deb 파일 이름은 mynano_1.0-0_amd64.deb

과 같습니다.

Deb 패키지 만들기

패키지를 생성할 준비가 되었습니다. 시스템에 dpkg-deb 도구(dpkg 패키지에서 제공)가 설치되어 있는지 확인하십시오. 최종 deb 패키지는 나중에 dpkg-deb를 사용하여 생성됩니다.

(1) 패키지 파일을 저장할 작업 디렉터리를 만들고 이전 명명 규칙에 따라 이름을 지정합니다.

으아악

(2) 내부 구조를 생성하고 대상 시스템에서 설치해야 할 프로그램 파일을 배치합니다. 실행 파일을 /usr/bin/

에 설치한다고 가정합니다.

먼저 디렉토리를 생성하세요:

으아악

mkdir 명령의 -p 플래그는 중첩된 디렉터리를 생성하고 해당 디렉터리가 존재하지 않는 경우 자동으로 생성합니다. 그런 다음 실행 파일을 복사하세요.

으아악

(3) 파일 컨트롤을 만듭니다. 이 파일은 DEBIAN 디렉터리에 있습니다(디렉터리 이름은 대문자로 표시됩니다)

먼저 폴더를 만드세요: DEBIAN

으아악

그런 다음 빈 파일을 만듭니다: control

으아악

제어 파일 내용을 입력하세요:

으아악

그 중:

  • 패키지 – 프로그램 이름;
  • 버전 – 프로그램 버전;
  • 아키텍처—타겟 아키텍처
  • 유지관리자 – 패키지 유지 관리 책임자의 이름과 이메일 주소
  • 설명 – 프로그램에 대한 간략한 설명입니다.
  • 종속됨 - 이 패키지가 의존하는 다른 패키지입니다.

파일에는 deb 패키지의 종속성 목록을 가리키는 종속성과 같은 다른 유용한 필드가 포함될 수 있습니다. 그런 다음 apt 명령을 사용하여 deb 패키지를 설치하면 nano>=5.0 버전의 소프트웨어 패키지가 먼저 설치된 다음 mynano가 설치됩니다.

(5) 마지막 단계: 다음과 같이 dpkg-deb를 호출하여 deb 패키지를 빌드합니다. 으아악

예시:

으아악

여기서 –root-owner-group 플래그는 모든 deb 패키지 콘텐츠를 루트 사용자가 소유하게 만드는 표준 접근 방식입니다. 해당 플래그가 없으면 모든 파일과 폴더의 소유자는 현재 사용자이지만 deb 패키지가 설치될 시스템에 반드시 동일한 이름의 계정이 있는 것은 아니라는 점을 고려하면 –root-owner-를 사용하십시오. 그룹 더 합리적입니다.

위 명령은 작업 디렉터리 옆에 .deb 파일을 생성하거나, 패키지에 오류가 있거나 누락된 경우 오류를 인쇄합니다. 작업이 성공하면 생성된 deb 패키지를 다른 사람에게 배포할 수 있습니다.

(6) deb 패키지를 사용하여 시스템에 설치: apt 메소드를 통해 만든 deb 패키지를 설치하면 종속성이 자동으로 설치되는 것을 볼 수 있습니다: nano 소프트웨어 패키지

으아악

(7) [선택 사항] 설치된 소프트웨어 mynano 제거:

으아악

(8) [선택 사항] mynano_0.1-1_amd64.deb의 종속성을 확인합니다: dpkg -I ./mynano*deb

위의 deb 패키지 제작 방법에서 개선할 수 있는 점:

위 내용은 리눅스에서 deb 패키지 만들기 너무 쉽다: 우분투 deb 설치 패키지 파일의 내부 구성과 사용 원리 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:mryunwei.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿