it-swarm-ko.tech

"apt-get"과 "attitude"의 실제 차이점은 무엇입니까? ( "wajig"는 어떻습니까?)

나는 apt-getaptitude는 데비안에서 파생 된 Linux의 명령 행 패키지 관리 인터페이스이며 다른 옵션이 있지만 여전히 다소 혼란 스럽습니다. 후드 아래에서 동일한 APT 시스템을 사용하지 않습니까?

왜 데비안이 이러한 병렬 도구를 유지합니까? (Bonus question : 지구상에서 wajig ?)

259
Kevin Cantu

가장 분명한 차이점은 aptitude는 터미널 메뉴 인터페이스 (터미널의 시냅틱과 유사)를 제공하는 반면 apt-get 하지 않습니다.

각각의 명령 줄 인터페이스 만 고려하면 인터페이스는 매우 비슷하며 대부분 어떤 인터페이스를 사용하든 상관 없습니다. 최신 버전 모두 수동으로 설치 한 패키지와 종속성으로 설치된 패키지를 추적하므로 자동 제거가 가능합니다. 사실, 나는 최근에 두 도구가 수동으로 설치된 패키지와 자동으로 설치된 패키지의 동일한 데이터베이스를 실제로 공유하도록 업데이트되었다고 생각합니다. 따라서 apt-get으로 무언가를 설치 한 다음 적성을 제거하려는 경우가 대부분입니다. 과거.

몇 가지 사소한 차이점이 있습니다.

  • apttitude는 자동으로 적합한 패키지를 제거하지만 apt-get은 별도의 명령을 필요로합니다.
  • 업그레이드dist-upgrade에 대한 명령의 이름이보다 정확한 이름으로 변경되었습니다 안전한 업그레이드전체 -업그레이드.
  • aptitude는 실제로 apt-get뿐만 아니라 apt-cache 및 apt-mark와 같은 일부 보조 도구의 기능을 수행합니다.
  • aptitude는 검색을 위해 약간 다른 쿼리 구문을 가지고 있습니다 (apt-cache와 비교)
  • aptitude에는 whywhy-not 명령이있어 어떤 수동으로 설치 패키지가 수행하려는 작업을 방해하는지 알려줍니다.
  • 수행하려는 작업 (패키지 설치, 제거, 업데이트)이 충돌을 일으키는 경우 적성이 여러 가지 해결 방법을 제안 할 수 있습니다. apt-get은 "죄송합니다. Dave, 죄송합니다. 그렇게 할 수 없습니다."

다른 작은 차이점이 있지만, 제가 생각할 수있는 가장 중요한 차이점입니다.

간단히 말해, 적성은 Synaptic 및 기타 상위 레벨 패키지 관리자 프론트 엔드 범주에 더 적절하게 속합니다. apt-get과 유사한 명령 행 인터페이스도 있습니다.

보너스 라운드 : wajig 란 무엇입니까?

Apt-cache 및 apt-mark와 같은 "companion"도구를 언급 한 것을 기억하십니까? 글쎄, 그것들이 많이 있고, 많이 사용하면 어떤 명령이 어떤 명령을 제공하는지 기억하지 못할 수 있습니다. wajig는 그 문제에 대한 해결책 중 하나입니다. 그것은 본질적으로 모든 도구를 감싸는 디스패처입니다. 필요한 경우 Sudo도 적용됩니다. 네가 얘기 할 때 wajig install foo, wajig는 "Ok, install은 (는) apt-get 및 관리자 권한이 필요합니다. "Sudo apt-get install foo. 네가 얘기 할 때 wajig search foo, wajig는 "Ok, search은 (는) apt-cache이며 관리자 권한이 필요하지 않습니다. "apt-cache search foo. apt-get, apt-mark, apt-cache 및 기타 대신 wajig를 사용하면이 문제가 발생하지 않습니다.

$ apt-get search foo
E: Invalid operation search

Wajig가 어떤 작업을 수행하는지, 특정 명령을 구현하는 데 사용하는 도구를 알고 싶다면 --simulate--teaching 모드.

내가 자주 사용하는 두 가지 wajig 명령은 wajig listfiles foowajig whichpkg /usr/bin/foo.

225
Ryan C. Thompson

나는 종종 내 자신을 궁금해했다. Wikipedia highlights 주요 특징은 적성에는 전체 화면 텍스트 모드 (저주) 인터페이스가 있다는 것입니다. 대부분의 apt-get 명령 인수를 aptitude 자체와 함께 사용할 수 있다는 사실은 apt-get 사용자가 aptitude으로 쉽게 이동할 수 있도록하기위한 설계 결정일뿐입니다. 그 반대의 경우도 마찬가지입니다.

wajig을 사용한 적이 없지만 설명서에 따르면 deb 파일 (dpkg을 실행할 때) 또는 apt 패키지 이름 (대신 apt-get를 실행할 때). 당신이 그것을 시도하고 그것이 무엇인지 볼 수 있습니까?

물론 real 차이는 다음과 같습니다.

[email protected]:~$ apt-get moo
         (__) 
         (oo) 
   /------\/ 
  / |    ||   
 *  /\---/\ 
    ~~   ~~   
...."Have you mooed today?"...
[email protected]:~$ aptitude moo
There are no Easter Eggs in this program.
71
Gaurav

aptitude는 데비안에서 패키지 설치 및 패키지 또는 시스템 업그레이드를 위해 콘솔에서 패키지 관리를 위해 선호하는 프로그램입니다.

다음은 apt-get에 대한 도구 및 기능에 대한 개요입니다. http://www.debian.org/doc/FAQ/ch-pkgtools.en.html#s-aptitude

그래서 내 충고는 단지 적성을 설치하는 것입니다 :)

26
dsp

aptitude는 명시 적으로 요청 된 패키지와 종속성으로 인해 설치된 패키지를 기억합니다. 더 이상 필요하지 않을 때 명시 적으로 요청되지 않은 패키지는 자동으로 설치 제거됩니다.

apt-get는 명시 적으로 요청 된 패키지와 해당 종속성을 동일하게 취급합니다.

aptitude을 더 잘 사용하면 시스템을 깨끗하게 유지할 수 있습니다.

20
starblue

다양한 보조 도구뿐만 아니라 apt-getaptitude의 각 명령 줄 호출보다 훨씬 적은 메모리를 사용하며 조금 더 빠릅니다. 32MB의 램이있는 구식 펜티엄 씽크 패드에서 데비안 설치를 업그레이드하려고 시도 할 때까지 나는 이것을 몰랐습니다. apt-get를 실행하는 데 1 시간 또는 2 시간의 스왑 스 래싱이 필요합니다. 오랫동안 생각하면 aptitude이 실패합니다.

이 차이점은 현대 데스크탑 시스템과 비슷한 것에 거의 관련이 없습니다.

12
intuited

@Gaurav의 답변을 바탕으로 두 패키지 관리자의 부활절 달걀은 매우 재미 있습니다! :

[email protected]:~$ apt-get  moo
             (__) 
             (oo) 
       /------\/ 
      / |    ||   
     *  /\---/\ 
        ~~   ~~   
..."Have you mooed today?"...

[email protected]:~$ aptitude  moo
There are no Easter Eggs in this program.
[email protected]:~$ aptitude -v moo
There really are no Easter Eggs in this program.
[email protected]:~$ aptitude -vv moo
Didn't I already tell you that there are no Easter Eggs in this program?
[email protected]:~$ aptitude -vvv moo
Stop it!
[email protected]:~$ aptitude -vvvv moo
Okay, okay, if I give you an Easter Egg, will you go away?
[email protected]:~$ aptitude -vvvvv moo
All right, you win.

                               /----\
                       -------/      \
                      /               \
                     /                |
   -----------------/                  --------\
   ----------------------------------------------
[email protected]:~$ aptitude -vvvvvv moo
What is it?  It's an elephant being eaten by a snake, of course.
[email protected]:~$ aptitude -vvvvvvv moo
What is it?  It's an elephant being eaten by a snake, of course.
[email protected]:~$ aptitude -vvvvvvvv moo
What is it?  It's an elephant being eaten by a snake, of course.

등등.

9
Siddhartha

명령 줄에서 패키지를 설치하고 제거하는 것과 동일한 기본 기능을 제공합니다.

Here 's 더 자세한 비교는 Ubuntu Stack Exchange 웹 사이트에 게시되었습니다 : https : //askubuntu.com/questions/1743/is- 적성-실제보다 낫다/1749 # 1749

8
Riccardo Murri

언급 한 것처럼 http://pthree.org/2007/08/12/aptitude-vs-apt-get/ , aptitude은 명령 줄 인터페이스를 사용하기가 훨씬 쉽습니다.

후드 아래에서 동일한 APT 시스템을 사용하고 있지 않습니까?.

기본 시스템은 apt뿐만 아니라 dpkg입니다. 이 시스템은 RPM만큼이나 멍청하며 단일 패키지의 설치 및 관리 만 처리 할 수 ​​있습니다. 설치된 파일이 어떤 패키지에 속하는지 추적합니다.

apt은 모든 개별 패키지에 대한 리포지토리 다운로드, 종속성 추적 등을 처리 한 다음 dpkg을 사용하여 설치합니다. aptitude은 다른 인터페이스로 동일한 작업을 수행합니다.

7
vdboor

이것이 여전히 있는지는 확실하지 않지만 출혈이 많은 데비안 개발자 Joey Hess는 항상 apt-get에 대한 적성을 옹호했습니다. 물론 소프트웨어가 발전함에 따라 변화해야 할 것들. Apt-get은 이제 이전보다 종속성을 더 잘 처리합니다. 에서 http://lists.debian.org/debian-user/2004/04/msg03138.html

날짜 : 2004 년 4 월 20 일 화요일 22:27:12 -0400 보낸 사람 : Joey Hess

Apt-get 또는 dselect 대신 적성을 사용해야하는 9 가지 이유.

  1. 적성은 apt-get처럼 보일 수 있습니다

    'aptitude update'또는 'aptitude upgrade'또는 'aptitude install'을 실행하면 몇 가지 기능이 향상되어 apt-get과 비슷하게 보이고 작동합니다. 따라서 학습 곡선이 없습니다.

    (당신이 dselect 사용자라면, 학습 곡선은 분명히 당신의 문제 중 하나가 아닙니다.)

  2. 적성은 자동으로 설치된 패키지를 추적

    사용하지 않는 라이브러리를 정리하고 시스템에서 패키지를 지원하지 않아도됩니다. aptitude를 사용하여 모든 것을 설치하면 종속성으로 인해 가져온 패키지를 추적하고 더 이상 필요하지 않은 패키지를 제거합니다.

  3. 적법하게 추천을 처리

    Apt-get의 오랜 실패는 Recommends 관계에 대한 지원이 부족했기 때문입니다. 데비안의 많은 패키지는 일반 사용자가 일반적으로 패키지와 함께 사용하는 소프트웨어를 가져 오기 위해 권장 사항에 의존하기 때문에 문제가됩니다. apt-get이 최근 권장 패키지를 언급 ​​할 수있게되었지만 경고를 놓치기 쉽습니다.

    Aptitude는 기본적으로 권장 사항을 지원하며 제안도 지원하도록 구성 할 수 있습니다. 명령 행 모드에서 사용될 때 권장 패키지 설치도 지원합니다.

  4. 적성을 일반 사용자로 사용하고 시스템을 고수하지 마십시오.

    아마 당신은 일반 사용자로서 GUI 모드에서 적성을 실행할 수 있다는 것을 몰랐을 것입니다. 시험해보고 싶은 사항을 변경하십시오. 실제 혼란에 빠지면 'q'를 누르고 종료하면 변경 사항이 저장되지 않습니다. (Aptitude에서는 ctrl-u를 사용하여 변경을 취소 할 수도 있습니다.) 일반 사용자로 실행 중이기 때문에 적성을 지시 할 때까지 시스템을 호스 핑 할 수 없으며, 이때 루트 암호를 입력하라는 메시지가 표시됩니다.

  5. 적성에는 강력한 UI 및 검색 기능이 있습니다

    Aptitude의 범주 형 브라우저와 이름, 설명, 관리자, 종속성 등으로 패키지를 검색하는 mutt 스타일 필터링 및 검색에 대한 뛰어난 지원간에 aptitude를 사용하기 전에 그 어느 때보 다 빠르게 패키지를 찾을 수 있습니다.

  6. 적성은 쓸모없는 소프트웨어를 쉽게 추적 할 수 있습니다

    데비안이 패키지 배포를 중단하면 apt는 경고없이 업그레이드없이 시스템에 패키지를 무한정 그대로 둡니다. 적성에는 이러한 패키지가 "폐기되고 로컬에서 생성 된 패키지"섹션에 나열되어 있으므로 문제에 대한 정보를 얻고 이에 대해 무언가를 수행 할 수 있습니다.

  7. 적성에는 데비안 작업 시스템에 대한 인터페이스가 있습니다

    적성을 사용하면 데비안의 작업 시스템을 사용할 수 있습니다. 사용 가능한 작업을 찾아보고 설치할 작업을 선택한 다음 작업으로 들어가서 원하지 않는 작업의 일부를 선택 취소 할 수 있습니다. apt-get은 작업을 지원하지 않으며 tasksel과 같은 특수 목적 도구보다 적성을 선호합니다.

  8. 적성은 여러 소스를 지원합니다

    Sources.list가 여러 버전의 패키지를 사용할 수 있도록 구성된 경우 aptitude를 사용하면 드릴 다운하여 사용 가능한 버전을보고 설치할 기본 버전이 아닌 버전을 선택할 수 있습니다. 패키지가 불안정한 경우 테스트중인 버전으로 롤백하십시오.

  9. 적성은 그 행동을 기록

    적성 로그 패키지는/varlog/aptitude로 설치, 업그레이드 및 제거되며, 이는 어제 업그레이드 이후에 왜 문제가 발생했는지 또는 partiticlar 패키지를 제거했을 때 문제를 해결하는 데 유용 할 수 있습니다.

-부끄러워하는 조 참조

=================== 2010 년부터 새로운 토론이 있습니다 https://superuser.com/questions/93437/aptitude-vs-apt- get-which-is-the-the-recommended-aka-the-right-tool-to-use StackExchange에서.

6
manselton

Apt-get과 aptitude는 APT 라이브러리에 의존합니다. 예).

serverfault.com의 답변 을 참조하십시오.

데비안은 모 놀리 식 조직이 아니며, 의견이 다른 사람들이 있으며 적성 관리자는 apt-get에 단점이 있다고 판단하고 적성과 함께 더 나은 것을 만들고 싶었습니다. 복잡한 업그레이드 시나리오를위한 솔루션을 찾기위한 로직을 개선하고 콘솔을위한 GUI 등을 추가했습니다. 그리고 apt-get 및 aptitude 이상의 것이 있습니다. 내 기사 apt-get, aptitude,… 올바른 패키지 선택) 당신을 위해 관리자 .

6
Raphaël Hertzog