
Я работаю в терминале кодирования под управлением Ubuntu 13.04 и пытаюсь запустить приложение, которому требуется X-screen (даже для запуска в режиме терминала).
Я не могу подключиться с помощью переадресации x11, и мне интересно, есть ли обходной путь, который позволит мне запустить это приложение (lmms).
$ lmms -v
lmms: cannot connect to X server
$ uname -a
Linux vm-2.masd.koding.kd.io 3.9.0-0-generic #4userns5 SMP Mon May 13 06:15:34 PDT 2013 x86_64 x86_64 x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 13.04
Release: 13.04
Codename: raring
Заранее спасибо!
решение1
Xvfb — это именно то, что я искал:http://en.wikipedia.org/wiki/Xvfb
Выдержка из Википедии:
Xvfb или X virtual framebuffer — это дисплейный сервер, реализующий протокол дисплейного сервера X11... С точки зрения клиента он действует точно так же, как любой другой дисплейный сервер X, обслуживая запросы и отправляя события и ошибки по мере необходимости. Однако вывод не отображается. Этот виртуальный сервер не требует, чтобы компьютер, на котором он работает, имел экран или какое-либо устройство ввода.
Этот набор команд исправил мою проблему:
Xvfb :1 &
export DISPLAY=:1
тогда моя команда срабатывает:
$ lmms -v
Linux MultiMedia Studio 0.4.14-rc1
Copyright (c) 2004-2008 LMMS developers.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
Try "lmms --help" for more information.
решение2
Попробуйте открыть дисплей, чтобы разрешить приложение X. lmms
Это можно сделать с помощью команды xhost
.
Пример
$ xhost +