Ich habe ein Shell-Skript, um neue virtuelle Ubuntu-Maschinen für meine Zwecke automatisch zu konfigurieren. Ich möchte, dass dieses Skript installiert und aktiviert unattended-upgrades
wird, kann es jedoch ohne Benutzerinteraktion nicht ausführen.
Die übliche Art, Upgrades zu aktivieren, ist dpkg-reconfigure unattended-upgrades
, aber das ist natürlich interaktiv. Das nicht interaktive Front-End vermeidet es, Fragen zu stellen, und das Text-Front-End scheint fest entschlossen zu sein, seine E / A mit tty und nicht mit stdin / stdout durchzuführen.
Antworten:
Erstellen Sie einfach eine Kopie von /etc/apt/apt.conf.d/20auto-upgrades, nachdem Sie diese nach Ihren Wünschen konfiguriert haben, und legen Sie sie auf Ihrem Zielcomputer ab. Sie könnten es in Ihr Skript einbetten, oder Sie könnten es von einem Server aus synchronisieren oder einspielen, oder was auch immer.
Im Grunde könnte Ihr Skript also so etwas tun:
Es gibt wirklich keinen Grund, sich mit dem Skript dpkg-reconfigure anzulegen.
Wenn Sie die conf-Datei nicht von einem Remote-Server abrufen möchten, ist sie SEHR kurz und einfach - die Standardversion, die nur Sicherheitsupdates abruft und installiert, sieht folgendermaßen aus:
Sie können diese Zeilen also direkt in die Konfigurationsdatei mit folgendem Befehl zurückschreiben:
quelle
Wenn Sie dpkg-reconfigure verwenden möchten, können Sie den Wert mit "debconf-set-selections" festlegen und dann nicht interaktiv neu konfigurieren.
quelle
Sie müssen sudo verwenden, um in zu echo
/etc/apt/apt.conf.d/20auto-upgrades
quelle
quelle
Ich würde vorschlagen, Konfigurationsparameter einzufügen, um unbeaufsichtigte Upgrades zu konfigurieren.
Ebenso können Sie in der conf-Datei Parameter gemäß Ihren Anforderungen konfigurieren / hinzufügen
/etc/apt/apt.conf.d/50unattended-upgrades
.Vergessen Sie nicht, den Dienst neu zu starten, um die Änderungen zu übernehmen.
quelle