2022-11-29

Linux Mint で Google カレンダーが同期されなくなった

 突然に Linux Mint のカレンダーに Google カレンダーの予定が同期されなくなったので対応してみました。

Linux Mint 21 には「calendar@cinnamon.org」というカレンダーアプレットが標準で用意されており、「設定」「オンラインアカウント」で起動される「GNOME オンラインアカウント」に Google アカウントを登録することで Google カレンダーや Google ドライブと同期されることが可能です。


 
ところが先日、スマートフォンで登録した予定がなかなかカレンダーアプレット側に反映されないので調べてみると、Google アカウントの有効期限が切れていたようでした。

「ああ、そういうことですか」と思い、何度か再サインインしても資格情報が更新されず「切れています」のままなのです。ID とパスワードを入力し、スマートフォンにも二段階認証の通知が届いて認証が完了してもです。

似たような事象の人がいないか調べてみたところ、goa-daemon のエラーメッセージが関係していそうだということがわかりました。

ワタシもシステムログを確認してみたところ、「キーリングから証明書の取得に失敗しました (goa-error-quark, 4)」という怪しいエラーメッセージが記録されていました。

journalctl -b -4 | grep -i goa

11月 26 10:40:42 goa-daemon[1519]: secret_password_store_sync() failed: The session wrapping the secret does not exist
11月 26 10:40:42 goa-daemon[1519]: secret_password_lookup_sync() failed: The name :1.23 was not provided by any .service files
11月 26 10:40:42 goa-daemon[1519]: /org/gnome/OnlineAccounts/Accounts/account_xxxxxxxxxx_0: Setting AttentionNeeded to TRUE because EnsureCredentials() failed with: キーリングから証明書の取得に失敗しました (goa-error-quark, 4)
11月 26 10:40:42 goa-daemon[1519]: secret_password_lookup_sync() failed: The name :1.23 was not provided by any .service files
11月 26 10:40:42 goa-daemon[1519]: secret_password_lookup_sync() failed: The name :1.23 was not provided by any .service files

ちょうどこのエラーメッセージが出力されたのは Linux kernel を 5.15.0-52 から 5.15.0-53 に更新したタイミングのようだったので、あんまり関係するかわかりませんでしたがひとまず Linux kerenl を一つ前の 5.15.0-52 に戻して PC を再起動してみました。

その後に再度「オンラインアカウント」で Google アカウントにサインインしてみると、なぜかサインインが成功してしまいました。


カレンダーアプレットにもスマートフォン側で追加した予定が同期されるようになり、一件落着です。

このあと、お試しで Linux kerenl はまた新しい方の 5.15.0-53 に切り替えていますが、Google カレンダーの同期はできています。資格情報が有効期限内だからでしょうかね。

もしかすると、資格情報の更新は一度失敗したあとに PC の再起動をするだけで解消できたのかもしれません。

(追記)
2023年 1月 4日に再発しました。資格情報の期限切れとなり、Google アカウントに何度サインインするも完了しませんでした。

今回は単純に PC を再起動してみたところ、復旧しました。もしかすると PC の再起動までは必要なく、Linux Mint への再ログオンだけでも復旧するのかもしれません。次回の有効期限切れの際に試してみたいと思います。

(さらに追記)
再び資格情報の期限切れとなりました。一度、Google アカウントにサインイン後、Linux Mint への再ログオンを試してみましたが復旧しませんでした。PC の再起動にてサインインが完了しました。