各位使用 archlinux 是如何解决终端里 github 下载失败 abort 的?

2022-05-26 01:13:19 +08:00
 ottawa8821
==> ERROR: Failure while downloading https://github.com/microsoft/vcpkg/archive/refs/tags/2022.05.10.tar.gz
Aborting...

已经遇到好多次 termianl 里面使用 yay 下载 github 文件失败的例子了?

请问各位是怎么解决的??
4591 次点击
所在节点    Linux
29 条回复
dcsuibian
2022-05-26 01:23:48 +08:00
没用过,开代理啊
chasb
2022-05-26 01:38:41 +08:00
都用 linux 了,还不知道梯子,不合格!
LittleYe233
2022-05-26 02:07:31 +08:00
Mashirobest
2022-05-26 04:26:38 +08:00
yay 通常用 git 或者 curl 两种方式拉 github 文件,所以第一种情况是 git 要设置代理,第二种情况比较难办,因为原版 yay 不能直接 proxychains 代理(好像是 go 的原因),要用 gcc-go 重新编译一次 yay 才可以
zhanghua0
2022-05-26 08:08:58 +08:00
我记得 yay 吃 HTTPS_PROXY 变量的。再不济换 paru ,可以设置运行时附带的变量
yc8332
2022-05-26 08:26:49 +08:00
这不就是网络不行吗?挂梯子啊
bybyte
2022-05-26 08:37:00 +08:00
export HTTP_PROXY =
export HTTPS_PROXY =

或者直接用 iptables 做透明代理
pagxir
2022-05-26 08:39:13 +08:00
@Mashirobest V2EX 不是有人写了个 gratcp 么
Lnz
2022-05-26 08:43:01 +08:00
用代理
kujio
2022-05-26 08:48:50 +08:00
git 也是可以设置全局代理的
```
//设置全局代理
//http
git config --global https.proxy http://127.0.0.1:1080
//https
git config --global https.proxy https://127.0.0.1:1080
//使用 socks5 代理的 例如 ss ,ssr 1080 是 windows 下 ss 的默认代理端口,mac 下不同,或者有自定义的,根据自己的改
git config --global http.proxy socks5://127.0.0.1:1080
git config --global https.proxy socks5://127.0.0.1:1080

//只对 github.com 使用代理,其他仓库不走代理
git config --global http.https://github.com.proxy socks5://127.0.0.1:1080
git config --global https.https://github.com.proxy socks5://127.0.0.1:1080
//取消 github 代理
git config --global --unset http.https://github.com.proxy
git config --global --unset https.https://github.com.proxy

//取消全局代理
git config --global --unset http.proxy
git config --global --unset https.proxy
```
nba2k9
2022-05-26 08:52:07 +08:00
jiaoyidongxi
2022-05-26 09:13:01 +08:00
不用代理的话,直接改 pkgbuild ,把 github 换成反代镜像,如 githubfast ;但 yay 不像其他 aur 辅助工具可以在线直接改 pkgbuild ,要用 yay -G 包名 到本地改,最后 makepkg -si 安装都一样。
qbqbqbqb
2022-05-26 11:44:32 +08:00
@kujio socks5://建议改成 socks5h://,可代理 DNS 查询,避免一些问题
Biwood
2022-05-26 12:17:00 +08:00
代理问题,如果用的是 zsh 的话,推荐这个插件 https://github.com/SukkaW/zsh-proxy
iamzuoxinyu
2022-05-26 12:32:54 +08:00
有个万能的方案:redsocks2 + iptables 。
ysc3839
2022-05-26 13:19:26 +08:00
@kujio
@qbqbqbqb #13 提到了这个问题,git 底层是使用 libcurl 进行 http 请求的,根据 libcurl 的文档 https://curl.se/libcurl/c/CURLOPT_PROXY.html 使用 socks4a 或者 socks5h 的时候才是用代理服务器进行 DNS 解析。http 协议似乎默认是代理解析的。
dragondove
2022-05-26 13:24:07 +08:00
可以使用全局透明代理,推荐工具 v2raya: https://github.com/v2rayA/v2rayA
TrembleBeforeMe
2022-05-26 15:02:31 +08:00
不用 yay ,用 paru+proxychains
whenov
2022-05-26 15:56:16 +08:00
@qbqbqbqb 第一次听说这个,感谢分享
stoluoyu
2022-05-26 17:18:57 +08:00
让命令行也走代理

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/855335

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX