libcurlでrsyncを有効にする方法は?

libcurlでrsyncを有効にする方法は?

私はArchieにいます。pacmanサーバーからパッケージをダウンロードしようとすると、ftpエラーメッセージで失敗します。

libcurl では、プロトコル rsync はサポートされていないか無効になります。

これはしばらく私を悩ませましたが、私が何をしたのか覚えていません。 (Pacmanはサーバーからダウンロードしたhttpだけで無視できました。)私はそれらをインストールrsyncしてlibcurlインストールしてみましたが、以前は明らかに一緒にうまくいきました。libcurl設定ファイルが見つからず、curlページにも記載されていません。どのように活性化しますか?rsyncmanrsync

答え1

libcurlはrsyncプロトコルをサポートしていません。

libcurlからよくある質問:第3.21条

   3.21 Protocol xxx not supported or disabled in libcurl

   When passing on a URL to curl to use, it may respond that the particular
   protocol is not supported or disabled. The particular way this error message
   is phrased is because curl doesn't make a distinction internally of whether
   a particular protocol is not supported (i.e. never got any code added that
   knows how to speak that protocol) or if it was explicitly disabled. curl can
   be built to only support a given set of protocols, and the rest would then
   be disabled or not supported.

   Note that this error will also occur if you pass a wrongly spelled protocol
   part as in "htpt://example.com" or as in the less evident case if you prefix
   the protocol part with a space as in " http://example.com/".

libcurlはrsyncプロトコルやヒントについてはまったくわかりません。ただし、URLのインジケータでプロトコルを「推測」するように設計されているため、使用しようとするとrsync://blah.blah「rsync」を意味したと推測しますが、それがわからないためエラーが返されます。 。

試してみると同じエラーが発生しますlornix://blah.blah。私もファイル転送プロトコルのようです。 (そうであれば教えてください!)

Libcurlは次のような印象的なセットをサポートしています。規約しかし、rsyncはそのうちの1つではありません。

答え2

補足説明

pacman.conf で rsync が XferCommand に設定されていても、パッケージが更新されないことがあります。

これは、rsyncサーバーが* .db拡張子を持つファイルへのアクセスを許可しない場合です。場合によっては、rsyncコマンドはcore.db.tar.gzファイルを検索できますが、core.dbファイルは検索できません。この場合、httpsまたはhttpを選択する必要があります。

また、地域(国)を指定しないと、RATEでソートしてもミラーサーバー更新スクリプトが期待に満たないことがよくあります。

一般化する

1.ミラーリストの場合は、httpsまたはhttpプロトコルを選択します。

2. rsyncサーバーオペレータは* .dbファイル拡張子の設定を構成する必要があります。

3. ミラーリストを自動的に更新するスクリプトを使用するには、地域、国、およびプロトコルを指定します。

別言します。

関連情報