有必要说说Ubuntu的代理了。
对于浏览网页和收发邮件,我们在系统设置—>网络—>网络代理中设置即可。但对于终端中使用apt-get工具却一直没能成功。尝试过几种设置的方式,但是往往设置完就报407的错误。
407 Proxy Authentication Required
后来才发现,是密码中使用了特殊字符造成的。SHIT!
针对apt工具的代理,可以在/etc/apt/apt.conf设置。格式如下:
Acquire::http::proxy "http://user:pwd@proxy.xxx:8080/";
Acquire::https::proxy "https://user:pwd@proxy.xxx:8080/";
Acquire::ftp::Proxy "ftp://username:password@proxyhost:port/";
但是密码中使用了@!等特殊字符,就要小心了。普通的\@转义在这里无效。正确的做法是用%+ASCII的十六进制码,如下:
@==>%40
$==>%24
!==>%21
Binary Oct Dec Hex Glyph
010 0000 040 32 20 (space)
010 0001 041 33 21 !
010 0010 042 34 22 "
010 0011 043 35 23 #
010 0100 044 36 24 $
010 0101 045 37 25 %
010 0110 046 38 26 &
010 0111 047 39 27 '
010 1000 050 40 28 (
010 1001 051 41 29 )
010 1010 052 42 2A *
010 1011 053 43 2B +
010 1100 054 44 2C ,
010 1101 055 45 2D -
010 1110 056 46 2E .
010 1111 057 47 2F /
011 0000 060 48 30 0
011 0001 061 49 31 1
011 0010 062 50 32 2
011 0011 063 51 33 3
011 0100 064 52 34 4
011 0101 065 53 35 5
011 0110 066 54 36 6
011 0111 067 55 37 7
011 1000 070 56 38 8
011 1001 071 57 39 9
011 1010 072 58 3A :
011 1011 073 59 3B ;
011 1100 074 60 3C <
011 1101 075 61 3D =
011 1110 076 62 3E >
011 1111 077 63 3F ?
谜底揭开,apt-get update终于可以使用了。