解决 Homebrew 慢,无法 update 的一个思路 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
GTD
V2EX    macOS

解决 Homebrew 慢,无法 update 的一个思路

  •  
  •   GTD 2020-11-30 11:40:25 +08:00 5578 次点击
    这是一个创建于 1780 天前的主题,其中的信息可能已经有所发展或是发生改变。

    brew 换源就不说了,不好用,国内源很不稳定,我就没用过国内稳定好用的 homebrew 源

    换了无数个结点,有时候一直 brew update 没反应,经过楼主发现,原来是结点有问题,

    什么香港啊 新加坡啊 日本啊都没用,楼主都试过了,只有美国有用

    楼主换上自己学校提供的 Anyconnect,brew 秒过,猜测大部分服务器在美国,所以美国速度会快很多,

    所以建议大家对 brew update,用美国结会好很多

    47 条回复    2020-12-01 16:24:03 +08:00
    firethehole
        1
    firethehole  
       2020-11-30 11:53:27 +08:00
    这就试试美国节点
    firethehole
        2
    firethehole  
       2020-11-30 11:59:08 +08:00
    哎,还不行
    mschultz
        3
    mschultz  
       2020-11-30 11:59:10 +08:00   2
    看楼主这个帖子之前,我无论是人在内地用 TUNA 源,人在内地用香港梯子,还是人在香港用这边的运营商直连,都挺快的。看到楼主这个帖子之后再试一下(人在香港用直连),结果卡住了
    lostberryzz
        4
    lostberryzz  
       2020-11-30 12:04:42 +08:00
    可能是 anyconnect 而不是哪个节点的原因
    GTD
        5
    GTD  
    OP
       2020-11-30 12:05:38 +08:00
    @lostberryzz #4 不是啊,anyconnect 就是一个工具,我 clash 也是穿透终端的
    Abercrombie
        6
    Abercrombie  
       2020-11-30 12:08:23 +08:00
    git config --global https.proxy “127.0.0.1:1080”就行了( ssr 本地端口自己改)
    lostberryzz
        7
    lostberryzz  
       2020-11-30 12:12:28 +08:00
    刚刚我尝试了下,美国德国香港新加坡日本的多个节点,表现没有明显差异
    GTD
        8
    GTD  
    OP
       2020-11-30 12:13:45 +08:00
    @Abercrombie #6 这个不是基本操作吗........
    Skybrim
        9
    Skybrim  
       2020-11-30 12:17:08 +08:00
    一直用 ustc 镜像,挺快的啊
    LinSP
        10
    LinSP  
       2020-11-30 12:46:44 +08:00
    brew update 是有一些操作的,他显示 updating homebrew 的时候在后台是有一些操作的。
    而且这个操作可以延续,所以你下面的 brew install unrar 的 update 继承了之前的操作,显示一下就好了。实际上 update 的一些操作在前面已经做了

    根据我的 brew 使用经验应该是这样的
    GTD
        11
    GTD  
    OP
       2020-11-30 12:47:44 +08:00
    @LinSP #10 不是的不是的,brew update 这几天是动的动不了,以前是没问题
    zhouweiluan
        12
    zhouweiluan  
       2020-11-30 12:48:05 +08:00
    一直用香港节点,感觉没出过什么问题。
    倒是前几天下午一直卡着,换了美国节点也无济于事,到头来是 github 的问题。
    Wicked
        13
    Wicked  
       2020-11-30 13:03:40 +08:00 via iPhone
    貌似终极解决方法是建个虚拟网卡,确保所有的控制台程序都走代理。
    GTD
        14
    GTD  
    OP
       2020-11-30 13:06:42 +08:00
    @Wicked #13 控制台走代理很简单,现在不是控制台不走代理的问题,是走了代理还是不行,是 github 的问题
    CrazyRundong
        15
    CrazyRundong  
       2020-11-30 13:17:34 +08:00 via iPhone
    如果我没记错的话,brew update 是通过拉取 homebrew 上游的 git 仓库(默认用的 GitHub via HTTPS )来更新 formula 列表,可能是 LZ 当地的宽带供应商限制了 GitHub 的 git repo 访问速度?可以试下 TUNA 镜像的 homebrew git repo: https://mirrors.tuna.tsinghua.edu.cn/help/homebrew/
    Abercrombie
        16
    Abercrombie  
       2020-11-30 13:17:46 +08:00
    @GTD brew update 背后就是 git pull,git 的全局代理设置好了,brew update 应该是没问题的
    GTD
        17
    GTD  
    OP
       2020-11-30 13:30:36 +08:00
    @Abercrombie #16 t/729582

    你可以看下这个帖子,并不是一个人有我这个问题,而是 github 的亚太区挂了
    lostberryzz
        18
    lostberryzz  
       2020-11-30 13:32:47 +08:00
    建议加上-v 看看到底是哪一步出了问题
    Torpedo
        19
    Torpedo  
       2020-11-30 13:41:27 +08:00
    每次都是设置全局代理,用完再去掉
    warcraft1236
        20
    warcraft1236  
       2020-11-30 13:50:19 +08:00
    update 卡是因为 update 的时候需要去 github 上更新数据,如果连接 github 不卡,那就 update 不卡

    所以只是因为你的 fq 节点中美国连接 github 不卡而已


    与梯子有关,与地域无关
    ryj5566
        21
    ryj5566  
       2020-11-30 16:34:31 +08:00 via iPhone
    跟楼主一样,我也试了很多节点,只不过最后是用了日本的线路解决问题哈
    Xusually
        22
    Xusually  
       2020-11-30 16:38:46 +08:00
    最近几天有点不太正常,用美西的节点代理就可以了,不然等超时要很久。
    nguoidiqua
        23
    nguoidiqua  
       2020-11-30 16:46:25 +08:00
    感觉是 DNS 解析的问题,可能你通过某国上网,但他给你解析到另外一国的 CDN 。

    看看自己电脑的 DNS 相关设置,然后在终端 ping 对应域名看看解析到哪里去了。
    MaxLi77
        24
    MaxLi77  
       2020-11-30 16:50:18 +08:00
    不需要啥思路,换个好用的代理比什么都强
    yingqi7
        25
    yingqi7  
       2020-11-30 17:24:39 +08:00 via iPhone
    代理就是一切
    billtsui
        26
    billtsui  
       2020-11-30 18:03:24 +08:00
    一直用 ustc 镜像,挺快的
    linvaux
        27
    linvaux  
       2020-11-30 18:12:08 +08:00 via iPhone
    GTD
        28
    GTD  
    OP
       2020-11-30 18:15:36 +08:00
    @linvaux #27 可惜该走 github 的好像还是走 github

    并不能解决根本问题
    Tronsc
        29
    Tronsc  
       2020-11-30 18:22:19 +08:00
    zsh 主题好看,能分享一下吗
    GTD
        30
    GTD  
    OP
       2020-11-30 18:23:36 +08:00
    @Tronsc #29 ohmyzsh+powerline 10k
    Tronsc
        31
    Tronsc  
       2020-11-30 18:24:40 +08:00
    @GTD 谢谢
    gqbre
        32
    gqbre  
       2020-11-30 18:25:48 +08:00
    代理稳就是一切,其他都没用
    unixeno
        33
    unixeno  
       2020-11-30 18:32:03 +08:00 via Android
    ustc 不是有 homebrew 镜像么
    GTD
        34
    GTD  
    OP
       2020-11-30 18:49:47 +08:00
    @gqbre #32
    @yingqi7 #25
    @MaxLi77 #24

    跟代理没毛线关系,人在香港,一样无法 brew update
    GTD
        35
    GTD  
    OP
       2020-11-30 18:50:36 +08:00
    @gqbre #32
    @yingqi7 #25
    @MaxLi77 #24

    这几天就是 github 亚太线路有问题,我朋友在日本一样没法 brew update
    0x4F5DA2
        36
    0x4F5DA2  
       2020-11-30 21:13:43 +08:00 via iPhone
    用清华源 /export http_proxy
    lostberryzz
        37
    lostberryzz  
       2020-11-30 21:16:46 +08:00   1
    最近发现 brew update 会失败,错误显示为

    error: RPC failed; curl 18 transfer closed with outstanding read data remaining
    fatal: the remote end hung up unexpectedly
    Error: Fetching /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core failed!

    在 gh 上找到了这个 issue: https://github.com/Homebrew/homebrew-core/issues/61772
    可以通过这条命令解决问题:

    git config --global http.postBuffer 524288000
    CamD
        38
    CamD  
       2020-11-30 21:39:06 +08:00 via iPhone   1
    可以用 brew update --verbose 来看自己更新时是什么卡住了再去找对应的镜像源。只换一个 core 源还不够,起码还得再换一个 cask,有些冷门的 tap 根本没国内源所以卡得要死
    nrtEBH
        39
    nrtEBH  
       2020-11-30 23:24:41 +08:00
    把 proxy 配到 cli 就好了
    GTD
        40
    GTD  
    OP
       2020-11-30 23:26:41 +08:00
    @nrtEBH #39 认真看我的截图,cli 早就被穿透了,跟 proxy 没有关系
    IgniteWhite
        41
    IgniteWhite  
       2020-11-30 23:35:06 +08:00 via iPhone
    问个问题:如果用国内清华 tuna 或者中科大 ustc 镜像,是不是意味着不用走 github,直接从镜像下载 bottle 做更新?
    ShuoHui
        42
    ShuoHui  
       2020-12-01 09:16:30 +08:00 via iPhone
    我一直用 hk 的节点,没什么问题…
    MaxLi77
        43
    MaxLi77  
       2020-12-01 09:24:25 +08:00
    @GTD 巧了,我就是用的 hk 阿里云,这几天随便更新,控制台全局代理
    firethehole
        44
    firethehole 
       2020-12-01 10:59:25 +08:00
    昨天是 homebrew-core 不行,今天 homebrew-cask 不行
    firethehole
        45
    firethehole  
       2020-12-01 11:17:32 +08:00
    换了一个 aws 的香港节点,可以了
    treblex
        46
    treblex  
       2020-12-01 12:29:20 +08:00
    歪个楼请教一下,收费的私有源能不能搞,类似机场那种模式,现在大多都是公益的
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2933 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 32ms UTC 00:22 PVG 08:22 LAX 17:22 JFK 20:22
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86