Centos 7 安裝VNC步驟
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow
也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!
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/[email protected]
或者再增加一個視窗:
cp /lib/systemd/system/[email protected] /lib/systemd/system/[email protected]:2.service
編輯vi/etc/systemd/system/[email protected]:1.service,設定使用者root相關引數(將文中的“<USER>”替換為你係統的使用者名稱,這裡我填寫的是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 |
[email protected]:1.service - Remote desktop service (VNC) Loaded: loaded (/usr/lib/systemd/system/[email protected]: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]: [email protected]: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 [email protected]: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 [email protected]:1.service 或者 vncserver :1
關閉1號視窗:
systemctl stop [email protected]:1.service 或者 vncserver -kill :1
4. 設定為開機自動啟動;
systemctl enable [email protected]: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
5、