Wie vermeide ich, dass apt-get -y dist-upgrade mit waagent interagiert?

Wie vermeide ich, dass apt-get -y dist-upgrade mit waagent interagiert?

Ich habe ein Ubuntu 12.04.5 LTS in Azure Cloud erstellt. Ich erstelle es aus einem Jenkins Powershell-Build, der: 1. VM in Azure erstellt 2. Einige Remote-SSH-Befehle ausführt (darunter apt-get dist-upgrade) 3. Ein virtuelles Image aus der VM erstellt

Aber der Build bleibt in Schritt 2 hängen. In Schritt 2 führe ich unter anderem Folgendes aus:

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

Die Absicht von -y ist es, interaktive Fragen zu vermeiden. Wenn ich manuell von einer Shell aus starteapt-get -q -y dist-upgradees funktioniert gut, bis es zweimal hängen bleibt:

Erste interaktive Frage: Bildbeschreibung hier eingeben

Zweite interaktive Frage: Bildbeschreibung hier eingeben

Der Parameter -y soll diese Situation vermeiden. Wie Sie sehen, ist das fehlerhafte Paketwagen, das ist Microsoft Azure Linux Agent und es wird standardmäßig installiert, wenn ich Schritt 1 abgeschlossen habe

Meine Frage ist:Wie kann ich diese interaktiven Fragen vermeiden?(entweder mit „Ja“ oder „Nein“ antworten oder das Upgrade dieses Pakets vermeiden oder etwas anderes tun)

Antwort1

Vielleicht können Sie auch Folgendes versuchen:

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

Antwort2

Konflikte mit Konfigurationsdateien scheinen bei apt-get (dkpg) recht häufig vorzukommen. Ich löse das Problem mit:

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

Die Optionen bedeuten:

  • --force-confdef: Bitten Sie dpkg, selbst zu entscheiden, wenn es dazu in der Lage ist, und geben Sie andernfalls eine Aufforderung aus ...
  • --force-confold: Ändern Sie die aktuelle Konfigurationsdatei nicht ...

verwandte Informationen