Ubuntu 16.04代理配置:密码含@符号的转义方法问询
解决APT代理密码含@符号的识别问题
嘿,这个场景我太熟悉了!当你的APT代理密码里包含@这类特殊字符时,直接写的话系统会把它误判成用户名和主机之间的分隔符,导致配置失效。解决方法很简单:用URL编码转义密码里的@符号——把@替换成%40就搞定了。
原理说明
APT遵循URL的解析规则,@是用来分隔「用户名:密码」和「主机地址」的特殊字符。如果密码里本身包含@,必须通过URL编码让系统把它识别为密码的一部分,而不是分隔符。
修改后的配置示例
把你原来配置里密码中的@替换成%40,修改后的完整配置如下:
Acquire::http::proxy "http://username:yourpass%40word@172.16.115.66:3128/"; Acquire::https::proxy "https://username:yourpass%40word@172.16.115.66:3128/"; Acquire::ftp::proxy "ftp://username:yourpass%40word@172.16.115.66:3128/"; Acquire::socks::proxy "socks://username:yourpass%40word@172.16.115.66:3128/";
(注:把yourpass%40word换成你实际的密码,比如原密码是abc@123,就写成abc%40123)
验证配置
修改完配置文件后,运行下面的命令测试是否能正常通过代理更新:
sudo apt update
如果没有抛出代理连接失败的错误,就说明配置生效了。
内容的提问来源于stack exchange,提问作者Aadil Hoda
相关产品推荐
相关产品推荐

