apt-get -y dist-upgrade가 waagent와 상호 작용하는 것을 방지하는 방법은 무엇입니까?

apt-get -y dist-upgrade가 waagent와 상호 작용하는 것을 방지하는 방법은 무엇입니까?

Azure Cloud에서 Ubuntu 12.04.5 LTS를 생성했습니다. Jenkins powershell 빌드에서 생성합니다. 1. Azure에서 VM 생성 2. 일부 원격 SSH 명령 실행(apt-get dist-upgrade 중) 3. VM에서 가상 이미지 생성

하지만 2단계에서 빌드가 중단됩니다. 2단계에서는 다른 명령 중에서 다음을 실행합니다.

apt-get update
apt-get -q -y dist-upgrade

-y의 의도는 대화형 질문을 피하는 것입니다. 쉘에서 수동으로 실행하는 경우apt-get -q -y dist-업그레이드두 번 멈출 때까지는 잘 작동합니다.

첫 번째 대화형 질문: 여기에 이미지 설명을 입력하세요

두 번째 대화형 질문: 여기에 이미지 설명을 입력하세요

-y 매개변수는 이러한 상황을 방지하기 위한 것입니다. 보시다시피 문제가 되는 패키지는 다음과 같습니다.waagent, 이는 Microsoft Azure Linux 에이전트이며 1단계를 완료하면 기본적으로 설치됩니다.

내 질문은 다음과 같습니다이러한 대화형 질문을 어떻게 피할 수 있나요?(예 또는 아니요로 대답하거나 이 패키지 또는 다른 업그레이드를 피함)

답변1

다음을 시도해 볼 수도 있습니다.

DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --force-yes

답변2

apt-get(dkpg)에서는 구성 파일과의 충돌이 매우 흔한 것 같습니다. 다음을 사용하여 문제를 해결합니다.

apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" dist-upgrade

옵션의 의미는 다음과 같습니다.

  • --force-confdef: 가능할 때는 dpkg에게 단독으로 결정하도록 요청하고 그렇지 않으면 프롬프트를 표시합니다...
  • --force-confold: 현재 구성 파일을 수정하지 마십시오...

관련 정보