請參考: 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。
Krfb最低只需要KDE Plasma 5.0版本的桌面就可以安裝。
雖然Krfb是KDE社群開發的軟體,但是不像GNOME Remote Desktop那樣包含在桌面環境套件,有的發行版需要手動安裝。
請到KDE官網下載。
Kubuntu直接從套件庫安裝:
sudo apt install krfb
Arch Linux從官方套件庫安裝:
sudo pacman -S krfb
2. 將Krfb當作遠端桌面使用#
開啟「Krfb桌面分享」。設定簡單明瞭,將兩個選單都打勾,設定密碼,就會啟動桌面分享。
防火牆要開放VNC的通訊埠
sudo ufw allow 5900
sudo ufw reload
- 取得Linux電腦的區域IP
ip addr
如果要將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工作階段。
- 執行以下指令,新增一個1920x1080的虛擬顯示器,通訊埠選5900
krfb-virtualmonitor --resolution 1920x1080 --name "顯示器2" --password "密碼" --port 5900
- 防火牆要開放VNC的通訊埠
sudo ufw allow 5900
sudo ufw reload
- 取得Linux電腦的區域IP
ip addr
- 其後便可用Android平板或iPad的VNC客戶端連線到該顯示器了,如下圖兩個顯示器。虛擬顯示器會變成電腦端的延伸桌面,可以將視窗拖曳過去。
如果連線時顯示密碼錯誤,開啟Krfb圖形界面修改密碼,或者改用不同的通訊埠。
順帶一提,Krfb並沒有限定只能生成一個虛擬顯示器,因此再開第二個終端機執行指令,使用不同的通訊埠,就能生成第三個螢幕!
VNC傳輸效率很差,所以只適合看靜態影像。VNC客戶端不能控制電腦滑鼠,只能觀看影像。
4. 搭配KDE Connect分享Krfb虛擬顯示器#
兩台電腦皆使用KDE Plasma桌面的場合,可以透過KDE Connect的快捷鍵建立虛擬顯示器,不用手動打krfb-virtualmonitor指令。
- 先在兩部電腦都安裝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
讓兩台電腦的KDE Connect互相配對。
然後點選KDE Connect系統匣「虛擬顯示器」的快捷鍵,啟動Krfb。
操作邏輯是這樣:在A電腦點選此按鈕,Krfb就會自動生成B電腦解析度的虛擬顯示器,然後B電腦收到訊號後就會自動開啟VNC客戶端,連線到A電腦的VNC伺服器。如此一來B電腦就成為了A電腦的無線顯示器。
目前找不到關閉虛擬顯示器的方法,只能將KDE Connect斷掉連線才會消失,或者重新登入工作階段。