Linux系统在服务器上一般都直接最小化安装,是不安装图形界面的,但是有时候,有一些特殊情况,需要使用图形界面,而下面就利用VNC来实现类似windows的远程桌面功能。 首先,系统需要有图形界面,可以在安装系统的时候一起安装gnome,或者后面再安装也行,下面有安装方法。
**环境: **
- Centos7.2
- gnome桌面
GNOME 桌面
# 列出的组列表里有GNOME Desktop。安装之
yum grouplist
yum groupinstall -y "GNOME Desktop"
# 安装完成后,修改默认启动方式为图形化界面
systemctl set-default graphical.target //设置成图形模式
# 如果要换回来
systemctl set-default multi-user.target //设置成命令模式
#然后重启即可,或者startx开启图形界面。
报错信息:
Transaction check error:
file /boot/efi/EFI/centos from install of fwupdate-efi-12-5.el7.centos.x86_64 conflicts with file from package grub2-common-1:2.02-0.65.el7.centos.2.noarch
Error Summary
-------------
解决方法:
该问题是由于文件fwupdate-efi 同grub2-common冲突所致,这里需要将该包通过yum update grub2-common命令进行更新。
[root@ops ~]# yum update grub2-common
vnc server
1. 安装vnc server
yum install tigervnc-server -y
2. 设置为服务
#复制一个服务设置的模板
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
#修改此服务配置
#以下为root用户的配置,每一个用户,都需要单独设置一个监听服务。且配置不同
vim /etc/systemd/system/vncserver@:1.service
##-----------------------------------------------------------------------------------------------------
[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=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
#对于普通用户,加入用户名为:dev
#下面举例进行设置: 首先一样复制一个server配置。改名为vncserver@:2.service
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:2.service
#然后进行修改
vim /etc/systemd/system/vncserver@:2.service
##----------------------------------------------------------------------------------------------------
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l dev -c "/usr/bin/vncserver %i"
PIDFile=/home/dev/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
3. 设置vnc密码 vnc的密码跟系统的用户密码不一样,是使用vnc viewer登陆时需要使用的密码。
[root@localhost ~]# vncpasswd
Password:
Verify:
Would you like to enter a view-only password (y/n)? n # 这里不添加只读账号密码
A view-only password is not used
每个不用的系统用户,设置密码时,需要切换到该用户下,执行此命令 #如: 切换到Amos用户 < dev@localhost:~ ># su dev
再执行上vncpasswd设置密码 < dev@localhost:~ >$ vncpasswd
4. 启动服务,开通端口
systemctl start vncserver@:1
systemctl start vncserver@:2
systemctl enable vncserver@:1 # 设为开机启动
systemctl enable vncserver@:2
#查看服务监听的端口
netstat -lnpt|grep Xvnc
#根据监听的端口,进行端口开放,每个用户会对应一个端口,第一个用户默认为5901端口,第二个用户默认为5902端口。
firewall-cmd --add-port=5901/tcp --permanent
firewall-cmd --add-port=5902/tcp --permanent
firewall-cmd --reload
#停止并禁用防火墙;
systemctl stop firewalld.service
systemctl disable firewalld.service
5. VNC服务到此已经安装完成了。
vnc客户端连接
vnc官网下载vnc viewer,用于连接vnc server 。
官方下载地址:https://www.realvnc.com/en/connect/download/viewer/
vnc viewer 配置:
ok,到此即可正常的进行远程桌面连接了。