적성 : 중괄호의 의미, 즉 package1 {b} package2 {a} package3 {u}


14

aptitude를 사용할 때 변경된 패키지 목록에 일부 패키지 이름 뒤에 중괄호 안에 단일 문자가있는 경우가 있습니다. 매뉴얼 페이지에는 두 가지 예가 있지만 설명하지 않습니다 (버전 0.6.10-1).

지금까지 {b}, {a} 및 {u}를 발견했습니다. 전자는 실행 중일 때 나타나고 aptitude install삭제 한 패키지를 다시 설치하려고 시도합니다 (예 : debfoster, 어떻게 비활성화 할 수 있습니까?). 후자는 자동 종속성 확인과 관련이있는 것 같습니다.

이러한 특성은 무엇을 의미하고 다른 특성은 무엇이며 다른 작업에 어떤 영향을 미칩니 까? 그 여분의 정보를 사용할 수 있습니다 dpkg또는 apt?

답변:


8

이들은 문서화되지 않았습니다. 내 생각 a에 자동 설치, u(자동?) 업그레이드 및 b깨진 패키지를 수정하기 위해 설치된 패키지입니다.

이 의미 debfoster가 웹 사이트 말한다 주에 예정되지 않은 패키지를 제거한다 :

As of 2006-01-01, debfoster is officially deprecated.

아마도 이것은 apt시스템의 변화로 인해 수년 동안 버그를 개발했을 것 입니다. aptitude search '~b'사용 후 수행 하여 이를 확인할 수 있습니다 debfoster(손상된 패키지가 나열 됨).

참고 apt이제 의존성 패키지에 대한 자동 플래그를 지원하고있다 apt-get autoremove. 적성과 함께 할 수도 있습니다 aptitude remove '~g'.

최신 정보

적성을 가지고 놀 ?때 Do you want to continue? [Y/n/?]프롬프트 가 표시되면을 누르면 다음 메시지가 나타납니다.

In the list of actions to be performed, some packages will be followed by one or
more characters enclosed in braces; for instance: "aptitude{u}".  These
characters provide extra information about the package's state, and can include
any combination of the following:

  'a': the package was automatically installed or removed.
  'b': some of the package's dependencies are violated by the proposed changes.
  'p': the package will be purged in addition to being removed.
  'u': the package is being removed because it is unused.

그래서 그것은 b깨진 패키지에 대한 것으로 보입니다 . 그러나 귀하의 경우 깨진 것이 없으면 표시되는 버그 인 것 같습니다. 문제를 다시 만들 수는 없지만 중괄호 안에 아무것도없이 aptitude제거 한 패키지를 다시 설치하려고합니다 apt-get.

또한 aptitude keep-all제거하는 것보다 안전 할 수도 있습니다./var/lib/aptitude/pkgstates


ps auxfdebfoster는 단지 호출 apt-get --purge remove pkg1 pkg2 etc.하고 검색 '~ b'는 아무것도 반환하지 않으며 다음은 aptitude installpgk1 pkg2 등을 다시 설치 함을 보여줍니다.
— finite graygreen

1
@finitegraygreen, 깨진 패키지가 아니라고 생각합니다! aptitude why무슨 일이 일어나고 있는지 또는 --show-why옵션 을 찾기 위해 사용할 수 있습니다.
— Graeme

@finitegraygreen, 결론은 무엇입니까? 이 되었습니까 b결국 깨지거나 않았기 aptitude why다른 이유를 켜? 나는 내가 어느 시점에서 다시 이것을 만날 것입니다 알고 좋은 것입니다 ...
— Graeme

글쎄, 결론은 "이것들은 문서화되어 있지 않다"는 것이다. 그리고 나는 삭제를 통해 기억 상실을 강요하여 apt-get과 aptitude 간의 간섭을 막았습니다 /var/lib/aptitude/pkgstates. 그렇지 않으면 여전히 apt-get remove pkg; aptitude why pkg"설치 이유를 찾을 수 없습니다"라는 메시지가 나타납니다. aptitude install그런 다음 pkg를 설치합니다.
— 유한 그레이 그린

@finitegraygreen, 이것이 의미하는 바가 있다는 것이 밝혀졌습니다. 업데이트 된 답변을 참조하십시오.
— Graeme

1

적성 저자 의이 게시물 은 설명 {a}하고 {u}:

  • {a} 요청한 것 외에 패키지가 추가로 설치됨을 의미합니다.
  • {u} 시스템에서 패키지를 사용하지 않고 제거됨을 의미합니다.

불행히도 그것은 설명하지 않습니다 {b}.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.