Я следую этому уроку и хочу узнать эквивалентную centos-версию этого специфичного для Ubuntu шага:
You may receive a few warnings regarding fonts and such, but it’ll still work despite these. If you want the framebuffer to start automatically on system startup you can do:
sudo update-rc.d xvfb defaults 10
Как правильно запустить xvfb при запуске на centos?
update-rc.d
вместоchkconfig
. Смотрите этот ответ для получения дополнительной информации оupdate-rc.d
.А теперь системный ответ.
После этих вопросов и ответов прошло почти четыре года, и мир изменился, хотя они не изменились. Начиная с версии 7, CentOS использует systemd. Ubuntu упоминается в вопросе и в комментариях. Начиная с версии 15, Ubuntu также использует systemd.
Хотя в Systemd можно использовать
rc
сценарии System 5 , сценарии в ответах здесь, по меньшей мере, не совсем оптимальны. Один беспечно используетkillall
, чьи проблемы для управления демонами хорошо известны; а другой - путаница файла шаткой блокировки и логики PID-файла, ни одна из которых на самом деле не нужна в диспетчере сервисов, так как сами сервис-менеджеры отслеживают демон-процессы.Как я уже говорил в другом месте, если вы начинаете изучать этот материал и используете CentOS Linux версии 7 или новее или Ubuntu Linux версии 15 или новее, не начинайте со
rc
сценариев System 5 . Начните с файловых модулей systemd.шаблон для нескольких сервисов Xvfb
Простые
xvfb.service
Systemd файлы блок для Xvfb можно найти на https://www.centos.org/forums/viewtopic.php?f=48&t=49080#p208363 и в https://askubuntu.com/a/621256/43344 . Однако, как я упоминал в последнем, можно также использовать шаблонный подход:В качестве локально написанного, не системного, неупакованного, единичного файла для общесистемных (в отличие от каждого пользователя) услуг это,
/etc/systemd/system/xvfb@.service
конечно, рассматривается .контроль услуг
Один экземпляр шаблона, в фактическую именованную услугу, с желаемым номером дисплея. Поэтому для отображения
:99
существует фактический экземпляр службы с именемxvfb@:99.service
.systemctl enable xvfb@:99.service
.systemctl disable xvfb@:99.service
.systemctl start xvfb@:99.service
.systemctl stop xvfb@:99.service
.systemctl status xvfb@:99.service
.дальнейшее чтение
systemctl
, Системные справочные страницы. freedesktop.org.источник
Вот хороший сценарий инициализации для этого:
http://onemoretech.wordpress.com/2009/05/27/an-xvfb-init-script/
Сценарий:
Сохраните сценарий как xvfbd и скопируйте его
/etc/init.d
, а затем выполните следующую команду:источник
Самый простой способ - добавить следующую строку в
/etc/rc.local
файл (создать ее, если ее там нет):запустить X виртуальный кадровый буфер при загрузке.
источник
Вы можете использовать более простой способ, если вам просто нужно запустить или запустить что-то при загрузке компьютера.
В Redhat / CentOS добавьте строку скрипта в этот файл:
/etc/rc.d/rc.local
источник