香港云服务器Centos7 安装VNC步骤
一.安装
1. 以root用户运行以下命令来安装vncserver;
yum install tigervnc-server
2. 同样运行以下命令来安装vncviewer;
yum install vnc
3. 停止并禁用防火墙;
systemctl stop firewalld.service
systemctl disable firewalld.service
二.配置
1. vncviewer基本上不用配置;
2. vncserver的配置,创建一个新的配置文件,以开启1号窗口为例(也可以同时开启多个窗口,修改数字即可),方法如下:
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
或者再增加一个窗口:
cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:2.service
编辑vi/etc/systemd/system/vncserver@:1.service,设置用户root相关参数(将文中的“”替换为你系统的用户名,这里我填写的是root,你可以填写成你的系统登录名),最终内容如下:
1
2
3
4
5
6
7
8
9
10
[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=/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 || :'
· 上述内容中最好设置为root用户,否则可能会看到以下报错:
1
2
3
4
5
6
7
8
9
10
11
vncserver@:1.service - Remote desktop service (VNC)
Loaded: loaded (/usr/lib/systemd/system/vncserver@:1.service; enabled)
Active: failed (Result: exit-code) since Tue 2015-04-14 10:09:24 CST; 1min 36s ago
Process: 3258 ExecStart=/sbin/runuser -l sysadmin -c /usr/bin/vncserver %i (code=exited, status=1/FAILURE)
Process: 3254 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]: Starting Remote desktop service (VNC)...
Apr 14 10:09:24 F1A-VMHOST-SWPE runuser[3258]: Password:
Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]: vncserver@:1.service: control process exited, code=exited status=1
Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]: Failed to start Remote desktop service (VNC).
Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]: Unit vncserver@:1.service entered failed state.
Warning: Unit file changed on disk, 'systemctl daemon-reload' recommended.
三.应用
1. 更新systemctl以使其生效;
systemctl daemon-reload
2. 设置vncserver的密码;
vncpasswd root
按提示输入密码以及确认密码
3. 启动该服务用来启用vnc的1号窗口;
systemctl start vncserver@:1.service 或者 vncserver :1
关闭1号窗口:
systemctl stop vncserver@:1.service 或者 vncserver -kill :1
4. 设置为开机自动启动;
systemctl enable vncserver@:1.service
End.
问题处理:
1、 如果远程使用ssh可以正常登录,而在本机登录时提示“module is unknow”,则使用在远程使用“tail -n 100 /var/log/secure”查看错误,我当时是发现以下错误:
PAM unable todlopen(/lib/security/pam_limits.so): /lib/security/pam_limits.so: cannot openshared object file: No such file or directory
也就是找不到pam_limits.so,看了一下对应目录下也确实没有对应文件,经搜索确认,64位操作系统的对应位置是“/lib64/security/”,这样就可以修改登录文件了。
修改vi/etc/pam.d/login
注释掉其中的:
session required/lib/security/pam_limits.so
改为
session required/lib64/security/pam_limits.so
然后再在主机上试着登录就可以解决了,此时登录后就可以输入startx进入图形界面了,此时VNC客户端登录时显示的“Oh no! Something has gone wrong”也不会再出现了。
2、 显示“Oh no!Something has gone wrong”
如果出现提示“Oh no!Something has gone wrong”,则接CTRL+ALT+F2进入命令行模式
如果用命令行登录提示“moduleis unknow”,则使用以下指令查看日志:
tail -n 100 /var/log/secure
在日志中找到这个错误。
PAM unable todlopen(/lib/security/pam_limits.so): /lib/security/pam_limits.so: cannot openshared object file: No such file or directory
于是在进入/lib/security/下面看下到底文件在不在。果然没有。
oracle中配置过pam_limits.so
vi /etc/pam.d/login
session required /lib/security/pam_limits.so
pam_limits.so这个文件系统本省应该有的,会不会是linux版本不一样路径也不一样呢,
网上搜了下,64位系统是在/lib64/security/下面
修改vi /etc/pam.d/login
session required /lib64/security/pam_limits.so
重启系统
终于进去了,问题解决。
3、 查看端口号
查看端口状态:netstat -lnt |grep 590*
4、 查看端口由那个程序占用
lsof -i:5905
购买使用一诺网络香港服务器,可以极大降低初创企业、中小企业以及个人开发者等用户群体的整体IT使用成本,无需亲自搭建基础设施、简化了运维和管理的日常工作量,使用户能够更专注于自身的业务发展和创新。香港服务器低至29元/月,购买链接:https://www.enuoidc.com/vps.html?typeid=2