Centos 7 생 성 서비스

4155 단어 Centos
시스템 d: CentOS 7 의 서비스 시스템 ctl 스 크 립 트 는: / usr / lib / systemd /, 시스템 (system) 과 사용자 (user) 의 구분 이 있 습 니 다. 즉, / usr / lib / systemd / system, / usr / lib / systemd / user 입 니 다.
      .service  ,     3  :[Unit]、[Service] [Install],  nginx   ,      :

서비스 만 들 기: / usr / lib / systemd / system 에서 nginx. service 파일 을 만 드 는 내용 은 다음 과 같 습 니 다 (응용 수 요 를 보면 / usr / lib / systemd / usr 에서 만 들 수 있 습 니 다).
[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx-t -c /etc/nginx/nginx.conf
ExecStart=/usr/sbin/nginx-c/etc/nginx/nginx.conf
ExecReload=/bin/kill-s HUP $MAINPID
ExecStop=/bin/kill-s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

[Unit] 설명: 서비스의 간단 한 설명 Documentation: 서비스 문서 After =: 의존, 의존 하 는 서비스 가 시 작 된 후에 만 사용자 정의 서비스 셀 을 시작 합 니 다.
[서비스] 유형: 시작 유형 simple, forking, oneshot, notify, dbus
Type = simple (기본 값): systemd 는 이 서비스 가 즉시 시 작 될 것 이 라 고 생각 합 니 다.서비스 프로 세 스 가 fork 를 하지 않 습 니 다.이 서비스 가 socket 활성화 형 이 아 닌 다른 서 비 스 를 시작 하려 면 이 형식 으로 시작 하지 마 십시오.Type = forking: systemd 는 이 서비스 프로 세 스 가 fork 이 고 부모 프로 세 스 가 종료 되면 서비스 가 시작 되 었 다 고 생각 합 니 다.일반적인 데 몬 (daemon) 에 대해 서 는 이 시작 방식 이 수 요 를 만족 시 키 지 못 하 는 지 확인 하지 않 으 면 이 형식 으로 시작 하면 됩 니 다.이 시작 형식 을 사용 하려 면 시스템 d 가 서비스의 주 프로 세 스 를 추적 할 수 있 도록 PIDFile = 을 동시에 지정 해 야 합 니 다.Type = oneshot: 이 옵션 은 한 가지 작업 만 수행 하고 즉시 종료 하 는 서비스 에 적 용 됩 니 다.서비스 프로 세 스 가 종 료 된 후에 도 서비스 가 활성 상태 라 고 생각 하도록 RemainAfterExit = yes 를 동시에 설정 해 야 할 수도 있 습 니 다.Type = notify: Type = simple 과 같 지만 약속 서 비 스 는 준비 가 된 후에 systemd 에 신 호 를 보 냅 니 다.이 알림 의 실현 은 libsystemd - daemon. so 에서 제공 합 니 다.Type = dbus: 이 방식 으로 시작 하면 지정 한 BusName 이 DBus 시스템 버스 에 나타 날 때 systemd 는 서비스 가 준비 되 었 다 고 생각 합 니 다.
PIDFile: pid 파일 경로 ExecStartPre: 시작 하기 전에 무엇 을 해 야 합 니까? 위의 글 은 테스트 프로필 - t ExecStart: ExecReload 시작: ExecStop 다시 불 러 오기: PrivateTmp: True 는 서비스 에 독립 된 임시 공간 을 할당 하 는 것 을 표시 합 니 다.
[Install] Wanted By: 서비스 에 설 치 된 사용자 모드 는 말 그대로 이 서 비 스 를 사용 하려 는 사람 이 누구 입 니까?위 에서 사용 한 것 은 multi - user. target 입 니 다. 이 서 비 스 를 사용 하려 는 디 렉 터 리 는 다 중 사용자 입 니 다."이상 은 모두 개인 적 으로 이해 하고 멋대로 추측 한 것 입 니 다. 만약 부당 하 다 면 여러분 께 서 많이 가르쳐 주 십시오." 모든. target 은 실제 적 으로 우리 회사 파일 에 연 결 된 집합 입 니 다. 우리 가 실행 할 때:
$sudo systemctl enable nginx.service
/ etc / systemd / system / multi - user. target. wants / 디 렉 터 리 에 / usr / lib / systemd / system / ngix. service 파일 의 링크 를 새로 만 듭 니 다.
운영 서비스:
시작 서비스
$sudo systemctl start nginx.service
로그 보기
$sudo journalctl -f -u nginx.service
– Logs begin at 4 2015 - 06 - 25 17: 32: 20 CST. –
6 월 25 일 10: 28: 24 Leco. lan systemd [1]: Starting nginx - high performance web server...
6 월 25 일 10: 28: 24 Leco. lan nginx [7976]: nginx: the configuration file / etc / nginx / nginx. conf syntax is ok
6 월 25 일 10: 28: 24 Leco. lan nginx [7976]: nginx: configuration file / etc / nginx / nginx. conftestis 성공
6 월 25 일 10: 28: 24 Leco. lan systemd [1]: Started nginx - high performance web server.
다시 시작
$sudo systemctl restart nginx.service
무 거 운 짐
$sudo systemctl reload nginx.service
멈추다
$sudo systemctl stop nginx.service

좋은 웹페이지 즐겨찾기