Jamyy's Weblog

在 Ubuntu Desktop 運行 x11vnc (VNC Server)

by Jamyy on 四月.12, 2015, under Linux

  • ssh 連入 Ubuntu Desktop 後執行 x11vnc
  • 使用不同帳號 ssh 連入後執行 x11vnc
  • 開機自動啟動 x11vnc

x11vnc 基本操作

一次性服務 - 中斷 VNC 連線即中止 x11vnc 程序

$ x11vnc -display :0

脫離連線不停止 x11vnc 程序

$ x11vnc -display :0 -forever -bg

指定解析度 - 對於無法 scale 處理的 vncviewer 很實用

$ x11vnc -display :0 -geometry 1366x768

限制連線來源

$ x11vnc -display :0 -allow 127.0.0.1

連線時使用密碼驗證

產生密碼
$ x11vnc -storepasswd

聆聽並採用密碼驗證
$ x11vnc -display :0 -usepw

使用者尚未登入桌面的啟用辦法

$ sudo x11vnc -display :0 -auth /var/run/lightdm/root/:0

遠端登入協助 (使用不同帳號 ssh 連入後執行 x11vnc)

@ User PC

# useradd -m helper
# passwd helper
# vi /etc/sudoers.d/remotehelper

helper ALL=(ALL:ALL) NOPASSWD: /usr/bin/x11vnc

# chmod 400 /etc/sudoers.d/remotehelper

@ Helper PC

$ ssh helper@user.pc
$ sudo x11vnc -display :0 -auth /home/user/.Xauthority

開啟 VNC Viewer 連入 User PC

開機自動啟動

Ubuntu 14.10 以下 (upstart)

$ sudo vi /etc/init/x11vnc.conf

# description "Start x11vnc at boot"

description "x11vnc"

start on runlevel [2345]
stop on runlevel [^2345]

console log

respawn
respawn limit 20 5

exec /usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/USERNAME/.vnc/passwd -rfbport 5900 -shared

Ubuntu 15.04 以上 (systemd)

$ sudo vi /etc/systemd/system/x11vnc.service

[Unit]
Description=Start x11vnc at startup.
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/USERNAME/.vnc/passwd -rfbport 5900 -shared

[Install]
WantedBy=multi-user.target

$ sudo chmod u+x /etc/systemd/system/x11vnc.service
$ sudo systemctl daemon-reload
$ sudo systemctl enable x11vnc.service


 
Ref:



:, ,