Published Book on Amazon
All of IOT
Starting with the Latest Raspberry Pi from Beginner to Advanced – Volume 1 |
|
All of IOT
Starting with the Latest Raspberry Pi from Beginner to Advanced – Volume 2 |
출판된 한글판 도서
최신 라즈베리파이(Raspberry Pi)로 시작하는 사
물인터넷(IOT)의 모든 것 – 초보에서 고급까지 (상) |
|
최신 라즈베리파이(Raspberry Pi)로 시작하는 사
물인터넷(IOT)의 모든 것 – 초보에서 고급까지 (하) |
Original Book Contents
17.5.3 package 형식의 파일로 배포되는 프로그램 설치
물론 프로그램이 package 형식으로 구성되어 있지만, package repository에 등록되어 배포되지 않고, 별도의 방식으로 배포되는 package 프로그램인 경우는 APT 도구인 "apt-get" 명령을 사용할 수 없고, low-level의 명령인 "dpkg" 명령을 사용해야 한다.
[명령 형식]
dpkg [option...] -i directory/package-file dpkg [option...] --install directory/package-file |
[명령 개요]
■ 지정된 package를 시스템에 설치한다.
■ user 권한 -- super user.
[상세 설명]
■ 여기서 지정된 package-file은 package의 이름이 아니라 package정보를 포함하고 있는 파일이름으로 통상 ".deb" 확장자를 가진다.
■ "--recursive" 또는 "-R" option이 지정되면 package-file에는 특정 파일이 아니라 directory를 지정한다.
■ 이 작업을 하면 "--unpack" action과 "--configure" action의 작업을 모두 처리한다.
■ install 작업은 다음 단계를 진행한다.
■ 새로운 package에 대한 control files을 추출한다..
■ 새로운 package를 설치하기 전에 다른 version의 동일 package가 설치되어 있다면, 이전 package의 "prerm" script를 실행한다.
■ package가 "preinst" script을 제공하면, 해당 script를 실행한다.
■ 새로운 파일의 package를 unpack하고, 설치하는 과정에서 처리가 잘못되면 다시 복구할 수 있도록 이전 파일을 backup한다.
■ 새로운 설치를 하기 전에 다른 version의 동일 package가 설치되어 있다면 이전 package의 "postrm" script를 실행한다. 이 script는 새로운 package의 "preinst" script가 실행된 이후에 실행되는데, 이것은 이전 파일이 삭제됨과 동시에 새로운 파일이 write되기 때문이라는 것을 주의해 보기 바란다.
■ package에 대한 configuration 설정한다. 이 작업이 어떻게 이루어지는지에 대한 상세한 사항은 "--configure" action에 대한 설명을 참조하기 바란다.
[주요 option]
■ action
-i, --install package-file... | Install the package. If --recursive or -R option is specified, package-file must refer to a directory instead. |
--unpack package-file... | Unpack the package, but don't configure it. If --recursive or –R option is specified, package-file must refer to a directory instead. |
--configure package...|-a|--pending
| Configure a package which has been unpacked but not yet configured. If -a or --pending is given instead of package, all unpacked but unconfigured packages are configured. |
■ option
-R, --recursive
| Recursively handle all regular files matching pattern *.deb found at specified directories and all of its subdirectories. This can be used with -i, -A, --install, --unpack and --avail actions. |
[사용 Example]
다음은 <Mplayer> 프로그램을 설치하기 위해서 package 파일을 download 받아서 시스템에 설치하는 사례이다
pi@raspberrypi ~ $ dpkg -i /home/pi/Downloads/mplayer_0.xx_i386.deb |
|
다음은 <Cron> 프로그램 package 파일을 download 받아서 설치하는 사례이다
pi@raspberrypi ~ $ dpkg -i /home/pi/Downloads/cron_3.0p11.deb |
|