APT(Advanced Package Tool)는 데비안의 패키징 시스템을 관리하는 도구 모음입니다. "libapt-pkg" 및 "libapt-inst"와 같은 핵심 라이브러리와 함께 작동하여 Debian, Ubuntu 패키지 관리 프로세스를 단순화합니다. apt, apt-get, apt-cache, apt-config 및 aptitude(GUI)와 같은 명령줄 도구는 APT와 상호 작용하여 설치, 업데이트 및 삭제와 같은 다양한 패키지 기능을 수행합니다
apt 명령어
apt는 Ubuntu, Debian 및 파생 제품에서 deb 패키지를 설치, 업데이트 및 제거하기 위한 명령줄 유틸리티입니다. apt-get 및 apt-cache에서 가장 일반적으로 사용되는 명령을 합쳤습니다.
apt명령은 최종 사용자에게 적합하며 apt-get 명령의 일부 기능을 포함하지 않습니다. apt는 apt-get의 결함 중 일부를 수정하여 설계되었습니다.
apt-get 명령어란?
apt-get은 데비안 기반 시스템에서 널리 사용되는 CLI 패키지 관리 도구입니다. apt-get 명령을 사용하면 패키지를 설치, 업데이트 및 제거를 할 수 있으며 apt-cache 명령은 새 패키지를 검색하는 데 사용됩니다. apt-get은 하위 호환성이 있는 APT 패키지 시스템을 위한 저수준 프론트 엔드 도구입니다.
apt-get 명령어의 불편한 점은?
패키지 관리를 위해 여러 다른 apt-get 명령어가 사용됩니다. 이것이 apt-get의 비효율성과 기능 부족 때문입니다.
apt-get – 패키지 설치, 업데이트 및 제거
apt-cache – 패키지 조회
dpkg – 시스템에 설치된 패키지 조회
apt 명령은 이러한 모든 기능을 단일 명령으로 결합하여 APT 패키지 관리자와의 상호 작용을 용이하게 합니다.
apt 와 apt-get 차이점은?
apt는 보기좋은 진행률 표시
apt는 업그레이드해야 하는 패키지 목록 나열
apt는 apt-get, apt-cache 및 dpkg -l의 기능 결합
apt 및 apt-get 명령의 구문 비교
새로운 명령어
1) 진행률바
apt 명령으로 패키지를 설치하거나 제거할 때 진행률 표시줄이 표시됩니다. 현재 프로세스의 진행을 백분율로 보여줍니다.
$ apt install mariadb-server
2) 업그레이드해야 하는 패키지 목록 표시
아래 출력은 리포지토리 데이터베이스를 업데이트하는 동안 업그레이드할 수 있는 패키지 수를 보여줍니다.
udpate할 것이 없으면 "All packages are up to date" 라는 메시지를 보여줍니다.
패키지 목록 및 기타 정보는 아래에 언급된 대로 apt list --upgradable 명령을 실행하여 볼 수 있습니다.
3) apt는 apt-get, apt-cache 및 dpkg -l의 기능 결합
Ubuntu 16.04 이전에는 사용자가 일반적으로 apt-get 및 apt-cache를 통해 패키지 작업을 했습니다. apt 명령어가 apt-get & apt-cache의 기능과 필수 명령어를 통합했기 때문에 apt를 사용하는 것이 효율적입니다.
아래는 서버에 설치된 maraidb 관련 패키지 목록을 조회하는 명령어입니다. apt-get으로는 할 수 없고 dpkg 명령어를 수행해야 합니다. 그러나 apt 명령어는 설치된 패키지 목록 조회가 가능합니다.
$ dpkg -l | grep mariadb
ii mariadb-client-10.3 1:10.3.32-0ubuntu0.20.04.1 amd64 MariaDB database client binaries
ii mariadb-client-core-10.3 1:10.3.32-0ubuntu0.20.04.1 amd64 MariaDB database core client binaries
ii mariadb-common 1:10.3.32-0ubuntu0.20.04.1 all MariaDB common metapackage
ii mariadb-server 1:10.3.32-0ubuntu0.20.04.1 all MariaDB database server (metapackage depending on the latest version)
ii mariadb-server-10.3 1:10.3.32-0ubuntu0.20.04.1 amd64 MariaDB database server binaries
ii mariadb-server-core-10.3 1:10.3.32-0ubuntu0.20.04.1 amd64 MariaDB database core server files
$ apt list --installed | grep mariadb
mariadb-client-10.3/focal-updates,focal-security,now 1:10.3.32-0ubuntu0.20.04.1 amd64 [installed,automatic]
mariadb-client-core-10.3/focal-updates,focal-security,now 1:10.3.32-0ubuntu0.20.04.1 amd64 [installed,automatic]
mariadb-common/focal-updates,focal-security,now 1:10.3.32-0ubuntu0.20.04.1 all [installed,automatic]
mariadb-server-10.3/focal-updates,focal-security,now 1:10.3.32-0ubuntu0.20.04.1 amd64 [installed,automatic]
mariadb-server-core-10.3/focal-updates,focal-security,now 1:10.3.32-0ubuntu0.20.04.1 amd64 [installed,automatic]
mariadb-server/focal-updates,focal-security,now 1:10.3.32-0ubuntu0.20.04.1 all [installed]
4) apt 및 apt-get 명령의 구문 비교
apt 명령은 일반적으로 사용되는 apt-get 및 apt-cache 기능을 결합하지만 apt-get과 하위 호환되지는 않습니다. 따라서 apt-get 명령을 항상 apt로 바꿀 수는 없습니다.
apt, apt-get 명령 비교
apt 명령어
apt-get, apt-cache, dkpg 명령어
설명
apt update
apt-get update
Refreshes repository index
apt install [package]
apt-get install [package]
Install a package
apt upgrade
apt-get upgrade
Upgrade available package updates
apt remove [package]
apt-get remove[package]
Remove a package
apt purge [package]
apt-get purge [package]
Remove a package with configuration
apt autoremove
apt-get autoremove
Remove unnecessary dependencies
apt full-upgrade
apt-get dist-upgrade
Update all packages and remove unnecessary dependencies