우분투에서 패키지 관리툴인 dpkg에 대하여 알아 보도록 할 것입니다.


설치된 Ubuntu 머신에서 다음과 같이 하면 dpkg 매뉴얼 페이지를 볼 수 있다.

$ man dpkg


설명은 다음과 같이 나온다.

 dpkg - package manager for Debian ( 데비안을 위한 패키지 매니저 )


dpkg는 데비안 패키지를 설치, 빌드, 삭제, 관리 하는 툴이다.

더 사용자에 가깝운 dpkg의 프론트엔드는 aptitude 이다.

dpkg는 커맨드라인 명령어로서 제로 또는 한개 이상의 옵션으 이용하여 제어 하게된다.

액션-파라미터는 dpkg의 옵션들이 어떤 방식으로 동작을 하는지 아래의 내용을 보면 알 수 있습니다.


dpkg는 또한 dpkg-deb의 프론트엔드로 사용 될 수 있다.


 다음은 dpkg-deb의 동작이며, 이것은 주어진 매개 변수를 가지고 실행 시키게 된다.


           -b, --build,    ( 소스를 이용하여 빌드 하여 패키지 생성 )

           -c, --contents, ( 패키지에 속한 내용을 목록형식으로 보기 )

           -I, --info,     ( 패키지 정보 확인 )

           -f, --field,    ( 패키지의 제어 필드를 보여준다. )

           -e, --control,  ( 패키지의 control-information 을 푼다. )

           -x, --extract,  ( 패키지 풀기 )

           -X, --vextract, and ( 패키지를 풀면서 메시지 출력 )

           --fsys-tarfile.


다음은 사용 예를 간략히 살펴 보았다.

==========================================================

다음과 같이 rig 패키지를 다운 로드 한다.


wget http://free.nchc.org.tw/ubuntu/pool/universe/r/rig/rig_1.11-1_i386.deb


$ dpkg -c rig_1.11-1_i386.deb

drwxr-xr-x root/root         0 2009-05-03 05:24 ./

drwxr-xr-x root/root         0 2009-05-03 05:24 ./usr/

drwxr-xr-x root/root         0 2009-05-03 05:24 ./usr/bin/

-rwxr-xr-x root/root     26228 2009-05-03 05:24 ./usr/bin/rig

drwxr-xr-x root/root         0 2009-05-03 05:24 ./usr/share/

drwxr-xr-x root/root         0 2009-05-03 05:24 ./usr/share/rig/

-rw-r--r-- root/root      7942 2009-05-03 05:24 ./usr/share/rig/fnames.idx

-rw-r--r-- root/root      8119 2009-05-03 05:24 ./usr/share/rig/lnames.idx

-rw-r--r-- root/root      1289 2009-05-03 05:24 ./usr/share/rig/locdata.idx

-rw-r--r-- root/root      7677 2009-05-03 05:24 ./usr/share/rig/mnames.idx

-rw-r--r-- root/root       693 2009-05-03 05:24 ./usr/share/rig/street.idx

drwxr-xr-x root/root         0 2009-05-03 05:24 ./usr/share/doc/

drwxr-xr-x root/root         0 2009-05-03 05:24 ./usr/share/doc/rig/

-rw-r--r-- root/root       533 2002-08-19 04:45 ./usr/share/doc/rig/README

-rw-r--r-- root/root       424 2009-05-03 05:24 ./usr/share/doc/rig/copyright

-rw-r--r-- root/root      1067 2006-04-23 23:56 ./usr/share/doc/rig/changelog.gz

-rw-r--r-- root/root       677 2009-05-03 05:24 ./usr/share/doc/rig/changelog.Debian.gz

drwxr-xr-x root/root         0 2009-05-03 05:24 ./usr/share/man/

drwxr-xr-x root/root         0 2009-05-03 05:24 ./usr/share/man/man6/

-rw-r--r-- root/root       969 2009-05-03 05:24 ./usr/share/man/man6/rig.6.gz



$ dpkg -I rig_1.11-1_i386.deb

 new debian package, version 2.0.

 size 29230 bytes: control archive= 998 bytes.

     752 bytes,    16 lines      control

     662 bytes,    11 lines      md5sums

 Package: rig

 Version: 1.11-1

 Architecture: i386

 Maintainer: Ubuntu MOTU Developers <ubuntu-motu@lists.ubuntu.com>

 Original-Maintainer: Norbert Veber <nveber@debian.org>

 Installed-Size: 120

 Depends: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.4.0)

 Section: misc

 Priority: extra

 Description: Random identity generator

  RIG (Random Identity Generator) is a free replacement for a shareware

  program out there called 'fake'. It generates random, yet real-looking,

  personal data. It is useful if you need to feed a name to a Web site,

  BBS, or real person, and are too lazy to think of one yourself. Also,

  if the Web site/BBS/person you are giving the information to tries to

  cross-check the city, state, zip, or area code, it will check out.


$ dpkg -f rig_1.11-1_i386.deb

Package: rig

Version: 1.11-1

Architecture: i386

Maintainer: Ubuntu MOTU Developers <ubuntu-motu@lists.ubuntu.com>

Original-Maintainer: Norbert Veber <nveber@debian.org>

Installed-Size: 120

Depends: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libstdc++6 (>= 4.4.0)

Section: misc

Priority: extra

Description: Random identity generator

 RIG (Random Identity Generator) is a free replacement for a shareware

 program out there called 'fake'. It generates random, yet real-looking,

 personal data. It is useful if you need to feed a name to a Web site,

 BBS, or real person, and are too lazy to think of one yourself. Also,

 if the Web site/BBS/person you are giving the information to tries to

 cross-check the city, state, zip, or area code, it will check out.


$ dpkg -e rig_1.11-1_i386.deb

$ ls

DEBIAN  rig_1.11-1_i386.deb

$ cd DEBIAN/

$ ls

control  md5sums

$ dpkg -x rig_1.11-1_i386.deb rig

$ ls

rig  rig_1.11-1_i386.deb

$ rm -rf rig

$ dpkg -X rig_1.11-1_i386.deb rig

./

./usr/

./usr/bin/

./usr/bin/rig

./usr/share/

./usr/share/rig/

./usr/share/rig/fnames.idx

./usr/share/rig/lnames.idx

./usr/share/rig/locdata.idx

./usr/share/rig/mnames.idx

./usr/share/rig/street.idx

./usr/share/doc/

./usr/share/doc/rig/

./usr/share/doc/rig/README

./usr/share/doc/rig/copyright

./usr/share/doc/rig/changelog.gz

./usr/share/doc/rig/changelog.Debian.gz

./usr/share/man/

./usr/share/man/man6/

./usr/share/man/man6/rig.6.gz


$ ls

rig  rig_1.11-1_i386.deb