在Windows下用ssh连接服务器的话putty是一个小巧而且实用的工具,如果想要图形界面,可以使用X工具配合putty。

或者直接使用xmanager enterprise,非 常方便。
 
如果在Ubuntu系统下,ssh客户端一般是自带的,如果没有可以执行sudo apt-get install openssh-client进行安装,

之后执行ps -e|grep ssh如果有ssh-agent那么就表示ssh客户端安装成功了。在终端可以输入

ssh username@192.168.1.100登录到192.168.1.100这个ssh服务器,然后会让你输入密码,之后就登录了。
 
ssh连接成功后,如果想要显示图形界面,需要做一些配置。步骤如下:
 
1、服务器端的ssh必须运行转发X界面,在ssh服务器中,找到/etc/ssh/sshd_config 这个配置文件,其中有一行

X11Forwarding yes,确保这个是yes(注意这个配置文件中的#是注释,确保X11Forwarding前面没有#注释),

然后重启ssh服务,cd /etc/init.d这个目录下执行 ./ssh restart
 
2、客户端配置,在/etc/ssh/ssh_config配置文件中,找到ForwardAgent yes,ForwardX11 yes,

ForwardX11Trusted yes这3个确保是yes(注意这个配置文件中的#是注释,确保你修改的行没有被注释掉)
 
3、配置完成后,进入终端,现在假设我们的Ubuntu客户端的ip是1.1.1.1(只是假设),而ssh服务器的ip是2.2.2.2。

下面是执行步骤,注意别弄错了:
 
首先终端未连接ssh之前,执行xhost +2.2.2.2 这个步骤是允许ssh服务器的X界面连接过来
 
然后执行ssh -X root@2.2.2.2 注意-X这个是大写的X,这个步骤是连接到ssh服务器,接着会要输入密码
 
这个时候终端已经连接到ssh服务器了,然后执行export DISPLAY=1.1.1.1:0.0这个步骤是把ssh服务器的X显示重新定位

到1.1.1.1的0.0显示器中,也就是我们的客户端
 
然后做个测试,执行xclock,等待。。。如果这个时候在你的Ubuntu界面中出现了一个时钟界面,那么恭喜你成功了。

在Linux/Unix类操作系统上, DISPLAY用来设置将图形显示到何处. 直接登陆图形界面或者登陆命令行界面后

使用startx启动图形, DISPLAY环境变量将自动设置为:0:0, 此时可以打开终端, 输出图形程序的名称(比如xclock)来启动

程序, 图形将显示在本地窗口上, 在终端上输入printenv查看当前环境变量, 输出结果中有如下内容: DISPLAY=:0.0

xhost 是用来控制X server访问权限的,这个命令将允许别的用户启动的图形程序将图形显示在当前屏幕上。

通常当你从hostA登陆到hostB上运行hostB上的应用程序时,做为应用程序来说,hostA是client,但是作为图形来说,

是在hostA上显示的,需要使用hostA的Xserver,所以hostA是 server.因此在登陆到hostB前,需要在hostA上

运行xhost +,来使其它用户能够访问hostA的Xserver.

ssh & display的更多相关文章

  1. 如何将Python项目发布到PyPI

    The Python Package Index (PyPI) is a repository of software for the Python programming language. 如何打 ...

  2. 设备管理 USB ID

    发现个USB ID站点,对于做设备管理识别的小伙伴特别实用 http://www.linux-usb.org/usb.ids 附录: # # List of USB ID's # # Maintain ...

  3. ssh调用matplotlib绘图报错RuntimeError: Invalid DISPLAY variable

    1.问题:在本地用matplotlib绘图可以,但是在ssh远程绘图的时候会报错 RuntimeError: Invalid DISPLAY variable 2.原因:matplotlib的默认ba ...

  4. ssh -X前设置DISPLAY=localhost:0

    如果是在windows上用XMing做XServer,前面的localhost不能省,否则会被当作一个unix domain socket,而XMing没有实现这个功能,所以会出错 connect / ...

  5. SSH 常用命令解析

    SSH 是什么 SSH(全 称 Secure Shell)是一种加密的网络协议.使用该协议的数据将被加密,如果在传输中间数据泄漏,也可以确保没有人能读取出有用信息.要使用 SSH,目标机器应该安装 S ...

  6. SSH遇见的问题

    Gtk-WARNING **: cannot open display: 在从bitbucket仓库向linux服务器clone项目的时候出现了一个问题: ): Gtk-WARNING **: can ...

  7. SSH:Struts2.2+Hibernate3.6+Spring3.1分页示例[转]

    参考资料 1 ssh分页(多个例子) http://useryouyou.iteye.com/blog/593954 2 ssh2分页例子 http://459104018-qq-com.iteye. ...

  8. Linux课程实践一:Linux基础实践(SSH)

    一.SSH服务 1. 安装SSH (1)查看是否已经安装过ssh服务 rpm -qa |grep ssh (2)进行安装 sudo apt-get install openssh-server Ubu ...

  9. SSH的端口转发:本地转发Local Forward和远程转发Remote Forward

    关于使用ssh portforwarding来进行FQ的操作,网络上已经有很多很好的文章,我在这里只是画两个图解释一下. 首先要记住一件事情就是: SSH 端口转发自然需要 SSH 连接,而 SSH ...

随机推荐

  1. XCODE打包安装包步骤

    1. 2. 3. 4. 5. 6. 7. 导出之后就可以看到一个后缀为.ipa 的安装包.

  2. Github简明教程(转)

    原文地址 : http://wuyuans.com/2012/05/github-simple-tutorial/ github是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用 ...

  3. WebMethod属性详解

    WebMethod有6个属性:.Description.EnableSession.MessageName.TransactionOption.CacheDuration.BufferResponse ...

  4. [LeetCode]题解(python):090 Subsets II

    题目来源 https://leetcode.com/problems/subsets-ii/ Given a collection of integers that might contain dup ...

  5. 面向对象分析方法(I)

    找出最关键的一些业务场景:一般通过动词来寻找,比如招聘系统中,一个应聘人投递一个职位就是一次应聘,应聘就是一个业务场景:一个学生参加某门课的考试,那么考试就是一个业务场景:一个学生去图书馆借书,那么借 ...

  6. swift-03-构造器(Designated&&Convenience)

    类里面所有的存储型属性--包括所有继承自父类的属性,都必须在构造过程中设置初始值.   构造器,为了确保所有类实例中的存储型属性都能获得初始值,设置了两个构造器--他们分别是指定构造器和便利构造器. ...

  7. 3. 如何封装查询条件与查询结果到map中

    public Map<String, Object> queryOrderStatus(String orderNo) { // 查询到的结果与查询的条件一一对应,封装到map中! Str ...

  8. 转载:如何运用VI编辑器进行查找替换

    使用vi编辑器编辑长文件时,常常是头昏眼花,也找不到需要更改的内容. 这时,使用查找功能尤为重要. 方法如下: 1.命令模式下输入“/字符串”,例如“/Section 3”. 2.如果查找下一个,按“ ...

  9. http://blog.csdn.net/fw0124/article/details/48280083

    http://blog.csdn.net/fw0124/article/details/48280083

  10. C语言:十进制进制转换为其他进制(思想:查表法)

    // //  main.c //  Hex conversion // //  Created by ma c on 15/7/22. //  Copyright (c) 2015年 bjsxt. A ...