La VPN konektiĝas, la interna vikio ŝargiĝas en la retumilo, kaj apt update ankoraŭ pendas ĉe spegulo kiun ĝi ne povas atingi. En tiu bildo nenio en la tunelo estas rompita. La retumilo kaj la pakadministrilo faris du apartajn prokurajn decidojn, kaj nur unu el ili estis agordita.

Kiun decidon malsukcesis estas la sola afero inda establi unue.

Legu la eraron antaŭ ol tuŝi agordon

Ĉiu etapo lasas alian mesaĝon. Nomo kiu neniam solviĝas estas DNS, konekto kiu neniam kompletiĝas estas enkursigado aŭ fajroŝirmilo, tuja 407 estas prokura aŭtentikigo, plendo pri la atesto estas TLS-kontrolo, kaj averta signo pri subskribo estas deponejaj metadatumoj. Tiuj kvin paneoj bezonas kvin malsamajn riparojn, kaj prokura linio algluita super DNS-problemo nur translokas la pendadon.

Kopiu la ĝustan linion kaj la deponejon kiun ĝi nomas antaŭ ol ŝanĝi ion. Vaga memoro pri „ĝi tempis eksteren“ estas tio kio igas dek-minutan diagnozon tuta posttagmezo.

APT tenas proprajn prokurajn agordojn

APT legas /etc/apt/apt.conf.d/, la ĉefan apt.conf kaj ĉiun dosieron nomatan de APT_CONFIG. Ĝi ne legas prokuran profilon de la labortablo, retan agordon de GNOME aŭ retumilan etendaĵon. La transporto ja respektas prokurajn mediovariablojn, kaj tial funkcianta export https_proxy=... en via ŝelo pruvas nenion pri tempigilo kiu ruliĝas en alia medio.

Elŝutu tion kion la malsukcesanta procezo efektive vidas: apt-config dump | grep -i proxy.

Rulu tion kiel la uzanto sub kiu ruliĝas la malsukcesanta operacio. Se root legas alian aron da dosieroj, aŭ systemd-tempigilo startas kun alia medio, la elŝuto malsamos, kaj tiu diferenco estas via respondo. Du prokuraj valoroj kiuj kontraŭdiras unu la alian estas pli malbonaj ol unu mankanta valoro, ĉar la transporto sekvas la plej specifan kongruon kiun ĝi trovas.

Agordu la prokurilon tie kie la posedanto de la agordo atendas ĝin

Por eksplicita prokurilo aprobita de la administranto, malgranda fragmento en nova dosiero sufiĉas:

Acquire::http::Proxy "http://proxy.corp.example:3128/";
Acquire::https::Proxy "http://proxy.corp.example:3128/";
Acquire::http::Proxy::archive.example.internal "DIRECT";

La tria linio estas la parto kiun plej multaj ekzemploj preterlasas. Ŝlosilo por unu gastiganto superregas la ĝeneralan valoron, do interna spegulo atingebla tra la tunelo povas preterpasi la prokurilon dum ĉio alia ankoraŭ iras tra ĝi. DIRECT estas la dokumentita valoro por tio, ne malplena ĉeno.

Aldonu la fragmenton kiel novan numeritan dosieron, ekzemple /etc/apt/apt.conf.d/95proxy. Anstataŭigi distribuan dosieron signifas ke la sekva pakada ĝisdatigo silente malfaras vian ŝanĝon.

Akreditiloj restas ekster la URI

La referenco pri la APT-transporto montras al apt_auth.conf por aŭtentikigo, kaj tie apartenas la uzantnomo kaj la pasvorto. Enmeti ilin en la prokuran URI metas ilin en procezajn listojn, en la ŝelan historion kaj en ĉiun agordan elŝuton algluitan en bileton. La aŭtentika dosiero bezonas restriktajn permesojn, ĉar ĝi estas konservejo de akreditiloj.

Kontrolu ankaŭ la skemon. HTTPS-deponejo ankoraŭ estas atingebla tra HTTP-prokurilo; la transporto estas aparta elekto disde la URI-skemo de la spegulo.

Grafika softvara centro estas aparta fasado. Se ĝi uzas PackageKit aŭ snap-malantaŭon, la APT-fragmento ŝanĝas nenion por ĝi, do kontrolu kiun procezon faris la malsukcesintan peton.

Kontrolu la vojon, ne nur la elirkodon

Kun la fragmento en la loko, observu la peton anstataŭ fidi verdan rezulton. apt-get -o Debug::Acquire::http=true update presas la konektoprovon, la elektitan prokurilon kaj la respondkodon, kio apartigas malĝustan prokurilon de prokurilo kiu rifuzis vin.

Poste testu la kazon kiu ne devus funkcii. Malkonektu la VPN kaj kontrolu ke la interna spegulo ĉesas respondi; se ĝi ankoraŭ elŝutas, io enkursigas preter la tunelo aŭ malnova kaŝmemoro servas vin. Kontrolu ke la permesita vojo ankoraŭ kontrolas TLS kaj ankoraŭ kontrolas deponejajn subskribojn, ĉar prokurilo kiu inspektas trafikon ne estas kialo malŝalti iun el ili. Kontrolu ankaŭ ke neaŭtentikigita kliento ricevas klaran rifuzon anstataŭ silentan tempolimon.

Tenu la funkciantan fragmenton kaj la malsukcesan eligon kune en la ŝanĝprotokolo. La sekva persono kiu trafas la saman pendadon rekonos la diferencon de du linioj pli rapide ol ajna klarigo.

Rilataj artikoloj