dpkg (debian package)
ubuntu의 대표적인 패키지 설치 명령으로 apt와 dpkg가 있다.
apt가 나오기 이전에는 주로 dpkg가 사용되었는데, apt는 dpkg를 포함한 확장 개념에 가깝다. 따라서 dpkg의 개념을 먼저 익히도록 한다.
설치 파일의 확장명은 *.deb이며, 이를 패키지(Package)라고 부른다.
파일의 의미
많은 deb 파일 중 예시로 X윈도용 계산기 프로그램인 galculator_2.1.4-1_amd64.deb 파일이 있다.
deb 파일의 형식은 다음과 같다.
패키지이름_버전-개정번호_아키텍처.deb
- 패키지 이름 : 프로그램 이름
- 버전 : 대부분 3자리수. 주 버전, 부 버전, 패치 순 (숫자가 높을수록 최신)
- 개정 번호 : 문재점을 개선할 때마다 붙여지는 번호 (번호가 높을수록 좋다)
- 아키텍처
- i386 : 인텔 또는 AMD 계열의 32비트 CPU (구형 CPU)
- amd64 : 인텔 또는 AMD 계열의 64비트 CPU (가장 보편적으로 사용되는 CPU)
- all : 모든CPU에 설치 가능
자주 사용하는 dpkg 명령어 옵션
설치 | dpkg -i 패키지파일이름.deb | 패키지 설치 |
삭제 | dpkg -r 패키지이름 | 기존에 설치된 패키지 삭제 |
dpkg -P 패키지이름 | 기존에 설치된 패키지 삭제 및 설정 파일까지 모두 제거 | |
패키지 조회 | dpkg -l 패키지이름 | 설치된 패키지에 대한 정보를 보여줌 |
dplk -L 패키지이름 | 패키지가 설치한 파일 목록을 보여줌 | |
deb 파일 내용 조회 | dpkg --info 패키지파일이름.deb | 패키지 파일에 대한 정보를 보여줌 |
dpkg 명령의 단점
'의존성'
ex) Firefox는 X윈도 상에서 가동되는데, X윈도가 설치되지 않은 상태에서 Firefox를 설치하면 Firefox는 X윈도에 의존성이 있으므로 설치가 되지 않는다.
이러한 단점을 해결한 것이 apt 명령이다.
dpkg 명령을 이용해 프로그램 설치하기
👩🏻💻 step0 - galculator 다운로드
[Firefox 웹 브라우저] 를 실행한 후, http://kr.archive.ubuntu.com/ubuntu/pool/universe/g/galculator/주소에 접속해서 galculator_2.1.4-1build1_amd64.deb을 다운로드한다. (/root/다운로드/ 에 다운로드됨)
http://kr.archive.ubuntu.com/ubuntu/pool/universe/a/axel/ 에서 axel_2.17.5-1ubuntu1_amd64.deb 파일도 다운로드한다.
👩🏻💻 step1 - deb 파일 설치
텍스트모드에서 웹 사이트 파일의 빠른 다운로드를 도와주는 axel 패키지를 설치한다.
이미 설치되어 있는지 확인하고, 설치되어 있지 않다면 다운로드 디렉터리로 이동한 후 --info 옵션을 활용해 해당 deb 파일에 기능이 포함되어 있는지 확인한다.
dpkg -i ax[Tab] 명령으로 설치 후 dpkg -l axel 명령으로 설치가 제대로 되었는지 확인한다.
axel 명령으로 다운로드를 하고, ls -l 명령으로 확인한다.
(위 사진처럼 다운로드가 진행되지 않아서 linux-5.6.10으로 변경함)
axel 패키지를 제거한다.
galculator 패키지를 설치하려고 하면 의존성 문제 때문에 설치가 되지 않는다. 이 문제를 해결하기 위해서 apt라는 명령을 사용한다.
'우분투 리눅스' 카테고리의 다른 글
4장 서버 구축 시 알아야 할 필수 개념과 명령어 (10) - cron과 at (0) | 2022.02.12 |
---|---|
4장 서버 구축 시 알아야 할 필수 개념과 명령어 (8) - 패키지를 편리하게 설치하는 apt (0) | 2022.02.12 |
4장 서버 구축 시 알아야 할 필수 개념과 명령어 (6) - 링크 (0) | 2022.02.12 |
4장 서버 구축 시 알아야 할 필수 개념과 명령어 (5) - 파일, 디렉터리의 소유권과 허가권 (0) | 2022.02.12 |
4장 서버 구축 시 알아야 할 필수 개념과 명령어 (4) - 사용자 및 그룹 관련 명령어 (0) | 2022.02.11 |