Centos

如何在 Oracle Linux 中通過 VNC 顯示登錄螢幕?

  • July 11, 2019

基本上我正在尋找的是類似於 Windows 上的 RDP 的功能。我應該可以通過 VNC Viewer 查看登錄螢幕。即使伺服器重新啟動,我仍然應該能夠通過 VNC Viewer 訪問它。目前必須有人先通過OVM(這些都是VM)獲取控制台,登錄,然後才能通過VNC Viewer進行遠端。

我知道這個問題以前在這裡被問過$$ ref1 $$ $$ ref2 $$也在這裡,但到目前為止,我的嘗試都沒有成功。誰能提供有關如何實現這一目標的詳細指南?

  • 作業系統:甲骨文 Linux 5
  • VNC rpm:vnc-server-4.1.2-14.el5_6.6

更新 1 - 使用者級別的 VNC

好的,所以我遵循了此處列出的所有內容

  • 使用 root 通過 PuTTY 登錄到伺服器(因為這是我需要用於通過 VNC 登錄的帳戶)。
  • 執行 vncpasswd 並設置 VNC 登錄密碼。
  • 更改以下參數後將

腳本保存 為:/etc/init.d/vncserver

  • 使用者=“根”
  • 顯示=“1”
  • 沒有chmod +x /etc/init.d/vncserver
  • 沒有chkconfig --level 2345 vncserver on
  • 做了vi /root/.vnc/xstartup並取消註釋這些行:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc

並將最後一行從更改twm &startx &(因為我使用的是 GNOME)。

  • 重新啟動了伺服器。

現在我可以通過 VNC Viewer 成功遠端訪問伺服器。即使伺服器重新啟動,這也有效。但是,它繞過了鎖屏,不提示輸入密碼。為此,我必須通過System > Preferences > Remote Desktop設置密碼。

**重要提示:**正如下面描述的@slm,此方法在使用者級別提供 VNC 訪問。這意味著您可以創建多個使用者並分別為他們提供 VNC 訪問權限。每個使用者都將擁有一個獨特的桌面。不過,這並不是我想要的!

更新 2 - 系統級別的 VNC,如 Windows 上的 RDP

在實施@slm 的解決方案後,我意識到這是我在問這個問題時真正想到的。我完全按照他說的去做。簡單多了!我想補充幾點:

  • 我不需要安裝 x11vnc。我只使用了預設安裝的 vnc rpm。

  • /etc/X11/xorg.conf文件失去。為了創建它,我做了以下事情:( 來源)

    • 作為根執行:Xorg :1 -configure. 這將創建文件 /root/xorg.conf.new
    • cp /root/xorg.conf.new /etc/X11/xorg.conf

我按照其餘的說明進行操作。重新啟動 gdm 和瞧!有效!我能夠通過 VNC Viewer 看到登錄螢幕,就像 Windows 上的 RDP。即使在伺服器重新啟動後它也能正常工作。偉大的!

要添加到@Timo 的答案,聽起來好像有 3 種方法可以設置 VNC 訪問。

  1. 在使用者級別(這就是您現在正在使用的)
  2. 在系統層面
  3. 在主機級別(在虛擬機內部執行時) - 這是 Timo 的建議

注意:本教程展示瞭如何做#1,它的標題是:如何在 CentOS 6 上安裝 VNC 伺服器

如果您暫時認為**#3實際上只是#1#2**的另一種形式,具體取決於您提供對桌面的訪問權限的位置。在使用者級別 ( #1 ) 或系統級別 ( #2 )。

所以我認為你想要的實際上是**#2**。為了使這種類型的設置正常工作,我知道基本上有兩種方法。

x11vnc

您可以安裝該軟體包x11vnc,然後使用它來訪問遠端系統上的目前 X11 會話。它通常在大多數基於 Red Hat 的發行版儲存庫中,因此我不會介紹安裝,但是一旦安裝,您就會ssh進入要訪問控制台顯示 (:0.0) 的系統,並像這樣手動執行它:

$ x11vnc -nopw -display :0.0

有一些方法可以使它更永久,以便它只是作為會話的一部分執行。這篇部落格文章討論了一種這樣的方法,標題為:x11vnc on CentOS5 with GDM

X11 + vnc

第二種方法是將模組/驅動程序安裝到 X11 中,以便您可以連接到任何正在執行的 X11 桌面。我熟悉的叫vnc. 該驅動程序需要安裝到主機系統的 X 設置中,以便您可以訪問系統的登錄管理器。我不確定它在 Oracle 上是什麼(很可能是 GDM - GNOME 顯示管理器),因為它源自 RHEL。

好消息是,如果您安裝了該軟體包vnc-server,您已經安裝了 X11 驅動程序。只需將其添加到主機系統的 X11 設置中即可。

首先,您需要將此行添加到您xorg.confModule部分:

# /etc/X11/xorg.conf
Section "Module"
 Load "vnc"
EndSection

接下來,您需要在同一文件Screen部分添加幾行:

Option "SecurityTypes" "VncAuth"
Option "UserPasswdVerifier" "VncAuth"
Option "PasswordFile" "/root/.vnc/passwd"

最後使用該工具為此連接設置密碼vncpasswd,然後重新啟動 X。

參考

引用自:https://unix.stackexchange.com/questions/109725