CentOS

  1. CentOS 7安装TigerVNC Server 本文介绍如何在CentOS 7上安装VNC Server,以便远程访问。本文参照了DigitalOcean的教程,加入了一些安装经验。
  2. 安装TigerVNC Server 建议使用非root用户安装,-y代表直接安装

sudo yum install -y tigervnc-server

  1. 配置VNC Service 以下方法是新方法,以前是要配置/etc/sysconfig/vncservers,现在第一步是将默认提供的文件复制到/etc/systemd/system,命令如下

sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service

接下来修改该配置文件

sudo vim /etc/systemd/system/vncserver@:1.service

将其中替换为你想要的用户名,我这里是oracle,添加设置分辨率的参数-geometry 1280x720,所有内容如下

The vncserver service unit file

Quick HowTo:

1. Copy this file to /etc/systemd/system/vncserver@:.service

2. Edit and vncserver parameters appropriately

(“runuser -l -c /usr/bin/vncserver %i -arg1 -arg2”)

3. Run systemctl daemon-reload

4. Run systemctl enable vncserver@:.service

. . .

[Unit] Description=Remote desktop service (VNC) After=syslog.target network.target

[Service] Type=forking User=oracle

Clean any existing files in /tmp/.X11-unix environment

ExecStartPre=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’ ExecStart=/sbin/runuser -l oracle -c “/usr/bin/vncserver %i -geometry 1280x720” PIDFile=/home/oracle/.vnc/%H%i.pid ExecStop=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :’

[Install] WantedBy=multi-user.target

保存文件并退出vim,重新加载配置

sudo systemctl daemon-reload

也可以设置成开机启动

sudo systemctl enable vncserver@:1.service

  1. 修改防火墙 首先判断firewalld是否启动,输入以下命令判断

sudo firewall-cmd --state

如果启动应该输出

running

如果是not running,执行下面命令

sudo systemctl start firewalld

添加端口号5901-5905

sudo firewall-cmd --permanent --zone=public --add-port=5901-5905/tcp

重新加载防火墙

sudo firewall-cmd --reload

可以使用下面命令查看端口号是否被加入

firewall-cmd --list-all-zones

  1. 设置VNC密码 通过ssh,用oracle用户名登录到服务器,执行下面命令,这里相当于配置密码并启动一个vnc-server实例,用需要连接vnc的用户登录来设置密码

vncserver 复制代码 vncserver 用法: vncserver -h

usage: vncserver [:] [-name ] [-depth ] [-geometry x] [-pixelformat rgbNNN|bgrNNN] [-fp ] [-cc ] [-fg] [-autokill] [-noxstartup] [-xstartup ] …

   vncserver -kill 

   vncserver -list

复制代码

终端会提示你输入密码,如下

You will require a password to access your desktops. Password: Verify: xauth: file /home/oracle/.Xauthority does not exist

New ‘localhost.localdomain:1 (oracle)’ desktop is localhost.localdomain:1

Creating default startup script /home/oracle/.vnc/xstartup Starting applications specified in /home/oracle/.vnc/xstartup Log file is /home/oracle/.vnc/localhost.localdomain:1.log

如果想修改密码,可以使用vncpasswd。现在已经有一个vnc服务在运行了,但我们需要使用刚刚配置的服务来启动,所以我们需要先杀死刚刚的vnc服务,使用下面命令。

vncserver -kill :1

接下来,重启我们配置的服务

sudo systemctl daemon-reload sudo systemctl restart vncserver@:1.service

使用下面命令查看该服务是否正确运行

sudo systemctl status vncserver@:1.service -l 如果正确启动,输出应为

● vncserver@:2.service - Remote desktop service (VNC) Loaded: loaded (/etc/systemd/system/vncserver@:2.service; enabled; vendor preset: disabled) Active: active (running) since 日 2017-07-23 21:55:35 CST; 12h ago Process: 8720 ExecStart=/usr/sbin/runuser -l oracle -c /usr/bin/vncserver %i -geometry 1280x720 (code=exited, status=0/SUCCESS) Process: 8716 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS) Main PID: 8744 (Xvnc) CGroup: /system.slice/system-vncserver.slice/vncserver@:2.service ‣ 8744 /usr/bin/Xvnc :2 -desktop 127.0.0.1:2 (oracle) -auth /home/oracle/.Xauthority -geometry 1280x720 -rfbwait 30000 -rfbauth /home/oracle/.vnc/passwd -rfbport 5902 -fp catalogue:/etc/X11/fontpath.d -pn

7月 23 21:55:32 127.0.0.1 systemd[1]: Starting Remote desktop service (VNC)… 7月 23 21:55:35 127.0.0.1 systemd[1]: Started Remote desktop service (VNC).

如果想配置多用户同时访问,需要将上面vncserver@:1.service,改为vncserver@:2.service,然后配置其中用户名、分辨率参数,再按我的步骤走一遍就可以了

生产的配置编号,由下面两个文件锁定编号,要改变l默认vncserver 生产的编号,可删除相应的文件和用户家目录.vnc/下的文件:

/tmp/.X1-lock

/tmp/.X11-unix/X1

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • CentOS 5至CentOS 5.8 YUM 源

    本源是http://mirrors.163.com的,也可用http://centos.ustc.edu.cn/的,

    三杯水Plus
  • CentOS 7 与 CentOS 6的不同

    CentOS 7 vs CentOS 6的不同 (1)桌面系统 [CentOS6] GNOME 2.x [CentOS7] GNOME 3.x(GNOME...

    Albert陈凯
  • centos mp3

    If you get an error message like the following the key has already been imported...

    py3study
  • CentOS + Python3.6+

    用的系统是CentOS 6.4,其上python版本是2.6,而Django支持的版本是2.7+,又考虑到网页语言用UTF-8,而python3+默认字符已变为...

    py3study
  • CentOS + Jenkins

    (adsbygoogle = window.adsbygoogle || []).push({});

    拓荒者
  • 如何将CentOS 7升级到CentOS 8

    在本文中,您将学习如何将CentOS 7升级到CentOS8。本文介绍的步骤并不是官方的升级方法,因此请不要用此方法应用到生产服务器上。

    用户8705041
  • 【CentOS环境部署】CentOS下部署Java7/Java8

    KenTalk
  • CentOS的tree

    在windows和linux中都有tree命令,这里我们介绍一些CentOS 7中的tree命令。

    孔贼
  • centos opencv + python

    py3study
  • Centos 7.5 python3.6

    Django 中提供了开发网站经常用到的模块,常见的代码都为你写好了,通过减少重复的代码,Django 使你能够专注于 web 应用上有 趣的关键性的东西。为了...

    py3study
  • CentOS 8 (二)

    将光标移动 linux 开始的行,添加内核参数 rd.break ,按 ctrl-x 启动进入救援模式

    Kevin song
  • CentOS 8 (一)

    在 RHEL 7 发布时隔五年后Red Hat Enterprise Linux 8 正式发布,不得不感慨五年前搬砖的我五年后依旧不忘初心继续搬砖。。。

    Kevin song
  • 如何在 CentOS 7 上安装 CentOS Web Panel

    CentOS Web Panel, 或者 CWP,是一款强大的,开源的网站控制面板,它专为 CentOS, RHEL, 和 CloudLinux 设计。在 CW...

    雪梦科技
  • CentOS 6和CentOS 7防火墙的关闭

    庞小明
  • Docker 安装 CentOS

    CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterpr...

    子润先生
  • CentOS Docker 安装

    CentOS 7 (64-bit) CentOS 6.5 (64-bit) 或更高的版本

    Java帮帮
  • 什么是centos?

    CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一,它是来自于Red ...

    小小科
  • CentOS 安装 PHP

    1.获取PHP安装文件: downloads  或直接下载 php-5.5.9.tar.gz

    阳光岛主
  • 再见!CentOS 6

    CentOS 6已经随着2020年11月的结束进入了EOL(Reaches End of Life)。所以在2020年12月2日,CentOS官方停止了对Cen...

    民工哥

扫码关注云+社区

领取腾讯云代金券