1.安装图形化界面
CENTOS 7:
CentOS 7 上的桌面环境安装包组合进行了调整,比以前要简单了。主要有两大阵营,KDE 和 GNOME。
因为没时间测试,只是预估着下面的指令应该能完成任务,请注意!
要安装 KDE 桌面环境(使用的是 Plasma 作为默认的桌面管理器了,很漂亮),
# yum groupinstall KDE Plasma Workspaces
要安装 GNOME 环境,
# yum groupinstall GNOME Desktop
安装程序会自动解决安装包和组件的依赖关系。
CENTOS 6
要安装 KDE 桌面环境,执行指令,
# yum groupinstall “X Window System” “KDE Desktop” Desktop
即可,同时安装了 3 个软件包。注意,因为 KDE Desktop 和 X Window System 两个软件包名称中间都包含空格,需要用引号引起来才行。
要安装 Gnome 桌面环境,执行指令,
# yum groupinstall “X Window System” “Desktop Platform” Desktop
即可,也是同时安装了 3 个软件包,其中 X Window System 是必须的,不管是 Gnome 还是 KDE。
既然是桌面环境,可能还需要诸如字体、管理工具之类的,如,
# yum -y groupinstall “Graphical Administration Tools”
# yum -y groupinstall “Internet Browser”
# yum -y groupinstall “General Purpose Desktop”
# yum -y groupinstall “Office Suite and Productivity”
# yum -y groupinstall “Graphics Creation Tools”
2.禁用防火墙,如果已经禁用防火墙可以跳过这一步:systemctl stop firewalld.service、systemctl disable firewalld.service
3.安装和配置VNC Server
# yum install tigervnc-server -y
# cp /lib/systemd/system/[email protected] /etc/systemd/system/
# cp /lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service
3.1 配置root远程桌面连接
# vi /etc/systemd/system/vncserver@:1.service
找到下面的关键行,根据自己的实际情况进行修改,主要修改用户名
...
[Service]
Type=forking
User=root #将<user>替换成root
......
ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i" #将<user>替换成root
PIDFile=/root/.vnc/%H%i.pid #将<user>替换成root
我修改后的内容:
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
User=root
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=-/usr/bin/vncserver -kill %i
ExecStart=/usr/bin/vncserver %i
PIDFile=/root/.vnc/%H%i.pid
ExecStop=-/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target
3.2运行命令systemctl daemon-reload更新systemctl;
3.3设置root连接的vnc连接密码
# vncpasswd
4.设置开机启动 & 启动和停止
# systemctl enable vncserver@:1.service
# systemctl enable vncserver@:2.service
start:
# systemctl start vncserver@:1.service
or
# systemctl start vncserver@:1
or
# vncserver :1
stop
# systemctl stop vncserver@:1.service
or
# systemctl stop vncserver@:1
or
# vncserver -kill :1
查看状态:
# systemctl status vncserver@:1
# vncserver -list //显示所有终端编号和进程ID
# ps aux |grep vnc //可查看所有终端的详细信息,包括终端编号、进程ID、服务端口号等
5.防火墙添加相关规则(如果前面已经禁用防火墙,这步可以省略)
# firewall-cmd --permanent --add-service vnc-server
# firewall-cmd --reload
6.重启服务器
# reboot
7.使用vnc客户端连接服务器
使用vnc viewer客户端工具进行连接
VNC Server输入:ip:1 #root连接远程桌面
VNC Server输入:ip:2 #oracle连接远程桌面,如果非root用户远程连接后,还会提示Administrator进行授权验证,输入root的密码就可以了。
进行connect连接
再输入密码即可
VNC的默认监听端口为5900,监听端口规则为590+vnc用户端口数字,例如:5901,5902。
附:
vnc server的分辨率的调整方法:
方法1:命令行调整参数,然后在进行客户端连接
# man vncserver
......
-geometry widthxheight
Specify the size of the desktop to be created. Default is 1024x768.
......
如果不调整,默认为是1024x768
# vncserver -geometry 800x600
方法2:修改Server配置文件vncservers
# vim /etc/sysconfig/vncservers
增加内容:
VNCSERVERS="1:root 2:oracle"
VNCSERVERARGS[1]="-geometry 1024x768"
VNCSERVERARGS[2]="-geometry 1024x768"
方法1:影响范围小,因为该方法是通过单独启动vnc进程来提供服务的。
方法2:通过调整VNC默认分辨率实现,但可能存在因分辨率调整过高导致客户端无法使用的问题。
可能遇到的问题:
如果遇到失败,如何查看日志:grep vnc /var/log/messages
vnc连接不显示桌面,可能是因为上一次vnc操作中注销了桌面导致的:
cd
vncserver -kill :1
rm -f .vnc/*
vncserver
重新配置设置登录密码
链接黑屏,可能是因为xstartup的权限问题:
chmod 777 /root/.vnc/xstartup
如果链接后只显示X和Firefox浏览器页面,而不显示桌面,可能是因为系统启动时没有成功启动图形化界面:
startx
我的是虚拟机终端链接的,后面登录虚拟机控制台,发现虚拟机没有成功改启动到图形化界面,通过startx启动。