SSH连接服务器正常显示GUI程序
今天突发奇想想要将以前的一个项目做的软件优化一下, 然后把项目clone的mac上发现是需要gpu的,于是我又将项目upload到了我自己的服务器上,可是我一直是ssh去远程服务器的,我的这个软件涉及PyQt5的部分,没办法直接显示,于是了解了使用SSh的X11转发功能,实现了可以在远程服务器执行涉及GUI的脚本,以下是一些可能遇到的问题。
实现细节
- 首先我在Mac上选择的软件是 XQuartz,直接用包管理器安装即可
brew install --cask xquartz,注意这里安装完要重启电脑才行,brew下载完并没有这个提示。 - 需要检查服务器上的/etc/ssh/sshd_config里面的这三行没有被注释掉:
# 1. 确保 X11Forwarding 为 yes
X11Forwarding yes
# 2. 确保这一行没有被注释掉
X11DisplayOffset 10
# 3. 确保这一行是 yes (通常是默认值,但检查一下)
X11UseLocalhost yes
- 之后用
ssh -Y your_username@server_ip来连接服务器,正常情况下执行echo $DISPLAY是能够显示localhost:10.0的,我一开始显示为空,于是我检查了sshd_config,并且使用ssh -v -Y your_username@server_ip来查看更详细的信息,DEBUG信息显示debug1: X11 forwarding requested but DISPLAY not set,最后重启了电脑就正常设置了。 - 我总共在服务器上安装了这些库:
sudo apt update
sudo apt install -y libgl1-mesa-glx libgl1-mesa-dri
sudo apt install -y libxkbcommon-x11-0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xinerama0 libxcb-xfixes0 libxcb-shape0
之后就能正常在我的Mac上显示了,有一些我做的动画显示的时候会比较卡而且会有很多不正常的背景色,不过这都不太重要,能够大概正常显示就已经够用了。
SSH连接服务器正常显示GUI程序的更多相关文章
- Mac上使用ssh连接服务器title显示服务器的ip
Mac上使用ssh连接服务器title显示服务器的ip 使用Mac开发时,管理的服务器过多时,会搞混乱.可能有时啪啪啪一顿操作,最后发现操作错了机器. 解决方案 在远程服务器上,编辑vim /etc/ ...
- Linux:ssh连接服务器很慢
ssh连接服务器,如果很慢,可以进行如下处理: vi /etc/ssh/sshd_config#UseDNS yes改成:UseDNS no/etc/init.d/sshd restart ----- ...
- 通过ssh X11转发使用远程gui程序
ssh协议可以转发X11数据, 从而达到使用远程gui程序的功能, 假定现在有 客服端 C :192.168.0.13 服务器 S :192.168.0.200 首先确保在客服端C 上能够通过 ssh ...
- mac终端ssh连接服务器 空闲的时候 连接断开
ssh_config详解(MAC OSX) 方法1:MAC客户端配置 配置“/etc/ssh/ssh_config”文件 “/etc/ssh/ssh_config” 文件是OpenSSH系统范围的配置 ...
- ssh连接服务器失败解决记录
故障:db2inst1用户无法通过ssh连接数据库服务器. 但是root用户可以连接,连接后su – db2inst1用户报错: su: cannot set user id: Resource te ...
- Python通过ssh连接服务器并执行命令
[本文出自天外归云的博客园] 脚本示例如下: # coding:utf-8 import time,paramiko,re,StringIO def exec_shell(command): ''' ...
- SSH连接服务器时,长时间不操作就会断开的解决方案
最近在配置服务器相关内容时候,不同的事情导致长时间不操作,页面就断开了连接,不能操作,只能关闭窗口,最后通过以下命令解决. SSH连接linux时,长时间不操作就断开的解决方案: 1.修改/etc/s ...
- java:ssh连接服务器,实现本地文件上传和下载
1.连接至服务器:ssh hp@10.10.17.16 -p 5555 下载文件:scp -r hp@10.10.17.16:/ccc(服务器路径,文件夹下所有文件) /path(本地路径) ...
- git使用ssh连接服务器
git如何连接服务器呢? $ ssh -p 22 root@服务器ip 解释:ssh -p 端口号 登录的用户名@IP
- ssh连接服务器
1.命令行操作 第一步输入 :ssh 用户名@服务器外网ip 第二步:输入密码,回车 看到welcome提示信息即为登陆成功 输入:exit 退出 2.客户端操作 windows下载ssh软件,安装 ...
随机推荐
- 手把手教你实现MVVM架构
.markdown-body { color: rgba(89, 89, 89, 1); font-size: 15px; font-family: -apple-system, system-ui, ...
- ArkUI-X跨平台框架接入指南
ArkUI跨平台框架(ArkUI-X)进一步将ArkUI开发框架扩展到了多个OS平台:目前支持OpenHarmony.Android. iOS,后续会逐步增加更多平台支持.开发者基于一套主代码,就可以 ...
- TEA密码与逆向工程
前置信息 TEA系列概述:TEA算法是一种分组密码算法,由剑桥大学计算机实验室的David Wheeler和Roger Needham于1994年发明.它使用64位的明文分组和128位的密钥进行加 ...
- 面试题:Spring BeanFactory和FactoryBean的区别
BeanFactory:以Factory结尾,表明它是一个工厂类(接口),它是Spring IOC容器的核心接口,负责实例化和管理bean的一个工厂,为具体的IoC容器的实现提供规范.BeanFa ...
- springboot读取并映射额外的yml配置到bean
项目结构 userPermission.yml # 用户权限 user-permission: api: # 系统管理员 system_manager: - "*:*:*" # 应 ...
- 终极指南:Scrum中如何设置需求优先级
需求众多不知道如何下手?总想先做简单的需求,复杂需求却一拖再拖?那么,我们是时候开始考虑如何设置需求优先级了. 本期终极指南将展示如何为需求设置有效优先级,如何有效管理工作量,让效率指数倍增长,搭配 ...
- vivo Pulsar 万亿级消息处理实践(2)-从0到1建设 Pulsar 指标监控链路
作者:vivo 互联网大数据团队- You Shuo 本文是<vivo Pulsar万亿级消息处理实践>系列文章第2篇,Pulsar支持上报分区粒度指标,Kafka则没有分区粒度的指标,所 ...
- 8.Java Spring框架源码分析-IOC-调用BeanFactoryPostProcessor的postProcess方法
目录 1. 要研究的代码 2. 处理BeanDefinitionRegistryPostProcessor类型的PostProcessor 2.1. 当前bean工厂是BeanDefinitionRe ...
- Spring 6
一.基础 1.什么是反射 在Java中,反射是指在运行时检查和操作类.接口.字段和方法等程序结构的能力. 通过反射,你可以在运行时动态获取类的信息.实例化对象.访问和修改字段.调用方法, 以及构造新的 ...
- 腾讯云的devops自动化部署代替jenkins
起因 jenkins太耗内存了,经常导致服务器崩. 了解到devOps也是做类似的服务的,遂用之. serverless framework也可以做这个,但是截至目前,只能够打包node项目. dev ...