.png)
Ich möchte eine selbst entwickelte Patch-Management-Lösung auf Linux-Basis durch ersetzen salt-ssh
.
Das aktuelle System verwendet ein Shell-Skript, um eine Liste von Hosts zu durchlaufen und kopiert ein Skript namensapt-updatezur Remote-Site. Nach dem Kopieren des Skripts führt der Prozess das Skript dann auf der Remote-Site aus (über SSH). Dieapt-updateDas Skript enthält im Wesentlichen apt-get udpate; apt-get upgrade
. Wenn ein Konflikt mit einer Konfigurationsdatei (wie Grub) auftritt oder dpkg-reconfigure
etwas wie ausgeführt wird pam-auth-update
, ist eine Interaktion erforderlich, um auszuwählen, wie fortgefahren werden soll. Wenn ich diesen Prozess über ausführe salt-ssh
, scheint es keine Möglichkeit zu geben, mit dem Aktualisierungsprozess zu interagieren. Tatsächlich salt-ssh
enthält stdout Folgendes:
stderr:
debconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (This frontend requires a controlling tty.)
debconf: falling back to frontend: Teletype
dpkg-preconfigure: unable to re-open stdin:
Ich habe Saltstack noch nie verwendet. Gibt es eine Möglichkeit, mit dieser Art von Situation umzugehen, in der Interaktion erforderlich ist?
Antwort1
Sie können die Umgebungsvariable festlegen DEBIAN_FRONTEND=noninteractive
, um alle derartigen Fragen zu unterdrücken. Die Konfiguration der Pakete kann in diesem Szenario jedoch unterschiedlich sein, daher sollten Sie gründlich testen.