apt의 캐시=예: Ansible의 update_cache=yes는 무엇을 의미합니까?

apt의 캐시=예: Ansible의 update_cache=yes는 무엇을 의미합니까?

apt update나는 업데이트가 배포판의 기존 패키지 인덱스를 지원하지만 이러한 패키지 인덱스를 기반으로 설치된 설치된 패키지(유틸리티)를 업그레이드 패키지로 업그레이드하지 않는다는 것을 이해합니다 apt upgrade.

~에서apt-get남성:

update

update소스에서 패키지 인덱스 파일을 다시 동기화하는 데 사용됩니다. 사용 가능한 패키지의 색인은 지정된 위치에서 가져옵니다 /etc/apt/sources.list. 예를 들어, Debian 아카이브를 사용할 때 이 명령은 Packages.gz새 패키지와 업데이트된 패키지에 대한 정보를 찾기 위해 파일을 검색하고 검색합니다. 업데이트는 항상 upgrade 이나 그 이전에 수행되어야 합니다 dist-upgrade. 패키지 파일의 크기를 미리 알 수 없으므로 전체적인 일정이 부정확할 수 있으니 주의하시기 바랍니다.

나는 또한 Ansible이apt기준 치수여기에는 다음 지시문이 포함됩니다.

- name: update the apt package index i.e. apt-get update
  apt: update_cache=yes

이것관련 Ansible 문서설명하다:

작업 전에 apt-get update와 동등한 것을 실행하십시오. 패키지 설치의 일부로 실행하거나 별도의 단계로 실행할 수 있습니다.

Ansible이 "이전" 코드를 커뮤니티에서 파생된 up2date 해당 코드로 변환하기 때문에(원본 코드 자체가 변경된 경우) "동등"이라고 가정합니다.

하지만 캐싱이 이것과 무슨 관련이 있는지 아직도 놓치고 있습니다. 나에게 컴퓨팅에서 캐싱의 개념은 필요할 때 탐색을 저장하기 위해 멀리 있는 것을 복사하여 리소스를 절약하는 것이지만 apt update여전히 apt update.

답변1

apt로컬 패키지 목록을 유지 관리합니다. 이는 사용 가능한 패키지, 해당 종속성 등을 "알는" 방법입니다. apt update저장소에서 이러한 패키지를 검색하여 이러한 패키지 목록을 업데이트합니다. 패키지는 업그레이드되지 않습니다.

이것이 바로 캐시입니다. 시스템에 구성된 저장소에서 사용할 수 있는 패키지 정보의 로컬 캐시입니다. apt모든 결정은 이 캐시를 기반으로 이루어지므로 최신 상태로 유지되어야 합니다. 오래된 캐시로 인해 apt업데이트가 누락되거나 패키지를 완전히 설치하지 못할 수 있습니다(필요한 버전이 저장소에서 더 이상 사용 가능하지 않기 때문).

update_cache=yesapt필요한 변경 사항(있는 경우)을 적용하기 전에 캐시를 플러시하도록 Ansible 모듈에 지시합니다 .

관련 정보