전성빈의 사리사욕

[명령어] ubuntu / apt-get 본문

백엔드 로드맵따라가기/OS 및 일반적인 지식

[명령어] ubuntu / apt-get

Been2 2020. 11. 15. 15:17
728x90

what is apt?

 

APT(Advanced Package Tool)는 Debian계열의 패키지 관리 프로그램인 dpkg와 상호작용하는 커맨드 라인 도구입니다.

 

 

apt-get

 

apt-get은 패키지에 대한 설치, 검색, 업데이트 및 삭제등 여러 작업을 수행합니다. 오래된 패키지를 사용하는것은 보안 이슈가 생길 수 있으니 패키지를 가급적 최신의 상태를 유지하는 것이 좋습니다.

 

apt-get은 시스템의 핵심 측면을 다루기 대문에 su 권한이 필요합니다. ubuntu 등에서 사용할 때는 sudo를 붙여줘야 합니다.

 


 

sudo apt-get update <package_name>

 

설치 되어있는 패키지들의 최신 버전이 있는지 확인합니다.

  • Hit : 새로운 버전이 없습니다.
  • Get : 새로운 버전에 대한 정보를 가져옵니다.
  • Ign : 오류가 발생했거나 패키지가 최신 버전이므로 확인할 필요가 없음을 나타냅니다.

 

sudo apt-get upgrade

sudo apt-get upgrade <package_name>

sudo apt-get dist-upgrade

 

local에 위치한 패키지 DB에 있는 최신버전들을 설치합니다. update를 해주지 않았다면 최신 버전이 있더라도 설치하지 않습니다.

 

패키지 이름을 명시해줘 단일 패키지만을 업그레이드 할 수 있습니다. 

 

dist-upgrade는 종속성을 지능적으로 처리합니다. 충돌이 일어나거나 패키지의 버전에 따른 문제가 생길때 가장 중요한 패키지를 업그레이드 합니다. 따라서 덜 중요한 패키지는 제거될 수 있습니다.

 

 

sudo apt-get install <package_name>

sudo apt-get install <package_1> <package_2> <package_3>

sudo apt-get install <package_name>=<version>

 

패키지를 설치합니다.

 

여러 개의 패키지도 한번에 설치할 수 있습니다.

 

이미 존재하는 패키지를 설치하려는 경우 로컬에 존재하는 패키지 DB을 확인하여 해당 패키지를 업그레이드합니다.

 

특정 패키지의 특정 버전도 설치할 수 있습니다.

 

sudo apt-get remove <package_name>

sudo apt-get purge <package_name>

sudo apt-get autoremove <pavcage_name>

 

시스템에서 패키지를 제거합니다. 패키지를 제거하지만 설정파일은 제거 하지 않기때문에 다음에 다시 설치하면 동일한 설정을 제공합니다.

 

purge를 사용하면 설정파일까지 같이 제거합니다.

 

autoremove는 연관된 패키지를 전부 삭제시킵니다. 사용하지 않는 패키지를 제거할 땐 유용하겠지만 한번 실수하면 돌이킬 수 있지만 엄청난 문제를 일으키니 주의를 해야합니다.

 

-복구-

apt-get의 로그를 분석하여 autoremove를 사용한 시간의 log를 분석하여 지워진 패키지의 이름을 모두 찾아낸 후 install을 통해 다시 설치해 주면 복구가 가능합니다.

 


apt-cache

 

apt-cache는 apt-get과 다르게 설치, 업데이트 등이 아닌 local에 존재하는 패키지DB에서 패키지에 관한 정보를 query하는데 사용합니다. 시스템을 건들지 않기때문에 관리 권한이 필요하지 않아 sudo를 명시할 필요가 없습니다.

 

apt-cache <search_term>

apt-cache showpkg

apt-cache show <package_name>


더욱 많은 기능은 man 명령어를 통해 알아 볼 수 있습니다.

 

man apt-get

man apt-cache

 

&&를 이용하여 여러 명령어를 한번에 사용 가능합니다.

 

sudo apt-get update && sudo apt-get upgrade

man apt-get && man apt-cache

 

 

 

출처 :

blog.naver.com/PostView.nhn?blogId=crehacktive3&logNo=221788406618&parentCategoryNo=&categoryNo=9&viewDate=&isShowPopularPosts=true&from=search

 

728x90