Mobaxterm的Xserver服务打开远程的firefox实例

2023-11-05 20:30

本文主要是介绍Mobaxterm的Xserver服务打开远程的firefox实例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Mobaxterm的Xserver服务打开远程的firefox实例

        • 前言
        • 摘要
    • 主要工具
          • 1. win10
          • 2. linux
  • Linux服务器上安装过程与问题
    • 可视化展示
    • 效果图
    • 资源收集

前言

由于经常性网络非常差,但是ssh系列的通过租任的百度服务器先通过wget载到服务器,在从服务器通过sftp下载速度较快,具体原因不清楚,但是就萌生了通过ssh浏览东西,在下载的想法。
经网络搜索X11协议可以对浏览器交互的转发。
注:本章将介绍有操作和解决的问题,还存在部分遗留问题。有的操作可能因为非连贯性问题,所有在后面有补充,比如我升级python2到python3结果造成yum的异常。大部分解决都是经过搜索获取的,将会把来源附上。实现的效果图也将提供。

摘要

x11 mobaxterm ssh xorg-x11-xauth

主要工具

1. win10

mobaxterm:我是用的是便携式版本,直接在win10打开即可,但是这个最新12版本我下载不了,官网可以访问,但是使用服务器wget也下载不了,最终让同学帮忙下载的。

2. linux

firefox 通过管理软件下载
ssh 服务端和客户端 这个基本上远程机器都有,我没有操作下载
mesa-dri-drivers 通过管理软件下载
xorg-x11-xauth通过管理软件下载

Linux服务器上安装过程与问题

  1. 在linux服务器安装火狐软件
#使用yum安装
yum -y install firefox yum install firefox

ssh连接上远程服务器直接使用 firefox 打开,将有异常信息

Failed to open connection to “session” message bus: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11 Running without a11y support! Error: no DISPLAY environment variable specified

  1. Linux进行ssh的x11配置并重启

2.1 修改ssh配置

[root@linux-template-7 ~]# cat /etc/ssh/sshd_config
vi /etc/ssh/sshd_config 
X11Forwarding yes
X11UseLocalhost no -- 禁止将X11转发请求绑定到本地回环地址上

2.2 ssh重启

#先使用root权限进行机器重启Reboot the system.重启服务器
reboot
#机器重启后再重启ssh服务
service sshd restart
  1. x11的鉴权工具安装

问题:Error getting authority: Error initializing authority: Could not connect: Connection refused (g-io-error-quark, 39)

 yum install xorg-x11-xauth
#相关执行展示
已加载插件:langpacks, versionlock
base                                                                  | 3.6 kB  00:00:00
epel                                                                  | 4.7 kB  00:00:00
extras                                                                | 2.9 kB  00:00:00
updates                                                               | 2.9 kB  00:00:00
webtatic                                                              | 3.6 kB  00:00:00
(1/3): epel/x86_64/updateinfo                                         | 1.0 MB  00:00:00
(2/3): updates/7/x86_64/primary_db                                    | 3.0 MB  00:00:00
(3/3): epel/x86_64/primary_db                                         | 6.8 MB  00:00:00
Excluding 1 update due to versionlock (use "yum versionlock status" to show it)
正在解决依赖关系
--> 正在检查事务
---> 软件包 xorg-x11-xauth.x86_64.1.1.0.9-1.el7 将被 安装
--> 正在处理依赖关系 libXmuu.so.1()(64bit),它被软件包 1:xorg-x11-xauth-1.0.9-1.el7.x86_64 需                             要
--> 正在检查事务
---> 软件包 libXmu.x86_64.0.1.1.2-2.el7 将被 安装
--> 解决依赖关系完成依赖关系解决=============================================================================================Package                   架构              版本                      源               大小
=============================================================================================
正在安装:xorg-x11-xauth            x86_64            1:1.0.9-1.el7             base             30 k
为依赖而安装:libXmu                    x86_64            1.1.2-2.el7               base             71 k事务概要
=============================================================================================
安装  1 软件包 (+1 依赖软件包)总下载量:101 k
安装大小:216 k
Is this ok [y/d/N]: y
Downloading packages:
(1/2): libXmu-1.1.2-2.el7.x86_64.rpm                                  |  71 kB  00:00:00
(2/2): xorg-x11-xauth-1.0.9-1.el7.x86_64.rpm                          |  30 kB  00:00:00
---------------------------------------------------------------------------------------------
总计                                                         491 kB/s | 101 kB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction正在安装    : libXmu-1.1.2-2.el7.x86_64                                                1/2正在安装    : 1:xorg-x11-xauth-1.0.9-1.el7.x86_64                                      2/2验证中      : libXmu-1.1.2-2.el7.x86_64                                                1/2验证中      : 1:xorg-x11-xauth-1.0.9-1.el7.x86_64                                      2/2已安装:xorg-x11-xauth.x86_64 1:1.0.9-1.el7作为依赖被安装:libXmu.x86_64 0:1.1.2-2.el7完毕!
  1. load driver

问题:libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast

#编辑当前用户(即要启用firefox的用户)的.bash_profile文件
vim ~/.bash_profile 
#追加以下一行:unset LIBGL_ALWAYS_INDIRECT
#安装
yum install -y mesa-libGLES-devel.x86_64 mesa-dri-drivers

参见(https://yunwei365.blog.csdn.net/article/details/107139084)

已加载插件:langpacks, versionlock
Excluding 1 update due to versionlock (use "yum versionlock status" to show it)
正在解决依赖关系
--> 正在检查事务
---> 软件包 mesa-dri-drivers.x86_64.0.18.3.4-7.el7_8.1 将被 安装
--> 正在处理依赖关系 mesa-filesystem(x86-64),它被软件包 mesa-dri-drivers-18.3.4-7.el7_8.1.x86_64 需要
--> 正在处理依赖关系 libLLVM-7-rhel.so(LLVM_7)(64bit),它被软件包 mesa-dri-drivers-18.3.4-7.el7_8.1.x86_64 需要
--> 正在处理依赖关系 libLLVM-7-rhel.so()(64bit),它被软件包 mesa-dri-drivers-18.3.4-7.el7_8.1.x86_64 需要
---> 软件包 mesa-libGLES-devel.x86_64.0.18.3.4-7.el7_8.1 将被 安装
--> 正在处理依赖关系 mesa-libGLES = 18.3.4-7.el7_8.1,它被软件包 mesa-libGLES-devel-18.3.4-7.el7_8.1.x86_64 需要
--> 正在处理依赖关系 mesa-khr-devel(x86-64) = 18.3.4-7.el7_8.1,它被软件包 mesa-libGLES-devel-18.3.4-7.el7_8.1.x86_64 需要
--> 正在处理依赖关系 libglvnd-devel(x86-64),它被软件包 mesa-libGLES-devel-18.3.4-7.el7_8.1.x86_64 需要
--> 正在检查事务
---> 软件包 libglvnd-devel.x86_64.1.1.0.1-0.8.git5baa1e5.el7 将被 安装
--> 正在处理依赖关系 libglvnd-opengl(x86-64) = 1:1.0.1-0.8.git5baa1e5.el7,它被软件包 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64 需要
--> 正在处理依赖关系 libglvnd-gles(x86-64) = 1:1.0.1-0.8.git5baa1e5.el7,它被软件包 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64 需要
--> 正在处理依赖关系 libglvnd-core-devel(x86-64) = 1:1.0.1-0.8.git5baa1e5.el7,它被软件包 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64 需要
--> 正在处理依赖关系 libOpenGL.so.0()(64bit),它被软件包 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64 需要
--> 正在处理依赖关系 libGLESv2.so.2()(64bit),它被软件包 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64 需要
--> 正在处理依赖关系 libGLESv1_CM.so.1()(64bit),它被软件包 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64 需要
---> 软件包 llvm-private.x86_64.0.7.0.1-1.el7 将被 安装
---> 软件包 mesa-filesystem.x86_64.0.18.3.4-7.el7_8.1 将被 安装
---> 软件包 mesa-khr-devel.x86_64.0.18.3.4-7.el7_8.1 将被 安装
---> 软件包 mesa-libGLES.x86_64.0.18.3.4-7.el7_8.1 将被 安装
--> 正在检查事务
---> 软件包 libglvnd-core-devel.x86_64.1.1.0.1-0.8.git5baa1e5.el7 将被 安装
---> 软件包 libglvnd-gles.x86_64.1.1.0.1-0.8.git5baa1e5.el7 将被 安装
---> 软件包 libglvnd-opengl.x86_64.1.1.0.1-0.8.git5baa1e5.el7 将被 安装
--> 解决依赖关系完成依赖关系解决=================================================================================================Package                    架构          版本                              源              大小
=================================================================================================
正在安装:mesa-dri-drivers           x86_64        18.3.4-7.el7_8.1                  updates        7.2 Mmesa-libGLES-devel         x86_64        18.3.4-7.el7_8.1                  updates         60 k
为依赖而安装:libglvnd-core-devel        x86_64        1:1.0.1-0.8.git5baa1e5.el7        base            20 klibglvnd-devel             x86_64        1:1.0.1-0.8.git5baa1e5.el7        base            11 klibglvnd-gles              x86_64        1:1.0.1-0.8.git5baa1e5.el7        base            34 klibglvnd-opengl            x86_64        1:1.0.1-0.8.git5baa1e5.el7        base            43 kllvm-private               x86_64        7.0.1-1.el7                       base            23 Mmesa-filesystem            x86_64        18.3.4-7.el7_8.1                  updates         18 kmesa-khr-devel             x86_64        18.3.4-7.el7_8.1                  updates         19 kmesa-libGLES               x86_64        18.3.4-7.el7_8.1                  updates         16 k事务概要
=================================================================================================
安装  2 软件包 (+8 依赖软件包)总下载量:30 M
安装大小:102 M
Downloading packages:
(1/10): libglvnd-core-devel-1.0.1-0.8.git5baa1e5.el7.x86_64.rpm           |  20 kB  00:00:00
(2/10): libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64.rpm                |  11 kB  00:00:00
(3/10): libglvnd-gles-1.0.1-0.8.git5baa1e5.el7.x86_64.rpm                 |  34 kB  00:00:00
(4/10): libglvnd-opengl-1.0.1-0.8.git5baa1e5.el7.x86_64.rpm               |  43 kB  00:00:00
(5/10): llvm-private-7.0.1-1.el7.x86_64.rpm                               |  23 MB  00:00:00
(6/10): mesa-filesystem-18.3.4-7.el7_8.1.x86_64.rpm                       |  18 kB  00:00:00
(7/10): mesa-dri-drivers-18.3.4-7.el7_8.1.x86_64.rpm                      | 7.2 MB  00:00:00
(8/10): mesa-khr-devel-18.3.4-7.el7_8.1.x86_64.rpm                        |  19 kB  00:00:00
(9/10): mesa-libGLES-devel-18.3.4-7.el7_8.1.x86_64.rpm                    |  60 kB  00:00:00
(10/10): mesa-libGLES-18.3.4-7.el7_8.1.x86_64.rpm                         |  16 kB  00:00:00
-------------------------------------------------------------------------------------------------
总计                                                              34 MB/s |  30 MB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction正在安装    : 1:libglvnd-gles-1.0.1-0.8.git5baa1e5.el7.x86_64                             1/10正在安装    : mesa-libGLES-18.3.4-7.el7_8.1.x86_64                                        2/10正在安装    : 1:libglvnd-opengl-1.0.1-0.8.git5baa1e5.el7.x86_64                           3/10正在安装    : mesa-filesystem-18.3.4-7.el7_8.1.x86_64                                     4/10正在安装    : mesa-khr-devel-18.3.4-7.el7_8.1.x86_64                                      5/10正在安装    : 1:libglvnd-core-devel-1.0.1-0.8.git5baa1e5.el7.x86_64                       6/10正在安装    : 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64                            7/10正在安装    : llvm-private-7.0.1-1.el7.x86_64                                             8/10正在安装    : mesa-dri-drivers-18.3.4-7.el7_8.1.x86_64                                    9/10正在安装    : mesa-libGLES-devel-18.3.4-7.el7_8.1.x86_64                                 10/10验证中      : 1:libglvnd-gles-1.0.1-0.8.git5baa1e5.el7.x86_64                             1/10验证中      : 1:libglvnd-devel-1.0.1-0.8.git5baa1e5.el7.x86_64                            2/10验证中      : llvm-private-7.0.1-1.el7.x86_64                                             3/10验证中      : 1:libglvnd-core-devel-1.0.1-0.8.git5baa1e5.el7.x86_64                       4/10验证中      : mesa-khr-devel-18.3.4-7.el7_8.1.x86_64                                      5/10验证中      : mesa-libGLES-devel-18.3.4-7.el7_8.1.x86_64                                  6/10验证中      : mesa-filesystem-18.3.4-7.el7_8.1.x86_64                                     7/10验证中      : mesa-libGLES-18.3.4-7.el7_8.1.x86_64                                        8/10验证中      : mesa-dri-drivers-18.3.4-7.el7_8.1.x86_64                                    9/10验证中      : 1:libglvnd-opengl-1.0.1-0.8.git5baa1e5.el7.x86_64                          10/10已安装:mesa-dri-drivers.x86_64 0:18.3.4-7.el7_8.1     mesa-libGLES-devel.x86_64 0:18.3.4-7.el7_8.1作为依赖被安装:libglvnd-core-devel.x86_64 1:1.0.1-0.8.git5baa1e5.el7libglvnd-devel.x86_64 1:1.0.1-0.8.git5baa1e5.el7libglvnd-gles.x86_64 1:1.0.1-0.8.git5baa1e5.el7libglvnd-opengl.x86_64 1:1.0.1-0.8.git5baa1e5.el7llvm-private.x86_64 0:7.0.1-1.el7mesa-filesystem.x86_64 0:18.3.4-7.el7_8.1mesa-khr-devel.x86_64 0:18.3.4-7.el7_8.1mesa-libGLES.x86_64 0:18.3.4-7.el7_8.1完毕!

遗留未解决问题

Running without a11y support!(firefox:8159): Gtk-WARNING **: 20:49:47.699: Could not load a pixbuf from icon        theme.
This may indicate that pixbuf loaders or the mime database could not be found.###!!! [Parent][RunMessage] Error: Channel error: cannot send/recv###!!! [Parent][MessageChannel] Error: (msgtype=0x350068,name=PContent::Msg_Susp       endInputEventQueue) Channel error: cannot send/recv

可视化展示

note:由于服务器只有1G,因此展示的时候非常慢,一流的问题也可能对显示造成影响

效果图

可见部分汉字文字未正常显示,由于只有1G内存,因此不排除是内存不足等原因,英文网站是没有这种乱码的情况。
在这里插入图片描述
通过本地拷贝的"测试"汉字进行搜索,可搜索,但是出来程序标题正常显示,搜索的内容还是异常显示
在这里插入图片描述
在这里插入图片描述

资源收集

#firefox位置定位
[xujiayu@instance-v2u6h6uo ~]$ command -v firefox
/usr/bin/firefox
#经查看firefox是脚本文件
[xujiayu@instance-v2u6h6uo ~]$ file /usr/bin/firefox
/usr/bin/firefox: Bourne-Again shell script, ASCII text executable
[xujiayu@instance-v2u6h6uo ~]$ more /usr/bin/firefox
[xujiayu@instance-v2u6h6uo ~]$ view /usr/bin/firefox
/a11y
# Make sure at-spi-bus is running
if ! dbus-send --session            \--dest=org.freedesktop.DBus    \--type=method_call             \--print-reply                  \/org/freedesktop/DBus          \org.freedesktop.DBus.ListNames \| grep org.a11y.Bus > /dev/null; thenif [ -f "$MOZ_LIB_DIR/firefox/bundled/libexec/at-spi-bus-launcher" ]; thenecho "Starting a11y dbus service..."$MOZ_LIB_DIR/firefox/bundled/libexec/at-spi-bus-launcher &elseecho "Running without a11y support!"fi
fi
#apt-get存在时sudo apt-get install openssh-client
#yum
yum search openssh-client
#没有时安装
yum -y install openssh-client

pacman -S gdk-pixbuf21

The Gdk Pixbuf package is a toolkit for image loading and pixel buffer manipulation. It is used by GTK+ 2 and GTK+ 3 to load and manipulate images. In the past it was distributed as part of GTK+ 2 but it was split off into a separate package in preparation for the change to GTK+ 3.

This package is known to build and work properly using an LFS-9.1 platform

You don’t need an X server on the remote side of the X session, but you will need xauth, which is usually included in an X-related package (xorg-x11-xauth in RHEL and Fedora). If you want to run any programs that use X libraries (or libraries that require the X libraries), you’ll need X libraries on the remote end to execute those programs2

这是因为yum采用python作为命令解释器,这可以从/usr/bin/yum文件中第一行#!/usr/bin/python发现。而python版本之间兼容性不太好,使得2.X版本与3.0版本之间存在语法不一致问题。而CentOS 5自带的yum采用的是python2.4,当系统将python升级到2.6或3.0后,出现语法解释错误3

File "/usr/bin/yum", line 30 
except KeyboardInterrupt, e: ^
SyntaxError: invalid syntax
$ vi /usr/bin/yum

将第一行"#!/usr/bin/python" 改为 "#!/usr/bin/python2"即可。

vi  /usr/libexec/urlgrabber-ext-down"

将第一行"#!/usr/bin/python" 改为 "#!/usr/bin/python2"即可。
2、然后进行升级操作

  yum -y update

3、最后把步骤1修改的复原

#python版本更替
whereis python
python: /usr/bin/python /usr/bin/python2.7 /usr/lib/python2.7 
/usr/lib64/python2.7 /etc/python /usr/local/bin/python3.7-config 
/usr/local/bin/python3.7m-config /usr/local/bin/python3.7m 
/usr/local/bin/python3.7 /usr/local/lib/python3.7 
/usr/include/python2.7 /opt/hosteye/bin/python2.7 
/usr/share/man/man1/python.1.gz
#查看python连接
ll /usr/bin/python
lrwxrwxrwx. 1 root root 7 10月 11 2017 /usr/bin/python -> python2
#查看原来被连接位置
find / -name python2 2>/dev/null
>/usr/bin/python2
#删除软连接
rm -f /usr/bin/python
#查看新的将被连接位置
find / -name python3 2>/dev/null
>/usr/local/bin/python3
#创建新版本的软连接
ln -s /usr/local/bin/python3.7 /usr/bin/python
#当前python软连接位置
command -v python 2>/dev/null
>/usr/bin/python
#查看是否为软件接触
ll  /usr/bin/python
#查看当前版本
python -V

[1] https://bbs.archlinux.org/viewtopic.php?id=223801
[2] http://www.linuxfromscratch.org/blfs/view/svn/x/gdk-pixbuf.html
[3] https://unix.stackexchange.com/questions/6205/must-an-x11-server-be-installed-for-x11-forwarding-over-ssh-to-work
[4] http://www.mamicode.com/info-detail-1053725.html
[5]https://blog.csdn.net/misiter/article/details/7572288
[6]https://www.cnblogs.com/grimm/p/11103902.html


  1. 1 ↩︎

  2. 3 ↩︎

  3. 6 ↩︎

这篇关于Mobaxterm的Xserver服务打开远程的firefox实例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/352316

相关文章

Xshell远程连接失败以及解决方案

《Xshell远程连接失败以及解决方案》本文介绍了在Windows11家庭版和CentOS系统中解决Xshell无法连接远程服务器问题的步骤,在Windows11家庭版中,需要通过设置添加SSH功能并... 目录一.问题描述二.原因分析及解决办法2.1添加ssh功能2.2 在Windows中开启ssh服务2

Oracle Expdp按条件导出指定表数据的方法实例

《OracleExpdp按条件导出指定表数据的方法实例》:本文主要介绍Oracle的expdp数据泵方式导出特定机构和时间范围的数据,并通过parfile文件进行条件限制和配置,文中通过代码介绍... 目录1.场景描述 2.方案分析3.实验验证 3.1 parfile文件3.2 expdp命令导出4.总结

如何提高Redis服务器的最大打开文件数限制

《如何提高Redis服务器的最大打开文件数限制》文章讨论了如何提高Redis服务器的最大打开文件数限制,以支持高并发服务,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧... 目录如何提高Redis服务器的最大打开文件数限制问题诊断解决步骤1. 修改系统级别的限制2. 为Redis进程特别设置限制

MySQL的索引失效的原因实例及解决方案

《MySQL的索引失效的原因实例及解决方案》这篇文章主要讨论了MySQL索引失效的常见原因及其解决方案,它涵盖了数据类型不匹配、隐式转换、函数或表达式、范围查询、LIKE查询、OR条件、全表扫描、索引... 目录1. 数据类型不匹配2. 隐式转换3. 函数或表达式4. 范围查询之后的列5. like 查询6

Python实现局域网远程控制电脑

《Python实现局域网远程控制电脑》这篇文章主要为大家详细介绍了如何利用Python编写一个工具,可以实现远程控制局域网电脑关机,重启,注销等功能,感兴趣的小伙伴可以参考一下... 目录1.简介2. 运行效果3. 1.0版本相关源码服务端server.py客户端client.py4. 2.0版本相关源码1

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类

【区块链 + 人才服务】可信教育区块链治理系统 | FISCO BCOS应用案例

伴随着区块链技术的不断完善,其在教育信息化中的应用也在持续发展。利用区块链数据共识、不可篡改的特性, 将与教育相关的数据要素在区块链上进行存证确权,在确保数据可信的前提下,促进教育的公平、透明、开放,为教育教学质量提升赋能,实现教育数据的安全共享、高等教育体系的智慧治理。 可信教育区块链治理系统的顶层治理架构由教育部、高校、企业、学生等多方角色共同参与建设、维护,支撑教育资源共享、教学质量评估、

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

【区块链 + 人才服务】区块链集成开发平台 | FISCO BCOS应用案例

随着区块链技术的快速发展,越来越多的企业开始将其应用于实际业务中。然而,区块链技术的专业性使得其集成开发成为一项挑战。针对此,广东中创智慧科技有限公司基于国产开源联盟链 FISCO BCOS 推出了区块链集成开发平台。该平台基于区块链技术,提供一套全面的区块链开发工具和开发环境,支持开发者快速开发和部署区块链应用。此外,该平台还可以提供一套全面的区块链开发教程和文档,帮助开发者快速上手区块链开发。

C++操作符重载实例(独立函数)

C++操作符重载实例,我们把坐标值CVector的加法进行重载,计算c3=c1+c2时,也就是计算x3=x1+x2,y3=y1+y2,今天我们以独立函数的方式重载操作符+(加号),以下是C++代码: c1802.cpp源代码: D:\YcjWork\CppTour>vim c1802.cpp #include <iostream>using namespace std;/*** 以独立函数