注: 最後にまとめがあります.
Let’s EncryptがPython 2.7.xのサポートをやめてしまったので,管理するいくつかのサーバーでは,2.7がサポートされた最後のころのgitをupdateしないで使っていました.
このほど,そのうち1台はPython 3.xが搭載されたシステムに移行し,今回移行後はじめての証明書の更新時期を迎えたので,git pull して現在のgitレポジトリーに同期してから証明書の更新を試験的に行ってみました.Branchはmasterです.
しかし,tools/venv.pyの実行でエラーが出てしまいます😓
python-augeasがないとのエラー(もしくはそのbuildの過程のエラー)を出しているようなので,pip3でインストールを試みますが,今度はwheelがないというので,先にwheelをインストールして,続いてpython-augeasをインストールしてみました.エラーが出ます.
SlackBuildsに,python-augeasがあるので,
sbopkg -i python-augeas
をしてみたところ,python-augeas-0.5.0-arm-1_SBoがインストールされました.もう一度,tools/venv.pyを試みます.
だめでした.どうも,python-augeas-1.0.0 以上が必要そうなので,
pip3 install -U python-augeas
を試しますが,1.0.0以上のbuildに失敗します.
大量に出るエラーメッセージを見て,なんとなく,python-augeasのもとになる, “augeas” がそもそもインストールされてないんじゃないかと思い,システムを見てみると,たしかにそんなパッケージはインストールされていません.さいわい,SlackBuildsにはあるので,
sbopkg -i augeas
を実行したら,augeas-1.4.0-arm-1_SBo.tgzができて,インストールできました.
python-augeasのインストールは,Let’s Encryptのvenv.pyがやるはずなので,もういちど,tools/venv.pyを実行すると,うまくいったようで,python-augeasのところは無事通過して,rustcを使った超重量級のbuildが繰り広げられます😓
計ったわけではありませんが,40分くらいでvenv.pyの実行が完了しました.
このあと,
source venv/bin/activate
を実行してから,certbotが実行できて,証明書の更新もできました.
まとめ
SlackwareARM 15.0で,Let’s Encryptの最新git repositoryに同期させて,venv.pyの実行と,certbotによる証明書の更新に成功しました.
事前に必要になるのは, augeas(およびvirtualenvも必要かも) で,sbopkgにてインストールする必要があります.
SlackwareARM 15でも上記記事のままの手順ですが,venv.shはvenv.pyにします.