Routing af MacPorts rsync-kilder gennem en proxy
Tilpas portstræets kildeprotokol til proxytransporten i stedet for at antage, at et SSH-eksempel også retter en rsync-daemonforbindelse.
Browseren virker gennem SOCKS. En almindelig SSH-session gør også. Så går MacPorts i stå, mens det synkroniserer sit portstræ. Før du tilføjer endnu en SSH-mulighed, se på kildens URI.
rsync://host/module angiver en rsync-daemontjeneste. Eksemplet med rsync -e ssh user@host:path bruger en fjernskal og kræver adgang til en passende konto på den vært. Et offentligt rsync-spejl får ikke et SSH-login, fordi klienten har en ProxyCommand.
Tre ruter med forskellige forudsætninger
| Rute | Hvad skal findes |
|---|---|
| Portstræ-snapshot over HTTP eller HTTPS | En understøttet snapshotkilde og en fungerende HTTP-proxykonfiguration |
| rsync-daemon gennem en webproxy | En rsync-klient, der bruger RSYNC_PROXY, og en proxy, der tillader CONNECT til daemonporten |
| rsync over SSH | Et SSH-endepunkt, en konto og en fjern rsync-opsætning |
MacPorts dokumenterer HTTP- og HTTPS-tarballkilder i sources.conf som alternativer, når den sædvanlige synkroniseringstransport ikke er tilgængelig. Vælg den kilde, projektet understøtter til den installerede udgivelse; at ændre URI-skemaet er ikke tilladelse til at pege på et vilkårligt arkiv.
rsyncs RSYNC_PROXY er en webproxy-mekanisme, ikke en generel SOCKS-URL-indstilling. Daemonruten kræver ofte port 873, som en ellers fungerende webproxy bevidst kan afvise. Den separate RSYNC_CONNECT_PROG-mekanisme kan erstatte den direkte daemonsocket med et hjælpeprogram, men hjælperen skal levere den forventede bytestrøm.
Bemærk til sidst, hvilket MacPorts-trin der fejlede. Opdatering af portstræet, hentning af et arkiv og download af en ports kildefiler behøver ikke bruge samme transport. At reparere den første rute beviser ikke, at de andre deler dens proxy.