apt-get 업그레이드 또는 설치 중에 구성 파일을 자동으로 유지하는 방법은 무엇입니까?


10

apt-get update; apt-get upgrade -y서버에서 수행 할 때 다음 메시지가 나타납니다.

Setting up sudo (1.8.16-0ubuntu1.5) ...

Configuration file '/etc/sudoers'
==> Modified (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
The default action is to keep your current version.
*** sudoers (Y/I/N/O/D/Z) [default=N] ?
Setting up ubuntu-minimal (1.361.1) ...

debconfMySQL과 같은 패키지를 구성하여 프롬프트에 대한 질문에 대답하는 데 사용할 수 있다는 것을 알고 있습니다.

이 프롬프트에 대한 답변을 준비하기 위해 어떤 Linux 프로그램 / 모듈 / 함수 등을 사용해야합니까?

Ansilbe를 통해 수행되는 솔루션이 있다면 알고 싶습니다. BASH 스크립트 외에도.

참고 : 모든 배포는 IaC를 통해 수행되므로 자동화가 중요합니다.

답변:


10

구성 선택을 처리 할 apt-get을 dpkg로 전달할 수있는 옵션이 있습니다. 우리는 보통 다음과 같은 일을합니다 :

apt-get install -y --no_install_recommends -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' <package_name>

ansible을 사용할 때 다음을 수행 할 수 있습니다.

  apt:
    pkg: "{{ item }}"
    only_upgrade: yes
    install_recommends: no
    force: yes
    dpkg_options: 'force-confdef,force-confold'
    state: latest
  with_items:
    - <package_name>

가능한 apt 모듈 옵션 에 대한 자세한 내용은 여기를 참조하십시오

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