快轉到主要內容

如何用Krfb開啟KDE Plasma遠端桌面 & 新增虛擬顯示器,無線投影Linux螢幕

· 民國114年乙巳年
·
切換繁體/簡體
分類 Linux系統 Linux好用軟體
標籤 Remote Desktop KDE Plasma VNC KDE Connect
目錄

請參考: Linux開源免費的遠端桌面列表

適用版本:KDE Plasma 5.0以上、Kubuntu 24.04以上、KDE Neon 24.04以上、SteamOS 3.0以上

Krfb (KDE Remote Frame Buffer) 為KDE社群開發的遠端桌面軟體,可以一鍵分享Linux的KDE Plasma桌面給其他電腦存取,達到遠端桌面效果。

本程式只能給Linux的KDE Plasma桌面使用,後端使用VNC協定。工作階段支援X11與Wayland(需要PipeWire)。

Krfb除了當遠端桌面用之外還有一個有趣功能,那就是「krfb-virtualmonitor」建立虛擬顯示器,這樣就能給VNC客戶端擷取,從而實現「另一台電腦當作電腦無線顯示器」的效果。

如下圖,建立二個虛擬顯示器,讓另外兩台電腦連接,這樣我就擁有了三個螢幕啦!

影片示範:

1. 安裝Krfb
#

注意:「Krfb」跟「KRdp」是不同的軟體,「KRDC」則是一款VNC客戶端。

KDE Plasma 6.0以上版本內建的遠端桌面是KRdp,使用RDP協定,而非Krfb使用的VNC。相關文章:KRdp遠端桌面使用教學

Krfb最低只需要KDE Plasma 5.0版本的桌面就可以安裝。

雖然Krfb是KDE社群開發的軟體,但是不像GNOME Remote Desktop那樣包含在桌面環境套件,有的發行版需要手動安裝。

請到KDE官網下載。

例如,Kubuntu直接從套件庫安裝:

sudo apt install krfb

2. 將Krfb當作遠端桌面使用
#

  1. 開啟「Krfb桌面分享」。設定簡單明瞭,將兩個選單都打勾,設定密碼,就會啟動桌面分享。

  2. 防火牆要開放VNC的通訊埠

sudo ufw allow 5900

sudo ufw reload
  1. 取得Linux電腦的區域IP
ip addr
  1. 接著在同一網域的其他電腦開啟VNC客戶端,譬如Remmina,輸入http://Linux電腦IP:5900即可連線。

  2. 需要從外網連接的,請設定內網穿透軟體

如果要將Krfb設定為開機自動啟動的話,建議使用X11工作階段(因為Wayland得手動同意遠端連線),然後到KDE系統設定,開啟開機後自動登入帳號(因為SDDM登入畫面無法啟動Krfb)

接著再把Krfb加入到autostart目錄:

cp /usr/share/applications/org.kde.krfb.desktop ~/.config/autostart

不幸的是,Krfb似乎無法以headless模式啟動。若有這方面需求,還是用TigerVNC好。

3. 利用Krfb新增虛擬顯示器
#

krfb-virtualmonitor指令可以用來生成一個虛擬顯示器,讓你好像有兩個螢幕一樣。這個多出來的虛擬顯示器可以用來讓其他電腦連線,讓另一台電腦播放這個虛擬顯示器的畫面,就能把另外一台電腦當作無線顯示器使用。

Krfb生成的顯示器並不算是真正的顯示器,儘管KDE系統設定會出現兩個顯示器的圖示,但其他遠端桌面軟體認不到,只有VNC客戶端能存取。另外krfb-virtualmonitor指令僅支援Wayland工作階段。

  1. 執行以下指令,新增一個1920x1080的虛擬顯示器,通訊埠選5900
krfb-virtualmonitor --resolution 1920x1080 --name "顯示器2" --password "密碼" --port 5900
  1. 防火牆要開放VNC的通訊埠
sudo ufw allow 5900

sudo ufw reload
  1. 取得Linux電腦的區域IP
ip addr
  1. 其後便可用Android平板或iPad的VNC客戶端連線到該顯示器了,如下圖兩個顯示器。虛擬顯示器會變成電腦端的延伸桌面,可以將視窗拖曳過去。

如果連線時顯示密碼錯誤,開啟Krfb圖形界面修改密碼,或者改用不同的通訊埠。

順帶一提,Krfb並沒有限定只能生成一個虛擬顯示器,因此再開第二個終端機執行指令,使用不同的通訊埠,就能生成第三個螢幕!

VNC傳輸效率很差,所以只適合看靜態影像。VNC客戶端不能控制電腦滑鼠,只能觀看影像。

如果希望平板可以不用裝VNC客戶端就能投影畫面的,可以把VNC通訊埠轉發給noVNC,即可用瀏覽器開啟。

4. 搭配KDE Connect分享Krfb虛擬顯示器
#

兩台電腦皆使用KDE Plasma桌面的場合,可以透過KDE Connect的快捷鍵建立虛擬顯示器,不用手動打krfb-virtualmonitor指令。

  1. 先在兩部電腦都安裝KDE Connect,並且都安裝一個VNC客戶端,比如KRDC:
sudo apt install krdc

一定要用KRDC嗎?KDE Connect會在連線啟動後自動開啟VNC客戶端,似乎會自己帶入一個密碼,不能手動變更。我測試發現Remmina抓不到KDE Connect的密碼,必須用KRDC作為預設VNC客戶端才行!

可以用xdg-mime指令將KRDC作為預設VNC客戶端:

xdg-mime default org.kde.krdc.desktop x-scheme-handler/vnc
  1. 讓兩台電腦的KDE Connect互相配對。

  2. 然後點選KDE Connect系統匣「虛擬顯示器」的快捷鍵,啟動Krfb。

  3. 操作邏輯是這樣:在A電腦點選此按鈕,Krfb就會自動生成B電腦解析度的虛擬顯示器,然後B電腦收到訊號後就會自動開啟VNC客戶端,連線到A電腦的VNC伺服器。如此一來B電腦就成為了A電腦的無線顯示器。

  4. 目前找不到關閉虛擬顯示器的方法,只能將KDE Connect斷掉連線才會消失,或者重新登入工作階段。

相關文章


此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。

(留言板載入中)這是Giscus留言板,需要Github帳號才能留言。支援Markdown語法,若要上傳圖片請善用外部圖床。您的留言會在Github Discussions向所有人公開。

Click here to edit your comments.

(留言板載入中)這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用外部圖床網站。