Cyberduckの「不明」エラーに悩まされる
Cyberduckを使ってサーバへアクセスしようとしたところ、今まで見たことのない「不明」というエラーが出た。
「再試行」を押しても状況は変わらず。先週アクセスした時には全く問題なく接続できたのに…。試しにFinderの「Command +K」を使ってサーバにアクセスしてみたところ、問題なくアクセスできた。
これはCyberduckの方に問題があるなと思い、アプリのバージョンを確認したところ、二日前(5/11)に7.9.0にアップデートされていることに気がついた。5月3日にOS(Big Sur)が11.3.1にアップデートされたので、それに対応するためにアップデートされたのだろう。自動アップデートにしていたので気がつかなかった。
試しに他のサーバにもアクセスしてみたところ、さらに不可解なことが起こった。問題なくアクセスできるサーバとエラーが起こるサーバがあるのだ。ちなみにサーバはすべてさくらのサーバなので会社の違いによるものではない。また同じプランでも接続できるサーバとできないサーバがあるのでプランの違いによるものでもなさそうだ。エラーの原因はおそらくアップデートによるものだと思って間違いないだろう。
1.Mac OSが最新バージョンになっているかを再確認。
とりあえずOSのバージョンを再確認。「システム環境設定」から「ソフトウェアアップデート」を選択。最新版になっているので問題はなさそうだ。
2.Macを再起動したのち、Cyberduckを再起動
アップデート時に何らかの問題が起こったのかもしれない。困った時はとりあえず再起動…ということでMacとCyberduckを再起動してみた。残念ながらエラーは継続。
3.キーチェーンを再設定する
サーバに接続する際のパスワードはCyberduckが管理している訳ではなく「キーチェーン」に登録されたものを呼び出して使用している。以前、このキーチェーンの設定が壊れて接続できなくなったことがあったので、再設定してみることに。
「キーチェーンアクセス」を開いたら「ログイン」の項目の「パスワード」を選択。エラーの起こるサーバ名を探しだし、そのキーチェーンを削除。
削除後、Cyberduckで接続するとパスワードを要求されるのでサーバパスワードを入力して接続する。しかし今回はこちらも効果はなくエラーは継続。
4.ブックマークから削除し再設定
キャッシュが残って悪さをしているのかなと思ったので、面倒だが接続を再設定することにした。ブックマークを表示し、削除したいサーバを選択したら左下の「-」をクリック。削除したら今度は「+」をクリックしサーバのアドレス、ユーザ名、パスワードを入力して新しい接続先を登録。手間をかけたにも関わらず、今回は効果がなかった。
5.Cyberduckのバージョンを戻す
アップグレードでエラーが起こるなら、ダウングレードすればいいじゃない…ということで古いバージョンのCyberduckを探してダウンロードしてみた。バージョンは一つ前の7.8.3。アプリケーションフォルダ以外のところに置いておけば最新版と併用することができるので、とりあえずデスクトップに置いておく。そしてこの一つ前のバージョンを使って接続してみたところエラーは出なくなった。(勝利!)
最新版の7.9.0には何らかのバグがあり、それによって一定の条件下で「不明」のエラーが出るということなのかもしれない。その「条件」を特定できればよかったのだが私の管理しているサーバ数ではサンプルとして数が少なすぎて傾向がよめない。次のバージョンアップでこのバグが解消されることを祈りつつ、当面の間はバージョン7.8.3を様子を見ながら使っていくしかなさそうだ。
追記:5月28日にアップデートされた7.9.2にバージョンアップしたところ、不明エラーは出なくなった。
2021.5.15投稿