Duduk di komputer yang sama dan melakukannya dari terminal virtual yang berbeda dari server X berjalan tidak berfungsi.
T-108: Saya menggunakan Linux Virtual Terminal (VT's) untuk mengimplementasikan 'Fast User Switching' di antara sesi pengguna (misalnya Betty pada Ctrl-Alt-F7, Bobby pada Ctrl-Alt-F8, dan Sid pada Ctrl-Alt -F1: mereka menggunakan penekanan tombol tersebut untuk beralih di antara sesi mereka.) Bagaimana pandangan dalam penampil VNC yang menghubungkan ke x11vnc benar-benar hitam, tidak memperbarui, atau piksel kacau kecuali sesi X x11vnc yang terpasang di dalam aktif VT?
Ini tampaknya ada hubungannya dengan bagaimana aplikasi (proses X server dalam kasus ini) harus "bermain dengan baik" jika mereka tidak aktif di VT (kadang-kadang disebut VC untuk konsol virtual.) Artinya, mereka tidak boleh membaca dari keyboard atau mouse atau kelola tampilan video kecuali mereka memiliki VT aktif. Karena tampaknya panggilan XGetImage () pada akhirnya harus mengambil data framebuffer dari perangkat keras video itu sendiri, masuk akal jika polling x11vnc tidak akan berfungsi kecuali sesi X memiliki kontrol aktif VT.
Sepertinya tidak ada cara mudah untuk mengatasi hal ini. Bahkan xwd (1) tidak berfungsi dalam hal ini (coba saja.) Sesuatu harus dilakukan pada level yang lebih rendah, katakanlah di server XFree86 / Xorg X. Selain itu, menggunakan Shadow Framebuffer (salinan framebuffer video disimpan di memori utama) tampaknya tidak memperbaiki masalah (terakhir diperiksa 2007.)
Jika tidak ada yang duduk di workstation dan Anda hanya ingin secara remote mengalihkan VT ke yang terkait dengan sesi X Anda (jadi x11vnc dapat polling dengan benar), seseorang dapat menggunakan perintah chvt (1), misalnya "chvt 7" untuk VT # 7.