Rute MacPorts rsync-kilder gjennom en proxy
Tilpass kildeportokollen til portstreet til proxytransporten i stedet for å anta at et SSH-eksempel også retter en rsync-daemonforbindelse.
Nettleseren virker gjennom SOCKS. En vanlig SSH-økt også. Så stopper MacPorts når det synkroniserer portstreet. Før du legger til nok et SSH-alternativ, se på kildens URI.
rsync://host/module betegner en rsync-daemontjeneste. Eksemplet med rsync -e ssh user@host:path bruker en ekstern skall og krever tilgang til en passende konto på den verten. Et offentlig rsync-speil får ikke SSH-innlogging bare fordi klienten har en ProxyCommand.
Tre ruter med ulike forutsetninger
| Rute | Hva som må finnes |
|---|---|
| Portstreet-snapshot over HTTP eller HTTPS | En støttet snapshotkilde og en fungerende HTTP-proxykonfigurasjon |
| rsync-daemon gjennom en nettproxy | En rsync-klient som bruker RSYNC_PROXY, og en proxy som tillater CONNECT til daemonporten |
| rsync over SSH | Et SSH-endepunkt, en konto og et eksternt rsync-oppsett |
MacPorts dokumenterer HTTP- og HTTPS-tarballkilder i sources.conf som alternativer når den vanlige synkroniseringstransporten ikke er tilgjengelig. Velg kilden prosjektet støtter for den installerte utgivelsen; å endre URI-skjemaet er ikke tillatelse til å peke på et vilkårlig arkiv.
RSYNC_PROXY i rsync er en nettproxymekanisme, ikke en generell SOCKS-URL-innstilling. Daemonruten trenger vanligvis port 873, som en ellers fungerende nettproxy kan avvise med vilje. Den separate RSYNC_CONNECT_PROG-mekanismen kan erstatte den direkte daemonsokkelen med et hjelpeprogram, men hjelperen må levere den forventede bytestrømmen.
Til slutt, legg merke til hvilket MacPorts-trinn som feilet. Oppdatering av portstreet, henting av et arkiv og nedlasting av kildefilene til en port trenger ikke bruke samme transport. Å reparere den første ruten beviser ikke at de andre deler proxyen dens.