SVN接続エラーの原因はリモートのSVNライブラリが喪失したから?

目次

macターミナルからSVNコミット操作したら次のようなエラーが出た。

1$ svn commit -m "testCommit"
2Enter passphrase for key '/Users/user/.ssh/id_rsa':
3Shared object "libsvn_repos-1.so.0" not found, required by "svnserve"
4svn: E170013: コミットに失敗しました (詳しい理由は以下のとおりです):
5svn: E170013: Unable to connect to a repository at URL 'svn+ssh://user@mydomain.sakura.ne.jp/home/user/repos_svn/trunk'
6svn: E210002: To better debug SSH connection problems, remove the -q option from 'ssh' in the [tunnels] section of your Subversion configuration file.
7svn: E210002: ネットワーク接続が突然切られました
8$

リモートのSVN状況を確認するために、svnコマンドの存在とバージョンをチェックしたらエラーが発生。

1$ which svn
2/home/hinohikari291/local/bin/svn
3$ svn --version
4Shared object "libsvn_client-1.so.0" not found, required by "svn"
5$

SVNコマンドはあるけど、SVNライブラリがないとのこと。
SVN環境構築時のソース格納ディレクトリをそのまま残していたので、makeを再実行した。

1gmake
2gmake install

実行ログは長いのでここでは省略するが、なにやら各種ライブラリが作成されたようだ。
再度バージョンチェックコマンドを叩くと、正常終了した。

 1$ svn --version
 2svn, version 1.14.1 (r1886195)
 3   compiled Feb 23 2022, 18:58:43 on x86_64-unknown-freebsd11.2
 4
 5Copyright (C) 2021 The Apache Software Foundation.
 6This software consists of contributions made by many people;
 7see the NOTICE file for more information.
 8Subversion is open source software, see http://subversion.apache.org/
 9
10The following repository access (RA) modules are available:
11
12* ra_svn : Module for accessing a repository using the svn network protocol.
13  - with Cyrus SASL authentication
14  - handles 'svn' scheme
15* ra_local : Module for accessing a repository on local disk.
16  - handles 'file' scheme
17
18The following authentication credential caches are available:
19
20* GPG-Agent
21
22$

改めてローカルからコミットすると、こちらも正常に実行できた。

1$ svn commit -m "testCommit"
2Enter passphrase for key '/Users/user/.ssh/id_rsa':
3送信しています              aaa.txt
4ファイルのデータを送信しています .done
5Committing transaction...
6リビジョン 12 をコミットしました。
7$

これで解決。

今回のようにライブラリがなくなった原因の詳細は不明だが、ここ最近、リモートでいろんな環境構築していたので、何かの拍子にクリアしてしまったのかもしれない。