背景
银河麒麟V10服务器在机柜中没有显示器,但是每次开机需要进系统进行一些操作。所以要通过客户端设备使用远程桌面工具连接服务器进桌面操作。远程桌面一般使用vnc,vnc客户端软件有很多,基本都能适用,我们这里作为服务端就要装vncserver,我这里安装tigervnc,因为是离线环境所以要下载离线安装包。离线安装包安装时不能自动下载依赖,所以对应需要的依赖安装包也要下载。
准备
安装包 |
---|
gnutls-3.3.29-9.el7_6.aarch64.rpm |
nettle-2.7.1-9.el7_9.aarch64.rpm |
tigervnc-license-1.8.0-25.el7_9.noarch.rpm |
tigervnc-server-1.8.0-25.el7_9.aarch64.rpm |
tigervnc-server-minimal-1.8.0-25.el7_9.aarch64.rpm |
这里不能放百度网盘的连接,需要安装包的可以留言。
以下操作会用到的命令:
- 安装rpm包:rpm -ivh xxx.rpm
- 查看rpm安装信息:rpm -qa|grep xxx
- 卸载rpm安装包:rpm -e --nodeps xxx
安装
- 下列软件安装时,是一台主机的环境,不同主机可能会出现有的软件包已经安装了,如果版本不同请卸载掉重新安装此版本,否则使用时会有错误。比如笔者在另一台主机中安装是,看到已经有tigervnc-server-minimal-1.10,所以就没有装这个1.8,后面的软件包都能正常安装,但是使用时提示缺少xxx库。
安装tigervnc-server-1.8.0-25.el7_9.aarch64.rpm,提示需要tigervnc-server-minimal依赖
安装tigervnc-server-minimal-1.8.0-25.el7_9.aarch64.rpm,提示需要tigervnc-license依赖
安装tigervnc-license-1.8.0-25.el7_9.noarch.rpm,提示需要gnutls依赖
安装gnutls-3.3.29-9.el7_6.aarch64.rpm,提示需要nettle依赖
安装nettle-2.7.1-9.el7_9.aarch64.rpm,提示已有nettle的版本比此安装版本新,所以不让安装,但是我们又需要gnutls-3.3.29-9.el7_6.aarch64.rpm这个版本的,所以需要卸载主机中比这个版本高的nettle,再装这个版本的软件。
安装nettle-2.7.1-9.el7_9.aarch64.rpm,成功
安装gnutls-3.3.29-9.el7_6.aarch64.rpm,提示已有gnutls的版本比此安装版本新,所以不让安装,同上文中nettle的安装,将主机中的gnutls卸载掉,再重新安装。
安装gnutls-3.3.29-9.el7_6.aarch64.rpm,成功
安装tigervnc-license-1.8.0-25.el7_9.noarch.rpm,成功
安装tigervnc-server-minimal-1.8.0-25.el7_9.aarch64.rpm,成功
安装tigervnc-server-1.8.0-25.el7_9.aarch64.rpm,成功
使用
执行命令whereis vncserver,查看主机中vncserver的信息,应该有vncserver: /usr/bin/vncserver /usr/share/man/man1/vncserver.1.gz显示,表示安装成功。
执行vncserver
提示输入密码:Root1234
提示确认密码:Root1234
最后有个提示是否再次输入密码,好像是控制桌面的密码,这是vnc的一个机制,选yes,再次确认密码,我都输入的是Root1234
执行vncserver,显示
New 'localhost.localdomain:1 (root)' desktop is localhost.localdomain:1
Creating default startup script /root/.vnc/xstartup
Creating default config /root/.vnc/config
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/localhost.localdomain:1.log
表示vncserver启动成功,可以用外部vnc客户端软件进行连接,默认端口是5090,这里好像要用5091
问题
按照上述步骤安装完成后,客户端可以使用vnc连接到桌面,但是服务器每次都要进入系统执行vncserver命令,启动vnc服务才行,但实际上我们服务器开机后是没有桌面的不能进去启动服务。因此准备将vnc设置为开机启动,一般有2种方式,设置为服务开机启动,开机执行脚本启动
设置为服务开机启动后,麒麟系统就挂了,虽然能进系统,但是网卡和控制面板等操作都不能用了,没有办法修改,只能重装系统。
添加开机启动的脚本不执行,其它脚本都正常运行,但是启动vncserver的脚本就不执行
以上问题还不知道原因,也没有解决方案。