リモートで管理しているDebianのサーバーですが,まだDebian Bookworm (12)で動かしています.そろそろTrixie (13)にupgradeするように圧力がかかりそうなので,クローニングした仮想マシンでupgradeの予行演習をしました.
まずは,apt update && apt dist-upgrade1でBookwormの最終形にupgradeします.これは全く問題なし.
次に,/etc/apt/sources.list内のbookwormをtrixieに書き換えて,apt update && apt dist-upgradeをしたところ,dovecotの再起動に失敗してupgrade自体が途中で終わってしまいました.
dovecotの設定ファイルの問題のようです.こういうときのために,仮想マシンでsnapshotを撮りながら作業していますのでbookwormの最終形に巻き戻してやり直しです.
とりあえずは,
systemctl stop dovecot
systemctl disable dovecot
としてから,再度trixieへのupgradeを試みたら成功しました.
あとはdovecotの問題の解決です.Debian (Raspberry Pi OSも)では,Bookwormにはdovecot 2.3.xが,Trixieには 2.4.xが付いてきます.2.3.xから2.4.xで設定ファイルに見直しがあったようです.
エラーは/etc/dovecot/conf.d/10-mail.conf内の,
mail_location = mbox:~/.mailbox:INBOX=/var/mail/%u
で起こります.ユーザーのディレクトリーのmboxを “.” で始まるディレクトリーにして通常のlsでは見えないようにしたいのです.
GeminiとChatGPTに聞きましたが,遠回りをして解決にたどり着きません.かなり時間を浪費しました.
AIへの相談をやめて,自分の管理しているサーバーを調べたら答えがありました.
mail_path = %{home}/.mailbox
mail_inbox_path = /var/mail/%{user}
のように,dovecot 2.4.xでは2行で既述すれば良いのです.
- 筆者はSlackwareの「root権限になってからシステムのメンテをする」流儀のため,ログインして
sudo -iをしてroot権限を取得してから作業します.そのため,コマンドにいちいちsudoを付けません. ↩︎
