적성 : 중괄호의 의미, 즉 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.