Вопрос Run Unity на внешнем мониторе с помощью Bumblebee


Я понимаю, что в этом есть много других вопросов, но все они касаются базовой установки. Я получил большую часть пути, но у меня есть очень специфический вопрос: я хочу запустить полнофункциональный Unity на внешнем мониторе (HDMI), и мне все равно, если дисплей ноутбука непригоден.

У меня есть Dell XPS 15 с Nvidia GT 540M с Optimus. (DAMN OPTIMUS !!!!) У меня установлен Bumblebee. Я могу запустить систему на дисплее ноутбука, и я могу использовать optirun для запуска таких программ, как glxspheres в высокопроизводительном режиме. Когда я подключаю внешний монитор, я ничего не вижу и xrandr не обнаруживает его ("HDMI1 disconnected (normal left inverted right x axis y axis)«).

Вот что я сделал до сих пор (работа с Bumblebee's установка нескольких мониторов руководство). Я следил за советом «дополнительного экрана», поэтому я отредактировал bumblebee.conf а также xorg.conf.nvidia как указано. Теперь, если я запустил:

export DISPLAY=:8 LD_LIBRARY_PATH=/usr/lib/nvidia-current:$LD_LIBRARY_PATH
optirun glxspheres

Я вижу демонстрацию glxspheres на внешнем мониторе (без какой-либо перевязки окон). Woohoo!

Теперь следующий шаг - отключить Unity на дисплее ноутбука и проверить, что glxspheres все еще работает. Поэтому я нажал Ctrl + Alt + F1, чтобы перейти к неграфическому терминалу. Затем:

sudo service lightdm stop
export DISPLAY=:8 LD_LIBRARY_PATH=/usr/lib/nvidia-current:$LD_LIBRARY_PATH
optirun glxspheres

Опять же, я вижу glxspheres на внешнем мониторе.

Теперь руководство Bumblebee говорит вам сделать "optirun wmii& (или другой, такой как startlxde) ", но я не хочу меняться на другой диспетчер окон. Как запустить Unity на внешнем мониторе?

Я пытался optirun unity и я получил большую часть пути туда. Это запустит Unity на внешнем мониторе. Я вижу рабочий стол, и мышь работает. Я могу запускать другие программы внутри Unity. Есть всего несколько проблем:

  1. Некоторые комбинации клавиш не обнаруживаются Unity - это похоже на что-либо, включающее Ctrl, а также клавишу Fn. (например: Ctrl + Alt + T не работает, чтобы получить терминал, Fn + F11 не работал, чтобы изменить громкость).
  2. Штрихи клавиатуры отображаются как в терминале, так и в Unity. Я не хочу этого, потому что могут быть введены пароли.
  3. Если я переключусь на другой экран (например, Ctrl + Alt + F8), звук перестанет работать, поэтому это не является жизнеспособным решением для # 2.

Я чувствую, что эти три вопроса связаны. Я думаю, что основная проблема заключается в том, что я не должен напрямую работать с Unity, а вместо этого запускать lightdm. я пробовал optirun lightdm но это не работает вообще. Надеюсь, кто-то знает. Если нет, надеюсь, по крайней мере, этот вопрос поможет людям почти запустить Unity на внешнем мониторе.


4
2018-02-09 03:54


происхождения




ответы:


как я понимаю, Unity не работает с optirun (кажется, это ошибка).

Вот что я нашел Вот:

HDMI не работает с гибридными наборами микросхем Optimus под Linux для большинства ноутбуков, даже если вы используете Bumblebee, но есть способ заставить HDMI работать: используя отдельный сеанс.

Используя приведенные ниже инструкции, вы получите сеанс LXDE (вы можете использовать XFCE или другие, но приведенные ниже инструкции для LXDE) отображаться на внешнем мониторе (который подключен через HDMI), и в этом сеансе все приложения, которые вы запускаете, используют графическую карту вашего ноутбука Nvidia, и вы можете играть в игры, смотреть фильмы и т. д. Сеанс LXDE работает в то же время, что и ваш обычный сеанс, поэтому на экране вашего ноутбука вы получаете свою обычную (основную) сессию. Кроме того, мышь и клавиатура разделяются между двумя сеансами / мониторами.

Вот как это выглядит:

first pictiure

second picture

Первое изображение выше - это экран моего ноутбука (Dell XPS L702X, который поставляется с Nvidia Optimus), а второе изображение - это отдельный сеанс LXDE, который также работает на моем ноутбуке, но отображается на телевизоре, подключенном через HDMI. Как вы можете видеть, первый использует графический чип Intel, а второй использует Nvidia.

Тем не менее, есть некоторые вещи, которые следует учитывать при использовании этого:

  • звук не будет работать (если вы знаете способ заставить его работать, пожалуйста, позвольте мы знаем в комментариях!) через HDMI, чтобы вы получили звук через динамики вашего ноутбука
  • вы не можете переместить окно с текущего рабочего стола на монитор подключен через HDMI. Единственный способ запуска приложений на устройстве подключенный через HDMI, должен либо запустить его из своего меню сеанса, либо используя «export DISPLAY =: 8.0» (см. конец сообщения для получения дополнительной информации о это). Однако мышь разделена между двумя рабочими столами.
  • при загрузке дополнительного сеанса вы можете получить двойные индикаторы / лоток значки на текущей (основной) сессии. Существует путь вокруг этого хотя (см. раздел «советы» в конце сообщения)

Получите HDMI для работы с ноутбуками с использованием технологии Optimus под Ubuntu с использованием Bumblebee и Synergy

  1. Установите Bumblebee, если вы еще этого не сделали.

  2. Unity не работает с Bumblebee (и я не уверен, что вы можете запускать два сеанса с использованием одного и того же диспетчера окон без их вмешательства), поэтому вам нужно будет использовать другую среду / сеанс рабочего стола, например LXDE, XFCE и и так далее - используйте все, что захотите. Я использовал LXDE, поэтому, используя приведенные ниже инструкции, вы получите сеанс LXDE на мониторе, подключенном через HDMI.

    Чтобы мышь и клавиатура работали на внешнем мониторе, подключенном через HDMI, мы будем использовать Synergy, инструмент, позволяющий совместно использовать мышь и клавиатуру между несколькими компьютерами.

    Давайте установим необходимые пакеты (LXDE и Synergy):

    sudo apt-get install synergy lxde lxde-common

  3. Чтобы иметь возможность использовать Synergy, вам нужно создать файл конфигурации. Вы можете скачать мой ВОТ - скопируйте файл в свою домашнюю папку и переименуйте его в «.synergy.conf» (обратите внимание на точку перед именем файла - это делает файл скрытым).

    Файл, который я предоставил выше, должен быть достаточным, но если вы хотите его изменить, вы можете прочитать о файле конфигурации Synergy Вот,

  4. Чтобы запустить LXDE на внешнем мониторе, подключенном через HDMI, вы можете использовать сценарий, который вы можете скачать с ВОТ, Извлеките архив, скопируйте сценарий «hdmi» в свою домашнюю папку и сделайте его исполняемым с помощью следующей команды:

    chmod +x ~/hdmi

    Теперь, чтобы запустить скрипт, используйте следующую команду:

    ~/hdmi

    LXDE должен теперь запускаться на внешнем мониторе, подключенном через HDMI. Дайте ему некоторое время (около 10 секунд) и перемещая мышь слева от экрана, чтобы он отображался на устройстве HDMI.

    Вот что делает скрипт (это просто объяснение, вам не нужно запускать эти команды, просто используйте приведенный выше скрипт):

    экспортирует дисплей в тот, который мы собираемся использовать для монитора HDMI (8):

    export DISPLAY=:8.0

    работает LXDE с optirun (Bumblebee):

    optirun startlxde &

    запускает сервер Synergy на переднем плане на основном дисплее (на основной сессии вашего ноутбука) с 127.0.0.1 в качестве адреса:

    synergys -f -a 127.0.0.1 --display :0 -n ubuntu &

    запускает клиент Synergy на переднем плане на дисплее HDMI и подключает его к адресу сервера 127.0.0.1:

    synergyc -f -n hdmi --display :8 127.0.0.1 &

    И, наконец, он экспортирует дисплей обратно на главный экран вашего ноутбука:

    export DISPLAY=:0.0

    В сценарии также используются некоторые команды «спящего режима», которые добавляют задержку, чтобы убедиться, что у команд достаточно времени для выполнения, прежде чем запускать следующую команду.


4
2018-03-01 04:26



Супер! Спасибо за подробный свалку. Я еще не пробовал, но я пометил ваш ответ, потому что это действительно полезно. Когда я получу шанс, я попробую и дам вам знать. - mgiuca