Я пытаюсь получить Real VNC сервер на Ubuntu 10.04 LTS 64 бит.
Я попробовал 2 варианта. Во-первых, я получил бесплатную версию Real VNC и начал работать после того, как для всех требуется 32-битные библиотеки, взлом конфигурации и т.д. Это почти хорошо с одной маленькой проблемой, после того, как я отключаю клиента, серверные печати Aborted
и завершаются. Я пробовал много комбинаций параметров и не мог понять это.
Это примерно командная строка, которую я использовал (но я пробовал много комбинаций параметров).
Xvnc :2 -desktop user-desktop -query localhost -geometry 1920x1200 -depth 16 -AcceptCutText -SendCutText -rfbauth /home/user/.vnc/passwd -SecurityTypes None -DisconnectClients
Второй вариант Я получил пробную версию Real VNC Enterprise 4.6.1 и установил ее. Теперь я могу счастливо запустить его как автономный сервер, и мои клиенты могут отключиться, не убивая сервер, но когда я пытаюсь использовать его с параметром -inetd
он просто молча завершается. Когда я пробую бесплатную версию, она переходит в режим stdio и печатает сообщение о рукопожатии.
RFB 003.008
Не в случае с корпоративной версией. Это просто выходит. Нет сообщений и нет журналов.
Так есть ли у кого-нибудь идеи о том, как заставить любой вариант работать?
По рекомендации @grawity я запускаю strace
и ltrace
. Вот наиболее интересный вывод ltrace (я собрал данные в файл с именем abc и вставил только те строки, которые мне интересны):
$cat abc | egrep 'strchr|print'
fprintf(0x7f330223e860, "\n%s", "Sun Jul 10 13:07:30 2011\n") = 26
strchr("inetd client gone, exiting", ' ') = " client gone, exiting"
strchr("client gone, exiting", ' ') = " gone, exiting"
strchr("gone, exiting", ' ') = " exiting"
$ cat abc | egrep 'strchr|print' | grep socket
strchr("getpeername: Socket operation on"..., ' ') = " Socket operation on non-socket "...
strchr("Socket operation on non-socket ("..., ' ') = " operation on non-socket (88)"
strchr("operation on non-socket (88)", ' ') = " on non-socket (88)"
strchr("on non-socket (88)", ' ') = " non-socket (88)"
strchr("non-socket (88)", ' ') = " (88)"