Linux 有问必答:如何在桌面版 Ubuntu 中用命令行更改系统代理设置

简介:

问题: 我经常需要在桌面版 Ubuntu 中更改系统代理设置,但我不想通过繁琐的 GUI 菜单点击:"系统设置" -> "网络" -> "网络代理"。在命令行中有更方便的方法更改桌面版的代理设置吗?

在桌面版 Ubuntu 中,它的桌面环境设置,包括系统代理设置,都存储在 DConf 数据库,这是简单的键值对存储。如果你想通过系统设置菜单修改桌面属性,更改会持久保存在后端的 DConf 数据库。在 Ubuntu 中更改 DConf 数据库有基于图像用户界面和非图形用户界面的两种方式。系统设置或者 dconf-editor 是访问 DConf 数据库的图形方法,而 gsettings 或 dconf 就是能更改数据库的命令行工具。

下面介绍如何用 gsettings 从命令行更改系统代理设置。

gsettings 读写特定 Dconf 设置的基本用法如下:

更改 DConf 设置:

 
  1. $ gsettings set <schema> <key> <value>

读取 DConf 设置:

 
  1. $ gsettings get <schema> <key>

通过命令行更改系统代理设置为手动

桌面版 Ubuntu 中下面的命令会更改 HTTP 代理设置为 "my.proxy.com:8000"。

 
  1. $ gsettings set org.gnome.system.proxy.http host 'my.proxy.com'
  2. $ gsettings set org.gnome.system.proxy.http port 8000
  3. $ gsettings set org.gnome.system.proxy mode 'manual'

如果你还想更改 HTTPS/FTP 代理为手动,用这些命令:

 
  1. $ gsettings set org.gnome.system.proxy.https host 'my.proxy.com'
  2. $ gsettings set org.gnome.system.proxy.https port 8000
  3. $ gsettings set org.gnome.system.proxy.ftp host 'my.proxy.com'
  4. $ gsettings set org.gnome.system.proxy.ftp port 8000

更改套接字主机设置为手动:

 
  1. $ gsettings set org.gnome.system.proxy.socks host 'my.proxy.com'
  2. $ gsettings set org.gnome.system.proxy.socks port 8000

上面的更改都只适用于当前的桌面用户。如果你想在系统范围内使用代理设置更改,在 gsettings 命令面前添加 sudo。例如:

 
  1. $ sudo gsettings set org.gnome.system.proxy.http host 'my.proxy.com'
  2. $ sudo gsettings set org.gnome.system.proxy.http port 8000
  3. $ sudo gsettings set org.gnome.system.proxy mode 'manual'

在命令行中更改系统代理设置为自动

如果你正在使用 自动配置代理 (proxy auto configuration,PAC),输入以下命令更改为 PAC。

 
  1. $ gsettings set org.gnome.system.proxy mode 'auto'
  2. $ gsettings set org.gnome.system.proxy autoconfig-url http://my.proxy.com/autoproxy.pac

在命令行中清除系统代理设置

最后,清除所有“手动/自动”代理设置,还原为无代理设置:

 
  1. $ gsettings set org.gnome.system.proxy mode 'none'

原文发布时间为:2015-06-23
本文来自云栖社区合作伙伴“Linux中国”
目录
相关文章
|
5天前
|
Shell Linux
【linux课设】自主实现shell命令行解释器
【linux课设】自主实现shell命令行解释器
|
6天前
|
运维 程序员 Linux
运维最全Linux 基本防火墙设置和开放端口命令,2024年最新程序员如何自我学习和成长
运维最全Linux 基本防火墙设置和开放端口命令,2024年最新程序员如何自我学习和成长
|
6天前
|
运维 Ubuntu 安全
运维最全linux 命令行操作串口_linux串口命令(2),2024年最新Linux运维源码的Binder权限是如何控制
运维最全linux 命令行操作串口_linux串口命令(2),2024年最新Linux运维源码的Binder权限是如何控制
运维最全linux 命令行操作串口_linux串口命令(2),2024年最新Linux运维源码的Binder权限是如何控制
|
6天前
|
运维 Linux Perl
运维最全linux 命令行操作串口_linux串口命令(1),21年Linux运维面经分享
运维最全linux 命令行操作串口_linux串口命令(1),21年Linux运维面经分享
运维最全linux 命令行操作串口_linux串口命令(1),21年Linux运维面经分享
|
8天前
|
Ubuntu 网络安全 数据安全/隐私保护
使用WinSCP工具,将windows文件传输到虚拟机Ubuntu系统
使用WinSCP工具,将windows文件传输到虚拟机Ubuntu系统
37 4
|
10天前
|
Ubuntu Linux Docker
window10下安装ubuntu系统以及docker使用
window10下安装ubuntu系统以及docker使用
|
11天前
|
Ubuntu 网络协议 搜索推荐
Ubuntu系统上定制文件系统
基于全志T507H处理器设计研发的OKT507-C开发板为例进行介绍。 Forlinx Desktop(Ubuntu)系统基于Ubuntu官方为嵌入式设备制作的操作系统-Lubuntu,该操作系统具备apt-get、ldd等常用的命令,若需要安装软件则直接apt-get在线安装即可,不需进行交叉编译移植等繁琐操作。但是每次重新烧写镜像之后,之前安装的软件就得重新安装,比较繁琐,如果需要批量操作则每块开发板都需要去apt-get安装,这样会大幅增加工作量,很不便于批量化生产。 能不能把软件一起打包到镜像呢?这样每次烧写完就不用再去apt-get在线安装了。答案当然是肯定的,这就涉及到文件系统
14 0
|
11天前
|
Ubuntu 编译器 C++
Ubuntu系统下编译OpenCV4.8源码
本文档介绍了在Ubuntu系统下编译和安装OpenCV4.8的简单步骤:首先,通过wget命令下载源码包,然后解压;接着,安装必要的编译器和第三方库支持;最后,在源码目录创建build文件夹,执行cmake和make安装。整个过程包括下载、安装依赖和编译安装三个主要步骤。
23 6
|
11天前
|
存储 Linux C++
【Linux】详解信号的保存&&信号屏蔽字的设置
【Linux】详解信号的保存&&信号屏蔽字的设置
|
11天前
|
Linux 程序员 Shell
【Linux】详解core dump文件的作用以及用法&&ubuntu20.04下无法形成core dump文件的解决办法
【Linux】详解core dump文件的作用以及用法&&ubuntu20.04下无法形成core dump文件的解决办法