放ったらかしにしていた実験用のVPSがdebianのstrechから更新されておらずメンテ期間が切れてaptの更新が出来なくなったので最新にアップグレードをする事にしたのですがトラブったのでそのメモを。
現在の最新はbullseyeなのですが一気に上げると多分何か起きるだろうなと思い一つずつ上げていくことに。余談ですが調査の段階で本家のページを見たのですが日本語ページが全然メンテされていないようですね・・・。debian好きなんだけど日本ではもうubuntuとかしか触る人が居なくなっちゃったのかな。
とりあえず更新方法は深くは書きませんが、まずは/etc/apt/sources.listの中身をstrech(9)からbuster(10)の物に更新をしてapt update & apt upgrade & apt autoremoveをし、その後buster(10)からbullseye(11)にします。本当はもう少し色々やったほうが安全なんでしょうが今回はこれでやりました。
で、結果として更新、起動は問題なく出来ましたがbullseye環境でapt upgradeをすると下記のようなエラーが表示されるようになりました。
Setting up python3-reportbug (7.10.3+deb11u1) ...
File "/usr/lib/python3/dist-packages/reportbug/bugreport.py", line 154
headers += f'Control: tags -1 {self.tags}\n'
^
SyntaxError: invalid syntax
File "/usr/lib/python3/dist-packages/reportbug/debbugs.py", line 789
pseudos.append(f'Control: affects -1 src:{package}')
^
SyntaxError: invalid syntax
File "/usr/lib/python3/dist-packages/reportbug/submit.py", line 395
if ui.yes_no(f'SMTP send failure: {x}. You can retry, or save the report and exit. Do you want to retry?',
^
SyntaxError: invalid syntax
File "/usr/lib/python3/dist-packages/reportbug/utils.py", line 567
print(f"Cannot look up source package: '{e}'")
^
SyntaxError: invalid syntax
ぐぐってみるとstrechからbullseyeに直接上げてこのエラーが起きているけど結論として何も解決策も書かれていない状況でした。という事で自力で解決する必要があります。
まずヒントとしてsyntax errorが出ていること。真っ先に疑ったのは実はpythonが未だに2系のままとかなのかなという点。バージョンを確認してみます。
$ python --version
Python 2.7.13
$ python3 --version
Python 3.5.3
$ python3 --versionPython 3.9.2