先月、サーバーをdebian10に変更した。
ひそかにwheezyからjessieにアップグレード中…
— ITOH Takashi (@tohokuaiki) 2019年11月12日
お願い、止まらないで…
しばらく何の問題も無かったが、Certbotがこけているのに気が付いた。これはどう考えてもPythonが悪い。しかし、今気づいてよかった。
# /usr/local/bin/certbot-auto Upgrading certbot-auto 0.31.0 to 1.0.0... Replacing certbot-auto... Error: couldn't get currently installed version for /opt/eff.org/certbot/venv/bin/letsencrypt: Traceback (most recent call last): File "/opt/eff.org/certbot/venv/bin/letsencrypt", line 7, in <module> from certbot.main import main File "/opt/eff.org/certbot/venv/local/lib/python2.7/site-packages/certbot/main.py", line 5, in <module> import logging.handlers File "/usr/lib/python2.7/logging/__init__.py", line 26, in <module> import sys, os, time, cStringIO, traceback, warnings, weakref, collections File "/usr/lib/python2.7/weakref.py", line 14, in <module> from _weakref import ( ImportError: cannot import name _remove_dead_weakref
そもそも最近までDebian7だったのでもう思い当たる節がありまくり。
パッケージインストールでは無かったと思うのが、debian10にはパッケージがあるようだ。ということで
# apt install certbot
で、何か入ったっぽい。
…が、which certbox-autoしても /usr/local/bin/certbot-auto という以前入れたのしか出ない。
当然これを実行しても同じエラーが出る… ということで、検索
# find / -type f -name "certbot-auto"
…何も出ない。
おそらく、/usr/local/bin/certbot-autoがあったままだと正常にcertbot-autoがインストールされないのでは…と思い、これを削除(rm /usr/local/bin/certbot-auto)して再インストール。とりあえず動いた…。SSL更新できないみたいなエラー出てるけど、エラーメッセージ出てるだけ相当マシ。