Encaminhar as fontes rsync do MacPorts através de um proxy
Ajuste o protocolo da fonte da ports tree ao transporte do proxy em vez de presumir que um exemplo SSH também corrige uma ligação ao daemon rsync.
O navegador funciona através de SOCKS. Uma sessão SSH normal também. Depois o MacPorts bloqueia enquanto sincroniza a sua ports tree. Antes de acrescentar outra opção SSH, veja o URI da fonte.
rsync://host/module designa um serviço de daemon rsync. O exemplo com rsync -e ssh user@host:path usa uma shell remota e exige acesso a uma conta adequada nesse host. Um espelho rsync público não obtém um início de sessão SSH só porque o cliente tem um ProxyCommand.
Três caminhos com pré-requisitos diferentes
| Caminho | O que tem de existir |
|---|---|
| Instantâneo da ports tree por HTTP ou HTTPS | Uma fonte de instantâneo suportada e uma configuração de proxy HTTP funcional |
| Daemon rsync através de um proxy web | Um cliente rsync que use RSYNC_PROXY e um proxy que permita CONNECT à porta do daemon |
| rsync sobre SSH | Um ponto terminal SSH, uma conta e uma disposição remota de rsync |
O MacPorts documenta fontes tarball HTTP e HTTPS em sources.conf como alternativas quando o transporte de sincronização habitual não está disponível. Escolha a fonte suportada pelo projeto para a versão instalada; mudar o esquema do URI não é autorização para apontar para um arquivo arbitrário.
RSYNC_PROXY do rsync é um mecanismo de proxy web, não uma configuração genérica de URL SOCKS. O caminho pelo daemon costuma precisar da porta 873, que um proxy web de resto funcional pode negar deliberadamente. O mecanismo separado RSYNC_CONNECT_PROG pode substituir o socket direto do daemon por um auxiliar, mas o auxiliar tem de fornecer o fluxo de bytes esperado.
Por fim, repare em que etapa do MacPorts falhou. Atualizar a ports tree, obter um arquivo e transferir os ficheiros fonte de um port não têm de usar um único transporte. Reparar o primeiro caminho não prova que os outros partilham o seu proxy.