커피닉스, 시스템 엔지니어의 쉼터 커피향이 나는 *NIX
커피닉스
시스템/네트웍/보안을 다루는 곳
* HanIRC의 #coffeenix 방
[ 장비 및 회선 후원 ]
HOME > 시스템 관리 / 서버운영 > 패키지 관리 / 패치 / rpm 도움말
검색 : 사이트 WHOIS 웹서버 종류


  ports로 설치한 프로그램을 패키지로 만들기(FreeBSD) 작성일 : 2010/03/02 19:11
 
  • 글쓴이 : 좋은진호 ( http://coffeenix.net/ )
  • 조회수 : 7639
          [ 이전화면 / 수정 ]   비밀번호 :     인쇄용 화면
      제  목 : ports로 설치한 프로그램을 패키지로 만들기(FreeBSD)
    작성자 : 좋은진호(truefeel, http://coffeenix.net/ )
    작성일 : 2010.2.19(금)


    1. 설치 패키지 정보 보기와 패키지 파일 만들기

    아주 기본적인 이야기 부터 시작하겠다. FreeBSD유저라면 모르지 않을 것이다.
    FreeBSD에서 설치된 패키지 목록을 볼 때 pkg_info명령으로 확인한다.

     
    # pkg_info
    apache-2.2.14_5     Version 2.2.x of Apache web server with prefork MPM.
    autoconf-2.62       Automatically configure source code on many Un*x platforms
    ... 생략 ...
     


    그리고, 설치된 패키지를 패키지 파일(.tbz)로 만들 때는 pkg_create 명령으로 만든다.

     
    # pkg_create -b apache-2.2.14_5
    # ls
    apache-2.2.14_5.tbz
     


    2. 설치된 패키지 중에 의존적인 것까지 모두 패키지 파일로 만들기

    지정한 패키지가 의존하고 있는 패키지(Depends on)들까지 모두 패키지 파일로 만드려면 어떻게 해야할까?
    man page에 나와 있는 다음 옵션들이 답을 준다.

     
         -b, --backup pkg-name
                 Create package file from a locally installed package named
                 pkg-name.  If the pkg-filename is not specified, then resulting
                 archive will be created in the current directory and named
                 pkg-name with an appropriate extraction suffix applied.

         -R, --recursive
                 When creating package file from a locally installed package also
                 create package files for all packages required by pkg-name.
                 Resulting archive(s) will be created in the current directory and
                 named using name of the respective package with appropriate
                 extraction suffix applied.

         -x, --regex
                 Use basic regular expressions for pkg-name.
     


    위 옵션을 조합하여 pkg_create만 해주면 된다. 패키지 파일 생성 상황을 보려면 -v 옵션까지 넣어주면 된다.

     
    # pkg_create -Rxb 패키지명
     


    - 지정한 패키지가 의존하고 있는 패키지 목록(Depends on)을  볼 때 : pkg_info -r 설치된_패키지명
    - 지정한 패키지를 필요로 하는   패키지 목록(Required by)을 볼 때 : pkg_info -R 설치된_패키지명

     
    # pkg_info -r apache-2.2.14_5
    Information for apache-2.2.14_5:

    Depends on:
    Dependency: expat-2.0.1_1
    Dependency: perl-5.10.1
    Dependency: pcre-8.00
    Dependency: libiconv-1.13.1_1
    # pkg_create -Rvxb apache
    Creating package apache
    Creating bzip'd tar ball in '/home/cnx/apache-2.2.14_5.tbz'
    Creating package expat-2.0.1_1
    Creating bzip'd tar ball in '/home/cnx/expat-2.0.1_1.tbz'
    Creating package perl-5.10.1
    Creating bzip'd tar ball in '/home/cnx/perl-5.10.1.tbz'
    Creating package pcre-8.00
    Creating bzip'd tar ball in '/home/cnx/pcre-8.00.tbz'
    Creating package libiconv-1.13.1_1
    Creating bzip'd tar ball in '/home/cnx/libiconv-1.13.1_1.tbz'
     



    3. 참고자료

    - "make package" and dependencies
      http://forums.freebsd.org/showthread.php?t=5052
    - pkg_info, pkg_create man page
      커피닉스 카페 최근 글
    [06/16] [질문]SAN 스위치 브로드케이드 dcx8510-4 장비관련입니다.
    [04/22] Re: 영화속에 컴퓨터 이야기 ~스워드피쉬(2001)
    [10/20] Cross Compiler 깔
    [07/14] SSL АО
    [04/26] Re: 도스화면 원격조종 여부
    [04/25] 도스화면 원격조종 여부
    [10/30] Cshell에서 난수 설정
    [10/23] 공항철도주식회사 SE 구인 件
    [01/26] Re: wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
    [01/25] wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
    [01/11] 특정 안드로이드 WebView 버전에서 SSL 문제 (WebView 버그)
    [08/01] DNS forwarder (전달자) 서버를 통해서 쿼리하면 역방향을 받아오질 못합니다.
    [05/16] (주)후이즈 시스템엔지니어 (경력자) 모집
    [02/15] [AWS] Cloudfront edge 확인하기
    [01/20] Mobile Service/eCommerce 기업에서 Server / Java / PHP 개발자 구인
      New!   최근에 등록한 페이지
      KiCad EDA Suite project (Free/Libre/Open-Source EDA Suite) (CAD)
      오픈캐스케이드 캐드 (OpenCASCADE CAD)
      QCad for Windows --- GNU GPL (Free Software)
      The Hello World Collection
      IPMI를 활용한 리눅스 서버관리
      DNS 설정 검사
      nagiosgraph 설치 방법
      Slony-I 설치 방법 (postgresql replication tool)
      Qmail기반의 Anti spam 시스템 구축하기
      clusterssh

    [ 함께하는 사이트 ]




    운영진 : 좋은진호(truefeel), 야수(yasu), 범냉이, sCag
    2003년 8월 4일~