
不思議なのに、なぜこれがうまくいかないのですか?
$ screen
$ Xvfb -screen :1 1024x768x16 &
[1] 17540
$ _XSERVTransSocketINETCreateListener: ...SocketCreateListener() failed
_XSERVTransMakeAllCOTSServerListeners: server already running
(EE)
Fatal server error:
(EE) Cannot establish any listening sockets - Make sure an X server isn't already running(EE)
次にCtrl+C
、またはその後に+D
次を実行します。
$ ps -C Xorg
PID TTY TIME CMD
実際にはXサーバーが稼働していません。それではなぜ間違っているのですか?
$ uname -a
Linux ip-123456-generic #102-Ubuntu SMP Tue Aug 11 14:29:36 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
修正する:
答え1
「:1」画面に示すように、Xvfbを起動する前に、次のファイルを削除したことを確認してください。
rm /tmp/.X11-unix/X1
rm /tmp/.X1
Xvfbがこれらの「ロック」ファイルを生成できない場合は、Xorgサーバーが実行されているとします。これは、他のユーザー(ルートなど)が同じ画面上でそのファイルを作成し、「ロックされた」ファイルを削除する権限がないユーザーとしてXvfbを起動したためです。つまり、Xvfbは「ロックされた」ファイルを削除して生成しようとし、失敗した場合に発生したエラーを表示します。
答え2
以下を実行したい場合があります。
Xvfb :1 -screen 0 1024x768x16 &
:1
デフォルトのネットワーク接続+ 1を使用するための別々のパラメータがあります。つまり、ご使用のexport DISPLAY=:1
環境でこのモニターに接続する必要があります。X
また、X11サーバーはXorg
。