Cuadro de actualización automática de Debian8 usando el script de actualización automática, tengo un script de shell + cronjob para actualizar mi certificado @weekly
El 2 de octubre se ejecutó con éxito, el 9 de octubre actualizó 0.8.1 -> 0.9.1 y murió.
Upgrading certbot-auto 0.8.1 to 0.9.1...
Replacing certbot-auto...
Creating virtual environment...
Installing Python packages...
Installation succeeded.
An unexpected error occurred:
Bug in pythondialog: expected an empty output from u'infobox', but got: u'Error opening terminal: unknown.\n'Please see the logfile 'certbot.log' for more details.
Salida del archivo de registro:
2016-10-15 21:01:18,381:DEBUG:certbot.main:Root logging level set at 20
2016-10-15 21:01:18,420:DEBUG:certbot.main:Exiting abnormally:
Traceback (most recent call last):
File "/root/.local/share/letsencrypt/bin/letsencrypt", line 11, in <module>
sys.exit(main())
File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/certbot/main.py", line 749, in main
setup_logging(config)
File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/certbot/main.py", line 653, in setup_logging
logger.info("Saving debug log to %s", log_file_path)
File "/usr/lib/python2.7/logging/__init__.py", line 1160, in info
self._log(INFO, msg, args, **kwargs)
File "/usr/lib/python2.7/logging/__init__.py", line 1279, in _log
self.handle(record)
File "/usr/lib/python2.7/logging/__init__.py", line 1289, in handle
self.callHandlers(record)
File "/usr/lib/python2.7/logging/__init__.py", line 1329, in callHandlers
hdlr.handle(record)
File "/usr/lib/python2.7/logging/__init__.py", line 757, in handle
self.emit(record)
File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/certbot/log.py", line 64, in emit
self.width + self.PADDING_WIDTH)
File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/dialog.py", line 2675, in infobox
kwargs)
File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/dialog.py", line 1765, in _widget_with_no_output
widget_name, output))
PythonDialogBug
Mi caja principal está usando el paquete binario enviado por Debian (0.8.1), por lo que todavía funciona, pero mi caja de inicio se vio afectada, ya que la implementé antes (antes de que Debian proporcionara el paquete). Me imagino que otros usuarios probablemente también estén afectados. , pero es posible que no se hayan dado cuenta. Ciertamente no lo hice durante más de una semana.
Shell script en cuestión:
#!/bin/sh
/letsencrypt/letsencrypt-auto certonly --webroot --renew-by-default -w /var/www/git-ssl-proof/ -d git.nikomo.eu
systemctl reload nginx
Soy demasiado perezoso para solucionar el problema de verdad, así que simplemente voy a cambiar al paquete Debian, pero creo que otras personas también podrían verse afectadas por esto.
Puede resolver este problema agregando -n/--noninteractive/--non-interactive
o -q/--quiet
a la línea de comando. En nuestra documentación, nos recomienda el uso de --quiet
cuando se ejecuta el comando no interactiva con systemd o cron.
Debido a problemas como este (así como a otros factores motivadores), hemos eliminado completamente dialog
del proyecto, por lo que errores como este serán imposibles en nuestras versiones futuras.
Bueno, está ocurriendo con certbot-0.9.3-r0 de armhf/Alpine.
certbot certonly \
--domain $DOMAIN \
--email $EMAIL \
--authenticator standalone \
--agree-tos
--non-interactive
soluciona el problema pero no debería bloquearse.
Comentario más útil
Puede resolver este problema agregando
-n/--noninteractive/--non-interactive
o-q/--quiet
a la línea de comando. En nuestra documentación, nos recomienda el uso de--quiet
cuando se ejecuta el comando no interactiva con systemd o cron.