모니터가 연결되어 있지 않으면 x11vnc를 시작할 수 없습니다

모니터가 연결되어 있지 않으면 x11vnc를 시작할 수 없습니다

x11vnc부팅 시 시작되도록 (또는 다른 vnc 서버) 설정하고 싶습니다 . 디스플레이 관리자는 이고 kdm배포판은 Ubuntu 12.04.2 LTS입니다.

x11vnc를 시작하려고 하면 다음 오류가 발생합니다.

$ x11vnc -rfbauth /var/run/xauth/A:0-crWk72  -rfbport 5901
 passing arg to libvncserver: -rfbauth
 passing arg to libvncserver: /var/run/xauth/A:0-crWk72
 passing arg to libvncserver: -rfbport
 passing arg to libvncserver: 5901
 x11vnc version: 0.9.12 lastmod: 2010-09-09  pid: 2828
 XOpenDisplay("") failed.
 Trying again with XAUTHLOCALHOSTNAME=localhost ...

 *** XOpenDisplay failed. No -display or DISPLAY.
 *** Trying ":0" in 4 seconds.  Press Ctrl-C to abort.
 *** 1 2 3 4 
 XOpenDisplay(":0") failed.
 Trying again with XAUTHLOCALHOSTNAME=localhost ...
 XOpenDisplay(":0") failed.
 Trying again with unset XAUTHLOCALHOSTNAME ...

xserver-xorg-video-dummy화면이 연결되지 않는 문제를 피하기 위해 설치를 시도했지만 지금까지 성공하지 못했습니다.

답변1

나는 다음과 같은 해결책을 생각해 냈습니다.

  1. sudo apt-get install x11vnc xserver-xorg-video-dummy
  2. 플래그가 /etc/default/grub포함되어 있는지 확인하십시오 .nomodeset

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"

  3. 설정에 따라 생성(또는 수정) /etc/X11/xorg.conf, 수정 및 주소를 지정합니다 USER.LISTEN

Section "Monitor"
Identifier "Monitor0"
HorizSync 28.0-80.0
VertRefresh 48.0-75.0
# 1680x1050 @ 60.00 Hz (GTF) hsync: 65.22 kHz; pclk: 147.14 MHz
Modeline "1680x1050_60.00" 147.14 1680 1784 1968 2256 1050 1051 1054 1087 -HSync +Vsync
EndSection

Section "Device"
  Identifier "Card0"
  Driver "dummy"
  VideoRam 256000
EndSection

Section "Screen"
DefaultDepth 24
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
    SubSection "Display"
    Depth 24
    Modes "1680x1050"    
    EndSubSection
EndSection

당신은 할 수나만의 해상도 생성.

4 - 서비스 스크립트 만들기/etc/init.d/vncserver

#!/bin/sh -e
### BEGIN INIT INFO
# Provides:          vncserver
# Required-Start:    networking
# Default-Start:     3 4 5
# Default-Stop:      0 6
### END INIT INFO

PATH="$PATH:/usr/X11R6/bin/" CMD="/usr/bin/x11vnc"

# The Username:Group that will run VNC 
export USER="your_username"

# The display that VNC will use DISPLAY="1"

# Color depth (between 8 and 32) DEPTH="16"

# The Desktop geometry to use.
#GEOMETRY="<WIDTH>x<HEIGHT>"
#GEOMETRY="800x600" GEOMETRY="1680x1050"
#GEOMETRY="1280x1024"

# The name that the VNC Desktop will have. NAME="my-vnc-server"

PORT=5900 
LISTEN="192.168.1.10"


OPTIONS="-xkb -noxrecord -noxfixes -noxdamage -listen ${LISTEN} -name ${NAME} -depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY} -auth guess
-usepw ~/.vnc/passwd -rfbport ${PORT} -forever -bg -oa /var/log/x11vnc.log"

. /lib/lsb/init-functions

case "$1" in start) echo ${OPTIONS} log_action_begin_msg "Starting vncserver for user '${USER}' on localhost:${DISPLAY}" su ${USER} -c "${CMD} ${OPTIONS}" ;;

stop) log_action_begin_msg "Stoping vncserver for user '${USER}' on localhost:${DISPLAY}" su ${USER} -c "${CMD} -kill :${DISPLAY}" ;;

restart) $0 stop $0 start ;; esac

exit 0

답변2

다음을 사용하면 항상 유효한 vnc 세션을 빠르게 설정할 수 있습니다.

apt-get install vnc4server x11-xserver-utils xserver-xorg-video-dummy xterm wm2

X11이 아직 시스템에 설치되어 있지 않고 전체 X11 설치를 피하려는 경우를 대비하여 x11-xserver-utils 및 xserver-xorg-video-dummy를 추가했습니다. 그러나 이 점은 귀하의 사례와 관련이 없을 가능성이 높으며 다른 사람들이 유용하다고 생각할 경우를 대비해 추가하면 됩니다.

전체 그놈 세션이나 이와 유사한 것보다는 간단한 설정을 원하는 경우를 대비해 xterm과 wm2를 추가했습니다. 이 경우 사용자 계정으로 vnc4server를 실행하면 ~/.vnc/xstartup이 자동으로 생성됩니다. 그런 다음 종료하고 ~/.vnc/xstartup을 편집하고 맨 아래에 다음 두 줄을 추가합니다.

x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
wm2 &

vnc4server를 다시 실행하세요.

그렇지 않은 경우에는 자신의 계정으로 vnc4server를 실행하는 것만으로도 충분합니다. vncserver를 처음 시작하면 원격 시스템에서 연결하는 데 사용할 비밀번호를 생성하라는 메시지가 표시됩니다.

원격 시스템에 xtightvncviewer와 같은 것을 설치하고 이를 사용하여 vnc 서버에 연결합니다.

apt-get install xtightvncviewer
xtightvncviewer 192.0.2.1:1   [1]

1 - 참조http://www.iana.org/go/rfc5737문서에서 이 IP 범위가 사용되는 이유에 대해

관련 정보