Как запустить `Xephyr` без` sleep`-ing

Цель состоит в том, чтобы запустить Xephyr в скрипте. Самый популярный подход заключается в следующем:

Xephyr :4 & sleep 1 # or sleep 2 launch_your_program_here 

Посмотрим, что здесь происходит. Во-первых, к сожалению, Xephyr не может демонамизировать себя, поэтому мы должны запустить его асинхронно ( & ). Тогда мы не знаем, когда он инициализирован, поэтому мы даем ему 1-2 секунды для инициализации. Это чувствует себя взломанным. Как сделать это быстрее и надежнее?

2 Solutions collect form web for “Как запустить `Xephyr` без` sleep`-ing”

xinit выполняет эту работу. Вы можете создать файл your_xinitrc . Команды в your_xinitrc будут выполняться после инициализации Xephyr.

 xinit your_xinitrc -- /usr/bin/Xephyr :4 

X-сервер для запуска должен быть задан с абсолютным путем, если он не является самим X. Подробнее см. man xinit . После того, как все команды в your_xinitrc завершены, xinit завершает Xephyr.

Возможное решение может быть использовано

 Xephyr :4 inotifywait --timeout 9 /tmp/.X11-unix/ launch_your_program_here 

Вторая строка заблокирует себя, ожидая изменений файловой системы в /tmp/.X11-unix/ , что и происходит, когда Xephyr завершает инициализацию.

  • Параметр уровня ядра Debian - xorg не запускается с драйверами NVIDIA
  • X11 - несколько мониторов, видимых как один монитор
  • получить статус xautolock
  • Беспроводная клавиатура K800 USB - периодическая частота повторения клавиатуры
  • Включить вывод видеосигнала Xorg при отключении монитора при запуске
  • Ubuntu не загружается нормально после ручной установки X.org
  • ошибки с двумя мониторами при настройке разрешения
  • Изменение разрешения экрана в Fedora 16
  • Не удалось запустить X Server без экранов, no xorg.config для редактирования
  • Как отключить светодиод блокировки прокрутки, указывая раскладку клавиатуры, когда ПК выключен
  • Повернуть экран с помощью драйвера udl (DisplayLink) на Ubuntu 14.04?
  • Linux и Unix - лучшая ОС в мире.