그리고 이제 체계적인 답변입니다.
이러한 질문과 대답 이후 거의 4 년이 지났으며 세상은 변하지 않았지만 변화했습니다. 버전 7부터 CentOS는 systemd를 사용했습니다. 우분투는 질문과 의견에 언급되어 있습니다. 버전 15부터 Ubuntu는 systemd도 사용했습니다.
rc
systemd에서 System 5 스크립트를 사용할 수 있지만 여기서 답변의 스크립트는 가장 차선책입니다. D killall
몬 관리에 대한 문제는 잘 알려진을 모호 하게 사용합니다 . 다른 하나는 서비스 관리자 자체 가 dæmon 프로세스를 추적하기 때문에 서비스 관리자가 실제로 필요 하지 않은 rickety lock 파일과 PID 파일 논리의 혼란입니다 .
다른 곳에서 말했듯이,이 내용을 배우기 시작하고 CentOS Linux 버전 7 이상 또는 Ubuntu Linux 버전 15 이상 rc
에있는 경우 먼저 System 5 스크립트로 시작하지 마십시오 . 시스템 단위 파일로 시작하십시오.
여러 Xvfb 서비스를위한 템플릿
xvfb.service
xvfb의 간단한 시스템 단위 파일은 https://www.centos.org/forums/viewtopic.php?f=48&t=49080#p208363 및 https://askubuntu.com/a/621256/43344에 있습니다. 그러나 후자에서 언급했듯이 템플릿 화 된 접근 방식을 취할 수도 있습니다.
[단위]
Description = 표시 % I 용 가상 프레임 버퍼 X 서버
이후 = network.target
[서비스]
ExecStart = / usr / bin / Xvfb % I-스크린 0 1280x1024x24
[설치]
WantedBy = 다중 사용자. 대상
시스템 전체 (사용자 별이 아닌) 서비스를위한 로컬로 작성된 비 시스템 비 패키징 단위 파일로서 이것은 /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
.
추가 자료