如何在Ubuntu 16.04上的Web代理后面安装快照包


Answers:


24

snapd读取/etc/environment,因此在此处设置常规代理环境变量即可。在Ubuntu上,这是通过设置→网络→网络代理自动为您完成的,因此只要snapd在更改该文件后重新启动,就应该进行设置。


2
更具体地说,snapd.service文件位于以下位置:/lib/systemd/system/snapd.service
julian-

1
@darkhole不应编辑/lib/systemd/system/snapd.service,而应使用systemctl edit snapd.service。见我的回答:askubuntu.com/questions/659267/...
穆鲁

1
那么,如果要自动执行此配置怎么办?
pmatulis

2
请记住,在这些更改生效之前,您将需要重新启动快照服务。
赛斯(Seth)

2
您在此处发布的方法也不适用于身份验证。Snap应该像其他所有人一样使用普通的$ http_proxy和$ https_proxy env vars。这是此问题的ubuntu错误跟踪器链接
Teque5

27

在快照2.28中添加了一个系统选项以指定代理服务器。

$ sudo snap set system proxy.http="http://<proxy_addr>:<proxy_port>"
$ sudo snap set system proxy.https="http://<proxy_addr>:<proxy_port>"

文献资料


1
这可能应该是公认的答案。
Mygod

2.34.2在Ubuntu 16.04.5 上使用snap / snapd ,这些选项不起作用。必须与askubuntu.com/a/1084862/75760一起使用,更改系统设置
hanxue

1
这应该是公认的答案
sayem siam

10

还有另一种将环境变量添加到systemd服务的方法:

为快照守护程序创建一个文件夹,并为环境变量创建配置文件:

$ sudo mkdir -p /etc/systemd/system/snapd.service.d/
$ echo -e '[Service]\nEnvironment="http_proxy=http://1.2.3.4:3128/"' \
      | sudo tee /etc/systemd/system/snapd.service.d/http-proxy.conf
$ echo -e '[Service]\nEnvironment="https_proxy=http://1.2.3.4:3128/"' \
      | sudo tee /etc/systemd/system/snapd.service.d/https-proxy.conf
$ sudo systemctl daemon-reload
$ sudo systemctl restart snapd

之后,您可以检查环境变量是否设置为snapd

$ systemctl show snapd | grep proxy
  Environment=http_proxy=http://1.2.3.4:3128/ https_proxy=http://1.2.3.4:3128/
  DropInPaths=/etc/systemd/system/snapd.service.d/http-proxy.conf /etc/systemd/system/snapd.service.d/https-proxy.conf

6

Snap使用snapd守护程序。您只需要定义http_proxyhttps_proxy进入/etc/environment并重新启动服务:systemctl restart snapd


2

快照服务被配置为使用特殊的环境文件,因此,如果快照未使用您当前的环境变量,则只需向其中添加http_proxy变量即可。

打开文件:

sudo vim /etc/sysconfig/snapd

加:

http_proxy=http://127.0.0.1:3128
https_proxy=http://127.0.0.1:3128

sysconfigUbuntu上没有文件夹。
smartmouse


1

请小心,因为快照会读取/ etc / environment文件,而不是获取ENV变量。下面的示例不起作用:

export https_proxy=http://<your.ip.here>:3128

您必须使用:

http://<your.ip.here>:3128
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.