Loading... > 转载文章,排版可能出现错误,建议到原文阅读:https://zeroto.one/2018/08/13/linux_x11_config/ **需求**:服务器没有完整的桌面环境, 而某些软件需要图形界面观察效果。 **维基介绍**:X窗口系统(X Window System,也常称为X11或X)是一种以位图方式显示的软件窗口系统 **环境说明**: windows10下显示图形界面, 远程服务器为centos7, windows下远程软件为MobaXterm 或vcxsrv+xshell 或 vcxsrv+pycharm (vcxsrv可以使用Xming代替) 附带安装chromium浏览器和字体方法 ## 准备工作 **安装 X11 转发相关软件** ``` sudo yum install xorg-x11-xauth xorg-x11-fonts-* xorg-x11-font-utils xorg-x11-fonts-Type1 xclock ``` **启用 X11 Forwarding** `sudo vim /etc/ssh/sshd_config`, 更改为如下: \(只修改 X11UseLocalhost 和 X11Forwarding \) ``` X11Forwarding yes #X11DisplayOffset 10 #X11UseLocalhost yes X11UseLocalhost no ``` **重启 sshd 服务** ``` sudo systemctl restart sshd.service ``` **查看当前显示变量** ``` echo $DISPLAY ``` 我这里是连接远程服务器\(私网在外层映射到公网\), 显示的结果如下, ip与ifconfig里eth0网卡的一样. ``` 10.140.0.2:10.0 ``` ![DISPLAY设置](https://blog.zpzp.xyz/usr/uploads/2024/06/2621540372.png) ## 方案一(MobaXterm) MobaXterm一个软件一步到位, 集成x11服务端, linux上的为x11客户端 未用过x11的可以先下载MobaXterm便携版用来测试 [mobaxterm官网](https://mobaxterm.mobatek.net/) [MobaXterm便携版10.9下载地址](http://download.mobatek.net/1092018073012523/MobaXterm_Portable_v10.9.zip) [\[MobaXterm安装版10.9下载地址\]](http://download.mobatek.net/1092018073012523/MobaXterm_Installer_v10.9.zip) 如果服务器设置正确,X11-forwarding和DISPLAY会有绿色勾,如下图: ![MobaXterm](https://blog.zpzp.xyz/usr/uploads/2024/06/3998643335.png) ## 方案二(vcxsrv & xshell) vcxsrv和xshell配合显示图形界面, vcxsrv作为x11服务端, xshell中转图形数据到vcxsrv [VcXsrv Windows X Server下载地址](https://sourceforge.net/projects/vcxsrv/) **windows端下载安装vcxsrv** 第一次运行vcxsrv时使用开始菜单里面的XLaunch来启动, 产生一个初始的配置文件. 对于简单的使用来说, 不需要任何特殊的配置, 一切使用默认即可. 需要记住的是下图中标示出的”Display number”中的数字, 此处使用默认的, 最后一步中的Save configuration可以把这个设置保存为一个文件, 以后每次用这个设置只需运行该文件, 而不用每次都重新配置 xshell里点文件–>属性–>ssh隧道–>x11转移–>X DISPLAY–>设置为如下\(默认的`localhost:0.0`也可\): ``` 127.0.0.1:0.0 ``` ![xshell设置](https://blog.zpzp.xyz/usr/uploads/2024/06/1159140623.png) ## 方案三(vcxsrv & pycharm) vcxsrv和pycharm配合显示图形界面, vcxsrv作为x11服务端, pycharm中转图形数据到vcxsrv **方法一(麻烦,精确控制)** Pycharm->Preferences->Build, Execution, Deployment->Console->Python Console,点击Environment variables后面的…,添加我们刚刚看到的DISPLAY变量 在run configuration里面还要设置一遍: 点击运行按钮左边的下拉三角形->edit configurations ; 选中我们运行的configuration,我这里是test,点右边的Environment variables的…添加一个DISPLAY变量,我这里是localhost:10.0 **方法二(最方便)** 在linux的全局变量里 `/etc/bashrc`或者`~/.bashrc`设置以下就不用在pycharm每个文件run configuration里设置一遍(pycharm里就不用执行上述步骤设置环境变量了) ``` export DISPLAY=127.0.0.1:10.0 ``` ## 测试显示 以下会显示图形数字时钟,如果设置正确: ``` xclock ``` ![xclock](https://blog.zpzp.xyz/usr/uploads/2024/06/3290850775.png) ## 安装字体 如果使用浏览器等用到字体的软件会显示乱码, 解决办法, 安装英文与中文字体: `sudo yum -y install dejavu-sans-mono-fonts wqy-zenhei-fonts` 如果需要微软雅黑字体或其它指定字体, 请参考以下文章: [Linux CentOS 7 安装字体库 & 中文字体](https://blog.csdn.net/wlwlwlwl015/article/details/51482065) 更新字体缓存命令,不输入也可: ``` fc-cache -fv ``` ## [](#安装chromium浏览器 "安装chromium浏览器")安装chromium浏览器 (epel源里没有chrome但有chromium) 安装epel源: ``` sudo yum install epel-release ``` 正式安装chromium和chromedriver,chromedriver为selenium要用到的, 不需要可以不装. ``` sudo yum -y install chromium chromedriver ``` 启动chromium浏览器的命令为`chromium-browser`建议设置alias 输入命令验证chromedriver安装版本`chromedriver` 此处Chromium版本为 57, ChromeDriver版本为 2.37 ![chromium](https://blog.zpzp.xyz/usr/uploads/2024/06/1666743418.png) 浏览器很耗费内存资源, 512m内存服务器会很卡. x11转发方式效率不高, 即使是在局域网内使用也是有卡顿感, 如果是长期大量使用桌面环境可以考虑使用vnc方式代替. 最后修改:2024 年 06 月 06 日 04 : 54 PM © 转载自他站 赞赏 要多恰饭才能长胖 赞赏作者 支付宝微信