CentOS에서 부팅 시 시작되는 서비스를 만드는 방법은 무엇입니까?

CentOS에서 부팅 시 시작되는 서비스를 만드는 방법은 무엇입니까?

CentOS 상자를 부팅하면 httpd서비스가 자동으로 시작됩니다. 동일한 작업을 수행하는 맞춤 서비스를 어떻게 만들 수 있나요? 채굴에 사용하는 프로그램이 있는데, ./miner머신을 부팅할 때마다 실행할 필요가 없습니다 .

답변1

CentOS 7.x를 사용하고 있으므로 Unit을 생성합니다. 다음 내용을 입력하세요 vim /usr/lib/systemd/system/miner.service.root

[Unit]
Description=miner

[Service]
ExecStart=/path/to/miner

[Install]
WantedBy=multi-user.target

서비스를 닫거나 다시 로드하는 데 사용되는 특정 인수가 있는 경우 ExecStop=및 옵션을 추가할 수 있습니다 .ExecReload=

systemctl enable miner.service그 후에는 부팅할 때마다 시작되도록 설정하기 만 하면 됩니다 .

관련 내용:

답변2

채굴 프로그램 제공자에 따라 관련 서비스가 이미 선언되어 있을 수도 있습니다.

centOS에서는 다음을 확인할 수 있습니다.

# chkconfig --list 

프로그램이 보이면 부팅 시 자동으로 실행되도록 시스템에 지시할 수 있습니다.

# chkconfig postgresql on

결과를 찾지 못하면 다음과 같은 템플릿을 사용하여 자신만의 더미 스크립트를 만들 수 있습니다.

데몬처럼 시작하고 중지할 수 있도록 셸 스크립트에 대한 서비스를 어떻게 생성합니까?

그런 다음 /etc/init.d/에 넣고 chmod +x를 수행합니다.

채굴기 애플리케이션과 함께 제공되는 모든 이점을 갖춘 서비스로 관리할 수 있어야 합니다.

답변3

부팅 시 명령을 실행하기만 하면 실제 서비스를 만들려고 시도할 필요가 없습니다. 가장 간단한 방법은 . /path/to/miner/etc/rc.d/rc.local에 넣는 것입니다. 이 파일은 부팅할 때마다 실행되는 스크립트이므로(rc.local이 실행 가능한지 확인) 서버가 시작될 때 명령이 실행됩니다.

실제로 서비스로 처리해야 하는 경우 이를 수행하는 가장 좋은 방법은 CentOS 7을 사용하는지 5/6을 사용하는지에 따라 달라집니다.

편집: 언급하는 것을 잊었습니다. 이는 루트로 실행되므로 루트가 아닌 사용자로 실행해야 하는 경우 대신 사용하십시오.su - username -c /path/to/miner

관련 정보