ਵੈੱਬਸਾਈਟਾਂ VPN ਰਾਹੀਂ ਲੋਡ ਹੁੰਦੀਆਂ ਹਨ, ਪਰ apt ਰਿਪੋਜ਼ਟਰੀ ਤੱਕ ਨਹੀਂ ਪਹੁੰਚਦਾ
VPN ਰਾਹੀਂ ਚੱਲਣ ਵਾਲਾ ਬ੍ਰਾਊਜ਼ਰ apt ਦੀਆਂ ਪ੍ਰੌਕਸੀ ਸੈਟਿੰਗਾਂ ਬਾਰੇ ਕੁਝ ਨਹੀਂ ਦੱਸਦਾ। ਜੋ ਪੜਾਅ ਫੇਲ੍ਹ ਹੋ ਰਿਹਾ ਹੈ ਉਸ ਨੂੰ ਪੜ੍ਹੋ, ਪ੍ਰਭਾਵੀ ਕਨਫਿਗਰੇਸ਼ਨ ਡੰਪ ਕਰੋ, ਫਿਰ ਉਹ ਪ੍ਰੌਕਸੀ ਸੈੱਟ ਕਰੋ ਜੋ apt ਪੜ੍ਹਦਾ ਹੈ।
VPN ਜੁੜਦਾ ਹੈ, ਅੰਦਰੂਨੀ ਵਿਕੀ ਬ੍ਰਾਊਜ਼ਰ ਵਿੱਚ ਲੋਡ ਹੁੰਦੀ ਹੈ, ਅਤੇ apt update ਅਜੇ ਵੀ ਉਸ ਮਿਰਰ ਉੱਤੇ ਅਟਕਿਆ ਰਹਿੰਦਾ ਹੈ ਜਿੱਥੇ ਉਹ ਪਹੁੰਚ ਨਹੀਂ ਸਕਦਾ। ਉਸ ਤਸਵੀਰ ਵਿੱਚ ਸੁਰੰਗ ਵਿੱਚ ਕੁਝ ਵੀ ਟੁੱਟਿਆ ਨਹੀਂ। ਬ੍ਰਾਊਜ਼ਰ ਅਤੇ ਪੈਕੇਜ ਮੈਨੇਜਰ ਨੇ ਪ੍ਰੌਕਸੀ ਦੇ ਦੋ ਵੱਖਰੇ ਫੈਸਲੇ ਲਏ, ਅਤੇ ਉਨ੍ਹਾਂ ਵਿੱਚੋਂ ਸਿਰਫ਼ ਇੱਕ ਕਨਫਿਗਰ ਕੀਤਾ ਗਿਆ ਸੀ।
ਕਿਹੜਾ ਫੈਸਲਾ ਫੇਲ੍ਹ ਹੋਇਆ, ਇਹੀ ਪਹਿਲਾਂ ਤੈਅ ਕਰਨ ਯੋਗ ਇੱਕੋ ਇੱਕ ਗੱਲ ਹੈ।
ਸੈਟਿੰਗ ਛੂਹਣ ਤੋਂ ਪਹਿਲਾਂ ਗਲਤੀ ਪੜ੍ਹੋ
ਹਰ ਪੜਾਅ ਵੱਖਰਾ ਸੁਨੇਹਾ ਛੱਡਦਾ ਹੈ। ਜੋ ਨਾਮ ਕਦੇ ਹੱਲ ਨਹੀਂ ਹੁੰਦਾ ਉਹ DNS ਹੈ, ਜੋ ਕਨੈਕਸ਼ਨ ਕਦੇ ਪੂਰਾ ਨਹੀਂ ਹੁੰਦਾ ਉਹ ਰੂਟਿੰਗ ਜਾਂ ਫਾਇਰਵਾਲ ਹੈ, ਤੁਰੰਤ ਮਿਲਿਆ 407 ਪ੍ਰੌਕਸੀ ਪ੍ਰਮਾਣਿਕਤਾ ਹੈ, ਸਰਟੀਫਿਕੇਟ ਦੀ ਸ਼ਿਕਾਇਤ TLS ਪੁਸ਼ਟੀ ਹੈ, ਅਤੇ ਦਸਤਖ਼ਤ ਦੀ ਚੇਤਾਵਨੀ ਰਿਪੋਜ਼ਟਰੀ ਮੈਟਾਡੇਟਾ ਹੈ। ਇਨ੍ਹਾਂ ਪੰਜ ਫੇਲ੍ਹਾਂ ਲਈ ਪੰਜ ਵੱਖਰੇ ਸੁਧਾਰ ਲੋੜੀਂਦੇ ਹਨ, ਅਤੇ DNS ਸਮੱਸਿਆ ਉੱਤੇ ਚਿਪਕਾਈ ਪ੍ਰੌਕਸੀ ਲਾਈਨ ਸਿਰਫ਼ ਅਟਕਾਅ ਨੂੰ ਅੱਗੇ ਖਿਸਕਾਉਂਦੀ ਹੈ।
ਕੁਝ ਵੀ ਬਦਲਣ ਤੋਂ ਪਹਿਲਾਂ ਉਹ ਸਹੀ ਲਾਈਨ ਅਤੇ ਉਹ ਰਿਪੋਜ਼ਟਰੀ ਕਾਪੀ ਕਰੋ ਜਿਸਦਾ ਨਾਮ ਉਹ ਲੈਂਦੀ ਹੈ। „ਸਮਾਂ ਖ਼ਤਮ ਹੋ ਗਿਆ“ ਵਰਗੀ ਧੁੰਦਲੀ ਯਾਦ ਹੀ ਦਸ ਮਿੰਟ ਦੇ ਨਿਦਾਨ ਨੂੰ ਪੂਰੀ ਦੁਪਹਿਰ ਵਿੱਚ ਬਦਲ ਦਿੰਦੀ ਹੈ।
APT ਆਪਣੀਆਂ ਵੱਖਰੀਆਂ ਪ੍ਰੌਕਸੀ ਸੈਟਿੰਗਾਂ ਰੱਖਦਾ ਹੈ
APT /etc/apt/apt.conf.d/, ਮੁੱਖ apt.conf ਅਤੇ APT_CONFIG ਵੱਲੋਂ ਨਾਮ ਦਿੱਤੀ ਹਰ ਫਾਈਲ ਪੜ੍ਹਦਾ ਹੈ। ਇਹ ਡੈਸਕਟਾਪ ਪ੍ਰੌਕਸੀ ਪ੍ਰੋਫਾਈਲ, GNOME ਨੈੱਟਵਰਕ ਸੈਟਿੰਗ ਜਾਂ ਬ੍ਰਾਊਜ਼ਰ ਐਕਸਟੈਂਸ਼ਨ ਨਹੀਂ ਪੜ੍ਹਦਾ। ਟ੍ਰਾਂਸਪੋਰਟ ਪ੍ਰੌਕਸੀ ਵਾਤਾਵਰਣ ਵੇਰੀਏਬਲਾਂ ਦੀ ਪਾਲਣਾ ਕਰਦਾ ਹੈ, ਇਸ ਲਈ ਤੁਹਾਡੇ ਸ਼ੈੱਲ ਵਿੱਚ ਕੰਮ ਕਰਦਾ export https_proxy=... ਕਿਸੇ ਹੋਰ ਵਾਤਾਵਰਣ ਵਿੱਚ ਚੱਲ ਰਹੇ ਟਾਈਮਰ ਬਾਰੇ ਕੁਝ ਸਾਬਤ ਨਹੀਂ ਕਰਦਾ।
ਫੇਲ੍ਹ ਹੋ ਰਿਹਾ ਪ੍ਰੋਸੈਸ ਅਸਲ ਵਿੱਚ ਕੀ ਦੇਖਦਾ ਹੈ, ਉਹ ਡੰਪ ਕਰੋ: apt-config dump | grep -i proxy।
ਇਹ ਉਸੇ ਵਰਤੋਂਕਾਰ ਵਜੋਂ ਚਲਾਓ ਜਿਸ ਅਧੀਨ ਫੇਲ੍ਹ ਹੋ ਰਹੀ ਕਾਰਵਾਈ ਚੱਲਦੀ ਹੈ। ਜੇ root ਕੋਈ ਹੋਰ ਫਾਈਲ-ਸਮੂਹ ਪੜ੍ਹਦਾ ਹੈ, ਜਾਂ systemd ਟਾਈਮਰ ਕਿਸੇ ਹੋਰ ਵਾਤਾਵਰਣ ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਡੰਪ ਵੱਖਰਾ ਹੋਵੇਗਾ, ਅਤੇ ਉਹੀ ਫ਼ਰਕ ਤੁਹਾਡਾ ਜਵਾਬ ਹੈ। ਦੋ ਵਿਰੋਧੀ ਪ੍ਰੌਕਸੀ ਮੁੱਲ ਇੱਕ ਗੁੰਮ ਮੁੱਲ ਨਾਲੋਂ ਮਾੜੇ ਹਨ, ਕਿਉਂਕਿ ਟ੍ਰਾਂਸਪੋਰਟ ਸਭ ਤੋਂ ਖਾਸ ਮੇਲ ਦੀ ਪਾਲਣਾ ਕਰਦਾ ਹੈ ਜੋ ਉਸਨੂੰ ਮਿਲਦੀ ਹੈ।
ਪ੍ਰੌਕਸੀ ਉੱਥੇ ਸੈੱਟ ਕਰੋ ਜਿੱਥੇ ਕਨਫਿਗਰੇਸ਼ਨ ਦਾ ਮਾਲਕ ਇਸਦੀ ਉਮੀਦ ਰੱਖਦਾ ਹੈ
ਪ੍ਰਬੰਧਕ ਵੱਲੋਂ ਮਨਜ਼ੂਰ ਸਪਸ਼ਟ ਪ੍ਰੌਕਸੀ ਲਈ ਨਵੀਂ ਫਾਈਲ ਵਿੱਚ ਛੋਟਾ ਟੁਕੜਾ ਹੀ ਕਾਫ਼ੀ ਹੈ:
Acquire::http::Proxy "http://proxy.corp.example:3128/";
Acquire::https::Proxy "http://proxy.corp.example:3128/";
Acquire::http::Proxy::archive.example.internal "DIRECT";ਤੀਜੀ ਲਾਈਨ ਉਹ ਹਿੱਸਾ ਹੈ ਜੋ ਬਹੁਤੇ ਉਦਾਹਰਨ ਛੱਡ ਦਿੰਦੇ ਹਨ। ਪ੍ਰਤੀ-ਹੋਸਟ ਕੁੰਜੀ ਆਮ ਮੁੱਲ ਨੂੰ ਪਿੱਛੇ ਕਰ ਦਿੰਦੀ ਹੈ, ਇਸ ਲਈ ਸੁਰੰਗ ਰਾਹੀਂ ਪਹੁੰਚਣ ਵਾਲਾ ਅੰਦਰੂਨੀ ਮਿਰਰ ਪ੍ਰੌਕਸੀ ਛੱਡ ਸਕਦਾ ਹੈ ਜਦੋਂ ਕਿ ਬਾਕੀ ਸਭ ਅਜੇ ਵੀ ਇਸ ਵਿੱਚੋਂ ਲੰਘਦਾ ਹੈ। DIRECT ਇਸ ਲਈ ਦਸਤਾਵੇਜ਼ੀ ਮੁੱਲ ਹੈ, ਖਾਲੀ ਸਟ੍ਰਿੰਗ ਨਹੀਂ।
ਟੁਕੜੇ ਨੂੰ ਨਵੀਂ ਨੰਬਰ ਵਾਲੀ ਫਾਈਲ ਵਜੋਂ ਜੋੜੋ, ਜਿਵੇਂ /etc/apt/apt.conf.d/95proxy। ਵੰਡ ਦੀ ਫਾਈਲ ਉੱਤੇ ਲਿਖਣ ਦਾ ਮਤਲਬ ਹੈ ਕਿ ਅਗਲਾ ਪੈਕੇਜ ਅੱਪਡੇਟ ਤੁਹਾਡੀ ਤਬਦੀਲੀ ਨੂੰ ਚੁੱਪਚਾਪ ਵਾਪਸ ਕਰ ਦੇਵੇਗਾ।
ਪ੍ਰਮਾਣ-ਪੱਤਰ URI ਤੋਂ ਬਾਹਰ ਰਹਿੰਦੇ ਹਨ
APT ਟ੍ਰਾਂਸਪੋਰਟ ਹਵਾਲਾ ਪ੍ਰਮਾਣਿਕਤਾ ਲਈ apt_auth.conf ਵੱਲ ਇਸ਼ਾਰਾ ਕਰਦਾ ਹੈ, ਅਤੇ ਵਰਤੋਂਕਾਰ-ਨਾਮ ਤੇ ਪਾਸਵਰਡ ਉੱਥੇ ਹੀ ਜਾਂਦੇ ਹਨ। ਉਨ੍ਹਾਂ ਨੂੰ ਪ੍ਰੌਕਸੀ URI ਵਿੱਚ ਸ਼ਾਮਲ ਕਰਨ ਨਾਲ ਉਹ ਪ੍ਰੋਸੈਸ ਸੂਚੀਆਂ, ਸ਼ੈੱਲ ਇਤਿਹਾਸ ਅਤੇ ਟਿਕਟ ਵਿੱਚ ਚਿਪਕਾਏ ਹਰ ਕਨਫਿਗਰੇਸ਼ਨ ਡੰਪ ਵਿੱਚ ਪਹੁੰਚ ਜਾਂਦੇ ਹਨ। ਪ੍ਰਮਾਣਿਕਤਾ ਫਾਈਲ ਨੂੰ ਸਖ਼ਤ ਇਜਾਜ਼ਤਾਂ ਚਾਹੀਦੀਆਂ ਹਨ, ਕਿਉਂਕਿ ਇਹ ਪ੍ਰਮਾਣ-ਪੱਤਰਾਂ ਦਾ ਭੰਡਾਰ ਹੈ।
ਸਕੀਮ ਵੀ ਜਾਂਚੋ। HTTPS ਰਿਪੋਜ਼ਟਰੀ ਤੱਕ ਅਜੇ ਵੀ HTTP ਪ੍ਰੌਕਸੀ ਰਾਹੀਂ ਪਹੁੰਚਿਆ ਜਾ ਸਕਦਾ ਹੈ; ਟ੍ਰਾਂਸਪੋਰਟ ਮਿਰਰ ਦੀ URI ਸਕੀਮ ਤੋਂ ਵੱਖਰੀ ਚੋਣ ਹੈ।
ਗ੍ਰਾਫਿਕਲ ਸਾਫ਼ਟਵੇਅਰ ਕੇਂਦਰ ਵੱਖਰਾ ਫਰੰਟ ਐਂਡ ਹੈ। ਜੇ ਇਹ PackageKit ਜਾਂ snap ਬੈਕਐਂਡ ਵਰਤਦਾ ਹੈ, ਤਾਂ APT ਦਾ ਟੁਕੜਾ ਇਸ ਲਈ ਕੁਝ ਨਹੀਂ ਬਦਲਦਾ, ਇਸ ਲਈ ਪੁਸ਼ਟੀ ਕਰੋ ਕਿ ਫੇਲ੍ਹ ਬੇਨਤੀ ਕਿਹੜੇ ਪ੍ਰੋਸੈਸ ਨੇ ਕੀਤੀ।
ਰਾਹ ਦੀ ਪੁਸ਼ਟੀ ਕਰੋ, ਸਿਰਫ਼ ਨਿਕਾਸ ਕੋਡ ਦੀ ਨਹੀਂ
ਟੁਕੜਾ ਲੱਗਣ ਤੋਂ ਬਾਅਦ ਹਰੇ ਨਤੀਜੇ ਉੱਤੇ ਭਰੋਸਾ ਕਰਨ ਦੀ ਥਾਂ ਬੇਨਤੀ ਨੂੰ ਦੇਖੋ। apt-get -o Debug::Acquire::http=true update ਕਨੈਕਸ਼ਨ ਦੀ ਕੋਸ਼ਿਸ਼, ਚੁਣੀ ਪ੍ਰੌਕਸੀ ਅਤੇ ਜਵਾਬ ਕੋਡ ਛਾਪਦਾ ਹੈ, ਜੋ ਗਲਤ ਪ੍ਰੌਕਸੀ ਨੂੰ ਉਸ ਪ੍ਰੌਕਸੀ ਤੋਂ ਵੱਖ ਕਰਦਾ ਹੈ ਜਿਸਨੇ ਤੁਹਾਨੂੰ ਰੱਦ ਕੀਤਾ।
ਫਿਰ ਉਹ ਸਥਿਤੀ ਜਾਂਚੋ ਜੋ ਕੰਮ ਨਹੀਂ ਕਰਨੀ ਚਾਹੀਦੀ। VPN ਕੱਟੋ ਅਤੇ ਪੁਸ਼ਟੀ ਕਰੋ ਕਿ ਅੰਦਰੂਨੀ ਮਿਰਰ ਜਵਾਬ ਦੇਣਾ ਬੰਦ ਕਰ ਦਿੰਦਾ ਹੈ; ਜੇ ਇਹ ਅਜੇ ਵੀ ਡਾਊਨਲੋਡ ਕਰਦਾ ਹੈ, ਤਾਂ ਕੁਝ ਸੁਰੰਗ ਦੇ ਪਾਸਿਓਂ ਰੂਟ ਕਰ ਰਿਹਾ ਹੈ ਜਾਂ ਪੁਰਾਣਾ ਕੈਸ਼ ਤੁਹਾਨੂੰ ਸੇਵਾ ਦੇ ਰਿਹਾ ਹੈ। ਪੁਸ਼ਟੀ ਕਰੋ ਕਿ ਮਨਜ਼ੂਰ ਰਾਹ ਅਜੇ ਵੀ TLS ਦੀ ਪੁਸ਼ਟੀ ਕਰਦਾ ਹੈ ਅਤੇ ਅਜੇ ਵੀ ਰਿਪੋਜ਼ਟਰੀ ਦੇ ਦਸਤਖ਼ਤ ਜਾਂਚਦਾ ਹੈ, ਕਿਉਂਕਿ ਟ੍ਰੈਫਿਕ ਦੀ ਜਾਂਚ ਕਰਨ ਵਾਲੀ ਪ੍ਰੌਕਸੀ ਇਨ੍ਹਾਂ ਵਿੱਚੋਂ ਕੋਈ ਵੀ ਬੰਦ ਕਰਨ ਦਾ ਕਾਰਨ ਨਹੀਂ। ਇਹ ਵੀ ਪੁਸ਼ਟੀ ਕਰੋ ਕਿ ਅਣ-ਪ੍ਰਮਾਣਿਤ ਕਲਾਇੰਟ ਨੂੰ ਚੁੱਪ ਸਮਾਂ-ਸਮਾਪਤੀ ਦੀ ਥਾਂ ਸਪਸ਼ਟ ਇਨਕਾਰ ਮਿਲਦਾ ਹੈ।
ਚੱਲ ਰਿਹਾ ਟੁਕੜਾ ਅਤੇ ਫੇਲ੍ਹ ਆਉਟਪੁੱਟ ਤਬਦੀਲੀ ਰਿਕਾਰਡ ਵਿੱਚ ਇਕੱਠੇ ਰੱਖੋ। ਅਗਲੀ ਵਾਰ ਉਹੀ ਅਟਕਾਅ ਝੱਲਣ ਵਾਲਾ ਵਿਅਕਤੀ ਦੋ ਲਾਈਨਾਂ ਦਾ ਫ਼ਰਕ ਕਿਸੇ ਵੀ ਵਿਆਖਿਆ ਨਾਲੋਂ ਤੇਜ਼ੀ ਨਾਲ ਪਛਾਣ ਲਵੇਗਾ।