[42서울] 패키지 관리

tamagoyakii·2022년 5월 9일
0

42seoul

목록 보기
7/19
post-thumbnail

apt 와 aptitude는 패키지 관리를 위한 명령어다. 둘 다 패키지에 대한 설치, 제거, 검색 등의 기능을 제공한다. 그렇다면 둘의 차이점은 무엇일까?

APT

APT(Advanced Packaging Tool)은 소프트웨어의 설치와 제거를 도와주는 오픈 소스 소프트웨어다. 원래는 데비안의 패키지를 위해 설계되었지만, RPM 패키지 매니저와 호환되도록 바뀌었다. APT에는 GUI(Graphical User Interface)가 없다. 오직 명령어로만 작동한다.

APT에는 apt-get, apt-cache 등의 다양한 명령어가 있는데, 이 명령어들 중에 사용자들이 가장 많이 사용하는 기능을 모아놓은 명령어가 apt이다. apt.conf 파일을 수정해서 사용자 임의로 명령어를 수정할 수 있다.

Aptitude

Aptitude는 apt 명령어를 이용해 설치할 수 있다.

sudo apt install aptitude

Aptitude는 유저들이 직접 패키지를 검색할 수 있도록 유저 인터페이스가 탑재되어있다. 이 유저 인터페이스는 ncurses라는 라이브러리를 바탕으로 만들어졌다. APT와 마찬가지로 데비안을 위해 만들어졌지만 RPM과 호환되도록 확장되었다.

Aptitude는 APT의 apt-get, apt-mark, apt-cache 등을 통합한 폭 넓은 기능을 제공한다. 즉, Aptitude는 하이(high)레벨의 패키지 매니저로, 로우(low)레벨의 세부적인 부분을 추출해서 대화형과는 비대화형의 방법으로 모두 작동할 수 있다.

차이점

가장 큰 차이점은 Aptitude는 상위 수준의 패키지 매니저이고, APT는 다른 상위 소프트웨어들이 사용할 수 있는 하위 수준의 패키지 매니저라는 것이다. 이 차이점을 바탕으로 좀 더 세세한 차이점을 찾아보자면 이렇다.

  1. Apt는 GUI가 없지만, Aptitude는 텍스트 전용의 대화형 UI를 제공한다.

  2. APT는 패키지 설치 중 충돌이 일어날 경우 해결하지 못하고 오류로 프로세스를 중단하지만, Aptitude는 엄청난 검색 기능으로 알아서 처리한다.

  3. APT는 사용하지 않는 패키지를 삭제하기 위해 -auto-remove라는 추가적인 옵션이 필요하지만, Aptitude는 알아서 삭제한다.

  4. 패키지를 검색할 때 Aptitude는 p(present)와 i(installed) 플래그로 패키지에 대한 상태를 보여준다. p는 패키지가 존재하지만 설치되지 않았다는 뜻이고, i는 이미 설치되었다는 뜻이다.

  1. 패키지에 대한 세부적인 정보가 필요할 때는 Aptitude를 사용하는 것이 좋다. why 옵션을 이용하면 해당 패키지에 관련해서 설치를 권유하는 패키지 또는 dependencies를 보여준다.

참고

https://www.tecmint.com/difference-between-apt-and-aptitude/
https://www.fosslinux.com/43884/apt-vs-aptitude.htm

0개의 댓글