linux学习之VNC远程控制(一)

最近一直在学习linux的有关知识,因为以前我所有的操作及应用全部在windows下进行的,考虑到以后的个人发展及其他的方面需要,从现在开始要慢慢的学习和接触linux系统了。

我现在使用的红帽的企业版RHEL 5,也有一部分是在RHEL 6上进行实验的。

下面我就开始linux的正式学习了,首先是进行关于远程控制的配置。

实验环境:

服务器端:RHEL 5

客户端:windows

远程登录使用软件:TightVnc(此次实验不进行HTTP登录)

PS:也许你在网上看到很多有关这方面的文章,但是我可以保证他们的都没有这么全面,也没有这么傻瓜式的入门。

在配置远程控制之前,肯定要安装好RHEL的安装,所以此实验是在系统安装好之后进行的。

一、 首先使用rpm -qa|grep vnc命令检查VNC服务是否安装

现在可以看到,VNC服务已经安装了。

但是VNC服务是否已经启动呢?我们可以通过这个命令查看:

Service vncserver status

我们现在可以看出,尽管VNC服务已经安装,但是VNC服务是没有启动的。那么我们如何启动该服务呢?

在启动VNC服务之前,我们还有一些工作要做。

第一、要配置VNC,该配置文件名是vncservers,位于“/etc/sysconfig/”下,我们可以同vi来对此文件进行编辑。

[root@localhost ~]# cat /etc/sysconfig/vncservers

# The VNCSERVERS variable is a list of display:user pairs.

#

# Uncomment the lines below to start a VNC server on display :2

# as my ‘myusername’ (adjust this to your own). You will also

# need to set a VNC password; run ‘man vncpasswd’ to see how

# to do that.

#

# DO NOT RUN THIS SERVICE if your local area network is

# untrusted! For a secure way of using VNC, see

# <URL:http://www.uk.research.att.com/archive/vnc/sshvnc.html>.

# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.

# Use "-nohttpd" to prevent web-based VNC clients connecting.

# Use "-localhost" to prevent remote VNC clients connecting except when

# doing so through a secure tunnel. See the "-via" option in the

# `man vncviewer’ manual page.

#VNCSERVERS="2: myusername"

#VNCSERVERARGS[2]="-geometry 800×600 -nolisten tcp -nohttpd -localhost"

以上是vcnservers文件的内容,请注意我标注出来的两行。我们的配置主要是针对这两行进行的。而修改此配置文件的目的:

一、确定能进行远程登录的用户,及第一次远程登录系统的显示桌面号

二、确定用户远程登录成功后,配置用户登录后的桌面及其他相关项(这个我会下一篇做详细的介绍)

我们现在要做的就是要把这两行的注释去掉,同时还要增加相应的项,修改后的结果如下:

VNCSERVERS="1: root 2:lanni 3:jinyang"

VNCSERVERARGS[2]="-geometry 800×600 -nolisten tcp -nohttpd -localhost"

说明:其中VNCSERVERS="1: root 2:lanni 3:jinyang"

中1:root,表示root用户在第一次远程登录时,使用的桌面号为1,以此类推,用户lanni使用的是2,用户jinyang使用的是3

而VNCSERVERARGS[2]="-geometry 800×600 -nolisten tcp -nohttpd -localhost",是用户登录后对桌面进行配置的相关参数

第二、Vncservers文件配置完成后,下面我们就要进行防火墙的相关设置了。首先我们先看看防火墙是否已经开启。

在此我要做一点说明,因为远程控制牵涉到防火墙的问题,所以我在系统安装时就已经把防火墙禁用了。

第三、对远程登录的用户进行VNC密码的设置。我们现已系统管理员root用户为例。

使用vncserver命令,进行密码设置。系统会提示你,要输入两次密码进行确认。

现在我们在切换到普通户用,需要使用的命令是:su 用户名

设置普通用户的VNC登录密码

以上全部设置正确无误后,我们就可以正常启动VNC服务了。启动该服务需要使用到如下的命令:service vncserver start

为了让vnc开机启动,我们可以使用如下的命令:

chkconfig vncserver on或者是 chkconfig ––level 35 vncserver on

执行该命令之后,我们看看vnc是不是真的已经启动了。使用如下命令进行查看:service vncserver status

好了,现在可以看到服务器端的VNC基本上都已经配置好了。那么下面就应该在客户端进行登录了。

在客户端登陆之前还有几点是我们需要注意的,在文章的开头我已经说了,此次实验不进行HTTP登录,所以我们不考虑HTTP的环境。那么在客户端进行登录时,登录的方式是:IP地址:桌面号。

下面我就开始启动vncserver view,看看登录效果。我使用的使用TightVnc汉化版(如有需要见附件)的viewer:

在VNC主机出输入远程登录的主机IP地址及用户分配的桌面号,然后输入该桌面号对应用户的VNC登录密码。我现在还是已系统管理员root用户为例:

可以很清楚的看到,root现在已经远程登录上我们的服务器,同时我们也发现。尽管已经登陆成功了,但是我们只能输入相应的命令来进行相关的操作。

那有没有登录成功后,是图形界面的呢?

答案是肯定,有的,只不过我们还需要进行相关的设置罢了。无论是系统管理员,还是普通用户我们只要修改这个文件xstartup就行了。

而该文件对于root用户是存在于boot路径下的“.vnc/xstartup”,而对于普通用户是存在home路径(这是相对于root来修改来说)下,如果不是root用户修改那么普通用户可以直接在命令行就行修改。

同时还要说明一点,由于文件夹“.vnc”的属性为隐藏,所以使用“ls”命令是无法查看到的。但是我们可以打开该文件夹,如下图:

Xstartup文件内容如下:

#!/bin/sh

# Uncomment the following two lines for normal desktop:

# unset SESSION_MANAGER

# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup

[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources

xsetroot -solid grey

vncconfig -iconic &

xterm -geometry 80×24+10+10 -ls -title "$VNCDESKTOP Desktop" &

twm &

呵呵,我们现在要做的就是把以下这段给注释掉:

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup

[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources

xsetroot -solid grey

vncconfig -iconic &

xterm -geometry 80×24+10+10 -ls -title "$VNCDESKTOP Desktop" &

twm &

然后再添加一行“gnome-session &”,最后此文件内容如下:

#!/bin/sh

# Uncomment the following two lines for normal desktop:

# unset SESSION_MANAGER

# exec /etc/X11/xinit/xinitrc

#[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup

#[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources

#xsetroot -solid grey

#vncconfig -iconic &

#xterm -geometry 80×24+10+10 -ls -title "$VNCDESKTOP Desktop" &

#twm &

gnome-session &

~

这些做好后,重启服务器即可。

完成配置文件修改后,在服务器上使用如下命令关闭桌面号,并重新期待能够桌面号:

vncserver –kill :1 (注意有空格)

Killing Xvnc process ID 5862

时间: 2024-08-02 20:05:00

linux学习之VNC远程控制(一)的相关文章

linux学习之VNC远程控制(二)

上一篇文章我们成功配置远程登录的相关文件,那么这一篇文章我们再一次把眼光聚焦到VNC的配置文件vncservers身上. 我们再次查看vncservers的内容,其内容如下: [root@localhost ~]# cat /etc/sysconfig/vncservers # The VNCSERVERS variable is a list of display:user pairs. # # Uncomment the lines below to start a VNC server o

《树莓派开发实战(第2版)》——2.8 利用VNC远程控制树莓派

2.8 利用VNC远程控制树莓派 面临问题 你需要通过VNC从Mac OS X或个人电脑(Windows或Linux)远程访问树莓派完整的Raspbian图形桌面. 解决方案 安装VNC(Virtual Network Connection,VNC)服务器. 在树莓派上打开终端会话(或SSH会话),然后运行下列命令. $ sudo apt-get update $ sudo apt-get install tightvncserver``` 安装好VNC服务器之后,请使用下列命令来运行它. $

phpmyadmin: linux学习篇-使用apt-get方式安装LAMP包括phpmyadmin

linux学习篇-使用apt-get方式安装LAMP包括phpmyadmin    对于想学linux的朋友来说,在虚拟机上装上linux系统是不二选择.至于哪种linux好用,萝卜白菜,各有所爱.我喜欢ubuntu,虚拟机上安装的是最新的ubuntu11.10    搭建LAMP环境有两种方式可以选择,一是用apt-get方式安装,这个适合初学者.有点是安装简单,不需要做什么配置就可以使用.缺点是自主性太差,安装目录啊啥的都是默认的,不方便自己管理,也不敢轻易的移动位置.二是用编译安装的方法.

linux中配置vnc遇到的问题

问题描述 linux中配置vnc遇到的问题 把 -nolisten tcp也是一样的结果,请问该怎么修改? 解决方案 显示器设置不对,所以vnc无法启动 解决方案二: 把 vncservers 里面 后加的两个#号去掉.

关于用pagekite实现linux内网渗透远程控制电脑的疑问

问题描述 关于用pagekite实现linux内网渗透远程控制电脑的疑问 本人纯菜,基本不动linux,有一台别人不用的linux机子,在家做下载机,想在办公室远程控制,但是家里无法获得公网ip,于是网上查说是可以做内网穿透什么的,可以用花生壳或ngrok,后来看了看还是最后发现还是ngrok的方法靠谱,但是无奈被墙,于是又发现了一个类似ngrok的pagekite.http://pagekite.net/ 上面介绍说可以.(每个月2G流量而且网速挺快感觉比花生壳要好,省了花生棒的钱)于是这样做

linux c-小白刚开始在linux学习c语言编程。有问题不会请各位大神指导下

问题描述 小白刚开始在linux学习c语言编程.有问题不会请各位大神指导下 6行和7行中的main有什么作用 解决方案 Programme file name! if programme file name is "test", gcc -o test .... 解决方案二: i wait to reply for your question 解决方案三: 这是Makefile的编写,main.o是main.c生成的中间文件,第七行的main表示最终生成的目标文件,他依赖于objs内的

Linux学习之CentOS(二十九)--Linux网卡高级命令、IP别名及多网卡绑定的方法_Linux

本篇随笔将详细讲解Linux系统的网卡高级命令.IP别名以及Linux下多网卡绑定的知识 一.网卡高级命令 在之前的一篇随笔里Linux学习之CentOS(九)--Linux系统的网络环境配置,详细讲解了Linux系统下的网络环境配置等知识,我们了解了一些关于网络配置的一些基本命令.在这里将补充一些Linux系统下有关网卡的一些高级命令. ①mii-tool 命令 mii-tool命令我们可以用来查看网卡状态信息,包括了以太网连接是否正常,使用的是哪种型号的网卡等等 [root@xiaoluo

菜鸟提问-Linux学习方向问题,大神求教啊

问题描述 Linux学习方向问题,大神求教啊 本人现在是大二的学生,电子专业,想学嵌入式,可是找的都好乱啊,求教大神,该怎么走啊,一步步学哪些啊,暂时不想分软硬件的

Linux学习资料下载(电子书籍)_unix linux

Linux基本教程(共二个附件,全下载完) 第一个下载地址:ftp://FTP_hllinux:123456@211.95.73.26/suse/linux123.rar(一时无法下载请稍候再下载) 第二个下载地址:ftp://FTP_hllinux:123456@211.95.73.26/suse/linuxshell.rar(一时无法下载请稍候再下载) Linux教程推荐: Linux系统管理员指南 展示了Linux核心概念及其基本结构.下载地址:ftp://FTP_hllinux:1234