Intereting Posts
Ошибка компиляции 64-разрядной 32-разрядной машины с -m64 Сохранение фокуса в i3wm Можете ли вы использовать grub для загрузки файла раздела RW, хранящегося на жестком диске FAT32? Создание виртуального интерфейса для постоянного доступа к интерфейсу DHCP с тем же ip Живая миграция SLES9 DomU? Могу ли я скрыть тот факт, что мой USB-шлюз запущен? Изменить дату сервера с помощью PHP ibus – Разница между методом ввода и исходными источниками Разрешить доступ к SSH, но ограничивать доступ root к определенному набору IP-адресов Сравните два файла: строки, присутствующие в одном, а не в другом, по одному столбцу как отправить сигнал клавиатуры с помощью сценария оболочки Являются ли тире, пепел и ш скрипт 100% совместимыми? sudo: apt-get: команда не найдена Мой grep (GNU grep) 2.5.1 не подчиняется символу обратной косой черты и специальному выражению Присоединиться: два файла – но только добавить последние два столбца

Как опросить для Xvfb, чтобы быть готовым?

В документации Тревиса CI говорится, чтобы запустить sleep 3 после запуска xvfb чтобы «дать [ему] некоторое время для запуска». Я не могу найти ссылку на эту задержку на странице руководства. Является ли это культовым программированием? Если нет, то как мне опросить, а не спать, чтобы гарантировать его доступность?

По умолчанию Xvfb создаст сокет Unix для подключения клиентов. В моей системе этот файл сокета файлов создается в /tmp/.X11-unix/ . Вы можете использовать inotifywait для прослушивания событий в этом каталоге. Например,

  $ inotifywait -e create /tmp/.X11-unix/ 

а затем запустите Xvfb :9 (например, дисплей 9). Когда он будет готов, вы должны увидеть

 /tmp/.X11-unix/ CREATE X9 

из inotifywait который завершится. Теперь вы можете подключиться к DISPLAY=:9 .