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