You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何阻止GNOME Terminal自动设置all_proxy及相关环境变量?

如何阻止GNOME Terminal自动设置all_proxy及相关环境变量?

我来帮你搞定这个问题!在Ubuntu 22.04上,GNOME Terminal确实会自动继承系统网络设置里的代理环境变量,不过我们可以通过隐藏配置调整,或者如果需要更直观的GUI选项,也能提交功能请求。

方法一:通过dconf/gsettings修改终端配置,清空代理变量

GNOME Terminal的底层配置存在dconf数据库里,我们可以给指定的终端配置文件设置自定义环境变量,把代理相关的变量设为空,这样终端启动时就不会继承系统的代理设置了:

  • 第一步:获取你的终端配置文件ID
    打开终端,运行这条命令:

    gsettings get org.gnome.Terminal.ProfilesList list
    

    你会得到类似 ['b1dcc9dd-5262-4d8d-a863-c897e6d979b9'] 的输出,里面的长字符串就是你的终端配置文件ID。

  • 第二步:设置自定义环境变量清空代理
    把上面拿到的ID替换到下面的命令里,执行后就能让对应配置的终端清空代理变量:

    gsettings set org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:b1dcc9dd-5262-4d8d-a863-c897e6d979b9/ environment "['all_proxy=', 'http_proxy=', 'https_proxy=', 'ftp_proxy=', 'no_proxy=']"
    

    如果觉得命令行麻烦,也可以安装图形化的dconf-editor(用sudo apt install dconf-editor安装),打开后导航到/org/gnome/terminal/legacy/profiles:/,找到你的配置文件,找到environment键,添加这些代理变量并设为空字符串就行。

    这样设置后,用这个配置文件打开的终端就不会有自动设置的代理变量了,而系统代理依然能正常给Chrome使用。

方法二:提交功能请求添加GUI选项

如果觉得上面的方法不够直观,希望GNOME Terminal能在GUI设置里加一个“不继承系统代理”的开关,你可以在GNOME官方的项目仓库提交功能请求,具体是GNOME Terminal的GitLab仓库。提交时记得说明你的使用场景:需要保留系统代理给Chrome,但终端要手动按需设置代理,希望能有可视化的开关控制终端是否继承系统代理变量。

备注:内容来源于stack exchange,提问作者Compl Yue

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 14:33:15