Ubuntu 및 기타 배포판에 소프트웨어를 배포하는 방법

프로그래머인지 아닌지에 해당 응용 프로그램이나 스크립트를 설치하는 방법을 원하는 경우 몇 가지 방법이 있습니다.
글꼴이있는 DEB 패키지 (debian 및 파생 제품에만 해당)

이 방법은 애플리케이션의 소스 코드가있을 때 사용합니다.

먼저 마법을 수행하는 프로그램을 설치합니다. "Checkinstall", 터미널에서 우리는

sudo aptitude install 체크 인스톨

예를 들어 라이브러리를 사용합니다. "절름발이", 소스 다운로드 여기에, 우리는 폴더를 만들고 파일을 배치합니다 핥기-3.98.4.tar.gz 터미널에서 루트 권한으로 해당 폴더에 들어가이 행을 실행합니다.

tar -xzvf lame-3.98.4.tar.gz cd lame-3.98.4 ./configure make checkinstall cp * .deb ../ cd .. rm -R lame-3.98.4 chmod 777 lame-3.98.4 *. deb

우리를 위해 deb 패키지를 생성하고,이 방법은 마지막에 생성 된 패키지를 설치합니다.

수동 DEB 패키지 (debian 및 파생 제품에만 해당)

이 방법은 사전 컴파일 된 스크립트 또는 응용 프로그램 용입니다.

DEB 패키지의 구조

| 설정 (일반 폴더) | | -DEBIAN (구성 파일이있는 폴더) | --control (구성 파일) | --preinst (설치 전에 실행되는 파일 또는 스크립트) | --postinst (설치 후 실행되는 파일 또는 스크립트) | --prerm ( 제거하기 전에 실행할 파일 또는 스크립트) | --postrm (제거 후 실행할 파일 또는 스크립트) | | -usr (응용 프로그램 파일이있는 폴더) | -usr / bin (바이너리 또는 스크립트가있는 폴더) | -usr / share / pixmaps (아이콘이있는 폴더) | -usr / share / applications (있는 폴더가있는 폴더) 발사대)

«control»파일의 예

패키지 : TUPACKAGE 버전 : VERSION 아키텍처 : amd64 (i386 또는 모두) 유지 관리자 : AUTHOR 섹션 : 파트너 / 웹 우선 순위 : 선택 사항 설명 : TEXT

DEB 패키지 생성

sudo chmod -R 루트 : 루트 설정 / sudo chmod -R 755 설정 / sudo dpkg -b 설정 / package.deb chmod 777 package.deb chown -R 설정

이 데이터를 사용하여 이미 애플리케이션에 대한 deb 패키지를 생성 할 수 있습니다. 예를 들어 간단한 bash 스크립트를 만들 것입니다.

다음과 같은 폴더를 만듭니다. «ubunlog» 그리고이 다른 이름 안에 설정
그런 다음 마지막 폴더 안에 두 개의 폴더를 만듭니다. "데비안" 그리고 다른 «Usr».

이것은 제어 파일입니다

묶음: ubunlog-web 버전: 0.11.5.13 아키텍처: 모두 유지관리자: TU 이름 섹션: 파트너/웹 우선순위: 선택 사항 설명: 튜토리얼, Linux 데스크탑, 소프트웨어, 뉴스 및 Ubuntu에 관한 모든 것

우리는 그것을 폴더 안에 보관합니다. "데비안" 이전에«control»로 생성 한

이 코드는 postinst 파일에서 가져온 것입니다.

#!/bin/sh chmod 755 /usr/bin/ubunlog-웹 chmod +x /usr/bin/ubunlog-웹 chmod 755 /usr/share/pixmaps/ubunlog-web.png chmod 755 /usr/share/applications/ubunlog-web.desktop chmod +x /usr/share/applications/ubunlog-web.desktop

이전과 동일한 폴더에 "postinst"로 저장합니다.

이제 우리는 폴더 안에 스크립트, 실행기 및 아이콘에 대한 폴더를 만듭니다. 설정 우리는 «Usr»

보시다시피 두 개의 폴더가 있습니다. "데비안" 그리고 다른 «Usr» 몇 초 전에 생성 한 것인데 후자 안에 폴더를 생성합니다. "큰 상자" 그리고 다른 "Compartir"

이것은 스크립트 코드입니다

#!/bin/sh 파이어폭스 https://ubunlog.com/ &

우리는 그것을 폴더에 저장합니다 "큰 상자" 이름과 함께 «ubunlog-편물".

이제 우리는 폴더로 이동 "Compartir" 여기에서 우리는 "픽스맵" 그리고 우리는 이름으로 저장합니다 «ubunlog-web.png» 이 이미지를 여기에

런처를 생성하기 만하면됩니다.이를 위해 마지막 폴더를 생성합니다. 이름으로 "응용 프로그램"

이것은 같은 코드입니다

[데스크톱 항목] 인코딩=UTF-8 이름=Ubunlog 웹 블로그 Comment=튜토리얼, Linux 데스크탑, 소프트웨어, 뉴스 및 Ubuntu에 관한 모든 것 GenericName=튜토리얼, Linux 데스크탑, 소프트웨어, 뉴스 및 Ubuntu Exec에 관한 모든 것=ubunlog-웹 터미널=false 유형=응용 프로그램 아이콘=ubunlog-웹 카테고리=애플리케이션;네트워크;인터넷; 시작WMClass=ubunlog-웹 시작 알림=true

그들은 그것을 폴더에 보관합니다. "응용 프로그램" 으로 «ubunlog-web.desktop»

우리는 이미 모든 준비가되어 있습니다. deb 패키지 생성, 루트 암호를 입력하라는 메시지가 표시되지만 아무것도 설치하지 않습니다.

sudo chmod -R 루트:루트 설정/ sudo chmod -R 755 설정/ sudo dpkg -b 설정/ ubunlog-web_0.11.5.13_all.deb chmod 777 ubunlog-web_0.11.5.13_all.deb chown -R 설정

모든 것이 정확하다면 이미 패키지가 있는 것입니다. «ubunlog-web_0.11.5.13_all.deb».

자동 압축 해제 매뉴얼 (Ubuntu에서만 테스트되었으며 모든 Distro에서 작동)

이 방법은 makeself 스크립트 (http://megastep.org/makeself/)로 파일을 생성하는 것입니다.

웹에서 다운로드하고 .run 파일이며 권한을 부여하고 실행합니다.

이것을 어떻게 사용 하는가.

makeself.sh FOLDER / SOURCE / RESULT.RUN "TEXT"./setup.sh

보시다시피 "폴더 / 오리진 /» 응용 프로그램 또는 스크립트의 파일 및 폴더입니다. «RESULT.RUN» 결과 파일 또는 자동 압축 풀기 파일입니다.
"본문" 자동 압축 풀기 파일을 실행할 때 표시되는 메시지이며 따옴표로 묶여 있습니다.
"./Setup.sh" 자동 압축 풀기 파일의 압축을 풀 때 실행되는 스크립트이므로 권한을 부여하는 것을 잊지 마십시오.

더 이해하기 쉽도록 deb 패키지의 동일한 예제를 사용하지만 이에 맞게 조정합니다.

다음과 같은 폴더를 만듭니다. «ubunlog» 생성 한 폴더를 복사하고 이름을 다음과 같이 변경합니다. 스스로
폴더에서 «ubunlog» 다른 이름을 만들다 설치 이 장소 안에 다음 파일이 있습니다.

설치 스크립트

#!/bin/sh cp ubunlog-웹 /usr/bin/ chmod 755 /usr/bin/ubunlog-웹 chmod +x /usr/bin/ubunlog-웹 CP ubunlog-web.png /usr/share/pixmaps/ chmod 755 /usr/share/pixmaps/ubunlog-web.png cp ubunlog-web.desktop /usr/share/applications/ chmod 755 /usr/share/applications/ubunlog-web.desktop chmod +x /usr/share/applications/ubunlog-web.desktop

setup.sh로 저장합니다.

우리의 스크립트

#!/bin/sh 파이어폭스 https://ubunlog.com/ &

"로 저장합니다.ubunlog-web» 아이콘이 이름으로 저장됩니다. «ubunlog-web.png» 이 이미지를 여기에

투수

[데스크톱 항목] 인코딩=UTF-8 이름=Ubunlog 웹 블로그 Comment=튜토리얼, Linux 데스크탑, 소프트웨어, 뉴스 및 Ubuntu에 관한 모든 것 GenericName=튜토리얼, Linux 데스크탑, 소프트웨어, 뉴스 및 Ubuntu Exec에 관한 모든 것=ubunlog-웹 터미널=false 유형=응용 프로그램 아이콘=ubunlog-웹 카테고리=애플리케이션;네트워크;인터넷; 시작WMClass=ubunlog-웹 시작 알림=true

그들은 그것을 다음과 같이 저장합니다. «ubunlog-web.desktop»

이제 자동 압축 풀기 파일을 생성합니다.

chmod 755 setup/ chmod +x setup/setup.sh sh ../makeself/makeself.sh 설정 ubunlog-web.run "Ubunlog - 튜토리얼, Linux 데스크탑, 소프트웨어, 뉴스 및 Ubuntu에 관한 모든 것" ./setup.sh

자동 압축 풀기 파일이 이미 있습니다.

이것이 도움이 되었기를 바랍니다.

귀하의 의견 감사합니다, 만약 ERROR가 있다면 그것은 당신의 상상의 제품입니다, hahaha


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   데이비드 고메즈

    훌륭한 매뉴얼, 축하합니다 ...

  2.   Linux를 사용합시다

    우수 기사 Luciano!
    정말 축하합니다.
    포옹! 폴.

  3.   마티 1206

    축하합니다! 이 기사는 데비안과 우분투와 같은 파생물을 위해 .deb 바이너리를 패키징하는 방법을 배우기 위해 내가 본 최고의 기사 중 하나입니다.

    ArchLinux의 경우 최상의 BSD 스타일로 PKGBUILD를 사용합니다. https://wiki.archlinux.org/index.php/PKGBUILD_%28Espa%C3%B1ol%29

    포옹!

    1.    루치아노 라 가사

      안녕하세요, 귀하의 의견에 감사드립니다. 아치 용 패키지를 만드는 방법을 게시물에 추가 할 수 있다고 생각한다면 우분투와 약간의 centos 만 사용한다는 것을 분명히했으며 한 번 시도했지만 가지고 있지 않은 것이 매우 좋다고 의견을 보냅니다. 설치하는 시간입니다. 제가 할 수 있다면 누구나 할 수 있기 때문에 아주 좋을 것입니다.

  4.   루치아노 라 가사

    안녕하세요, 귀하의 의견에 감사드립니다. 다른 경우에 이미 언급했듯이 제 게시물은 제 경험을 바탕으로 작성되었으며 유용하기를 바랍니다.

  5.   조롱

    안녕 루시아노.

    단계를 따르기 시작했지만 checkinstall을 통과하지 못했습니다. 다음 오류를 반환합니다.

    "Makefile : 349 : 대상 '재귀 설치'레시피 실패
    make : *** [install-recursive] 오류 1

    **** 설치에 실패했습니다. 패키지 생성을 중단합니다. "

    그 전에 "make"명령은 출력에 다음을 표시합니다.

    "Make [3] : '모두'를 위해 할 일이 없습니다."

    나는 무엇이 실패하는지 이해하지 못한다. LAME의 최신 버전을 다운로드하여 내 문제를 해결할 수 있는지 확인했지만 할 일이 없습니다.

    인사말.