♧ 실질적으로 APT는 dpkg와 함께 동작하지만, 데비안 시스템에서 필요한
소프트웨어 검색, 다운로드, 설치, 업그레이드 그리고 확인 등
대부분의 패키지 관리 작업은 APT 유틸리티만으로도 충분하다.
▶ APT(Advenced Package Tool) 일반적 사용
APT 명령어 | 설 명 |
apt-get - APT package handling utility | |
sudo apt-get update | /etc/apt/sources.list 를 참조해 사용할 수 있는 패키지 데이터베이스를 업데이트한다. (source.list 파일을 변경했다면 반드시 이 명령을 실행) |
sudo apt-get check | 시스템 무결성 검사. |
sudo apt-get install <package> | 주어진 패키지명을 데이터베이스에서 찾을 수 있다면, 해당 패키지를 다운로드받아 설치. (APT 버전 0.6부터, 이 명령어는 자동적으로 GPG키를 사용해 패키지의 신뢰성을 검증) |
sudo apt-get -f install | 깨진 패키지를 위해 정상여부를 검사. (이 명령어는 의존성 문제에 대한 메시지 수정을 시도) |
sudo apt-get -d install <package> | 패키지를 설치하지 않고 /var/cache/apt/archives 디렉토리에 다운로드만 받음. |
sudo apt-get clean | 디스크 공간 확보를 위해 /var/cache/apt/archives 디렉토리에 캐시되어 있는 패키지들을 모두 삭제. |
sudo apt-get autoclean | 불완전하게 다운로드된 패키지나 오래된 패키지를 삭제하고자 할 때 실행. (부분적으로 디스크 공간을 절약할 수 있다) |
sudo apt-get upgrade | 설치되어 있는 모든 패키지에 대한 최신 업데이트를 검사한 후, 다운로드 받아 설치. |
sudo apt-get dist-upgrade | 전체 시스템을 새로운 버전으로 업그레이드 한다. 여기에는 패키지 삭제도 포함되어 있다. (이 방법은 시스템을 업데이트하는 방법으로는 잘 사용되지 않음) |
sudo apt-get --purge remove <package> | 주어진 패키지와 그 설정파일을 삭제. (--purge 옵션을 사용하면 설정파일까지 삭제) |
apt-cache - query the APT cache | |
apt-cache search <keyword> | 패키지 데이터베이스에서 주어진 키워드를 대소문자 구분 없이 검색. (결과로 키워드를 포함하고 있는 패키지명과 설명이 출력) |
apt-cache showpkg <package> | 단일 패키지에 대한 일반적인 정보 출력. |
apt-cache show <package> | 주어진 패키지명에 해당하는 소프트웨어에 대한 정보 출력. |
apt-cache stats | 설치된 모든 패키지에 대한 상태정보를 출력. |
apt-cache dump | 캐시에 있는 모든 패키지를 간단한 형식으로 출력. |
apt-cache dumpavail | 표준출력으로 유효한 파일들을 출력. |
apt-cache depends | 패키지가 설치되어 있는지 여부에 관계없이, 패키지에 대한 의존성을 출력. |
apt-cache pkgnames | 시스템에 설치되어 있는 모든 패키지 목록을 보여줌. |
apt-config - APT Configuration Query program | |
apt-config -v | 설치된 APT 유틸리티의 버전정보 출력. |
apt-key - APT key management utility | |
sudo apt-key list | APT가 알고 있는 gpg 키 목록을 출력. |
sudo apt-key add <file> | APT에 서명키 등록. |
sudo apt-key del <keyid> | 신뢰할수 있는 키 리스트에서 키를 제거. |
■ APT리포지토리와 써드파티 서명키 추가
Google에서 만들어 공개한 디지털 사진 공유 및 관리도구인 Picasa 프로그램(http://picasa.google.com/)을 설치해 보자. |
① 구글 리포지토리를 사용하기 위해 텍스트 에디터로 /etc/apt/sources.list 파일 하단에 두 라인 추가.
$ sudo vi /etc/apt/sources.list … #cn - added for google software deb http://dl.google.com/linux/deb/ stable non-free |
▷ 변경에 대한 코멘트를 남기고 싶다면 다음에 보이는 바와 같이 #cn을 사용.
▷ 첫번째 필드 - deb : 빌드된 패키지, deb-src: 소스 패키지
▷ 두번째 필드 - 배포판에 대한 Repository의 URL 주소.
▷ 세번째 필드 - 배포(distribution)
▷ 나머지 필드 - 소프트웨어 컴포넌트 기술
② Google Package에 대한 인증을 위해 먼저 서명키를 다운.
wget https://dl-ssl.google.com/linux/linux_signing_key.pub -O /tmp/key.pub |
▷ wget 명령으로 Google 사이트로부터 파일을 다운로드 받아 저장.
(공개 암호화 키는 구글 사이트로부터 다운로드 받은 패키지 검증에 사용)
③ 다음 apt-key 명령어를 사용해 APT에 서명키를 등록.
$ sudo apt-key add /tmp/key.pub [sudo] password for devanix: OK |
④ Google 디지털 서명키가 정상적으로 등록되었는지 확인.
$ sudo apt-key list /etc/apt/trusted.gpg ------------------------- …[중략]… pub 1024D/7FAC5991 2007-03-08 uid Google, Inc. Linux Package Signing Key <linux-packages-keymaster@google.com> sub 2048g/C07CB649 2007-03-08 |
⑤ 다음으로, APT 패키지 업데이트를 통해 새로운 리포지토리를 활성화 한다.
$ sudo apt-get update |
■ APT를 사용하여 패키지 검색 & 설치 & 업그레이드
위 과정에서 마치고 새로운 리포지토리가 준비되었다면
해당 리포지토리에서 제공하는 새로운 소프트웨어를 검색, 설치할 수 있다.
## 패키지 검색 ## $ apt-cache search picasa …[중략]… picasa - Image management application from Google ## 패키지 정보 확인 ## $ apt-cache show picasa Package: picasa Version: 2.7.3736-15 Architecture: i386 Depends: libc6 (>= 2.2), libasound2, zlib1g, bash …[중략]… ## 패키지 의존성 확인 ## $ apt-cache depends picasa picasa 의존: libc6 의존: libasound2 liboss-salsa-asound2 …[중략]…
## 패키지 설치 ## (이미 설치 되어 있는 경우 - 자동적으로 최신 버전으로 업데이트) $ sudo apt-get install picasa Reading package lists… Done …[중략]…
## 업데이트 목록 확인 ## $ sudo apt-get update ## 설치되어 있는 패키지 모두 업그레이드 ## $ sudo apt-get upgrade |
■ APT를 사용하여 패키지 삭제 & 캐시정보 삭제
## 패키지 삭제 ## $ sudo apt-get rermove picasa
## 패키지 캐시정보 검색&삭제 ## $ find /var/cache/apt/ -name \*.deb /var/cache/apt/archives/picasa_2.7.3736-15_i386.deb …[중략]… $ sudo apt-get clean |
▷ 다운로드한 패키지는 /var/cache/apt/에 캐시해 두는데,
이들 패키지가 다시 필요할 경우 다운로드 시간을 절약할 수 있다.
패키지 캐시는 결과적으로 많은 디스크 공간을 사용하게 된다.
물론 이 캐시도 삭제할 수 있지만, 나중에 의존성 문제 등 삭제된 패키지가 필요하게 되면
다시 다운로드받아야 한다는 단점이 있다.
'컴퓨터 서적 정리 > Ubuntu Linux Toolbox' 카테고리의 다른 글
[Chap2 #05] - aptitude를 사용하여 Software 관리 (0) | 2011.08.05 |
---|---|
[Chap2 #04] - dpkg를 사용하여 Software 관리 (0) | 2011.08.05 |
[Chap2 #02] - Debian Software Package 사용 (0) | 2011.08.04 |
[Chap1 #04] - 리눅스 참고 정보(help, man, info) (0) | 2011.08.04 |
[Chap1 #03] - 리눅스 명령어 찾기 (0) | 2011.08.04 |