프로세스 출력을 시스템 단위 파일의 파일에 저장

프로세스 출력을 시스템 단위 파일의 파일에 저장

시스템 파일 단위(Centos 7)를 생성했고 Python 출력을 파일에 저장하고 싶지만 다음 코드로 서비스가 시작되지 않습니다.

[root@static ~]# cat /etc/systemd/system/pykms.service
[Unit]
Description=PY-KMS
After=network.target

[Service]
Type=simple
User=root
ExecStart=/usr/bin/python2.7 /usr/local/py-kms-master/server.py 192.168.1.100 1688 -v > /usr/local/py-kms-master/pykmsss.log



[Install]
WantedBy=multi-user.target

노트:위의 ">" 다음 줄을 제거하면 모든 것이 잘 작동하지만 로그를 파일에 저장하고 싶습니다.

systemctl 상태 pykms -l

 [root@static ~]# systemctl status pykms -l
pykms.service - PY-KMS
   Loaded: loaded (/etc/systemd/system/pykms.service; enabled)
   Active: active (running) since Tue 2015-11-24 20:54:28 IRST; 2s ago
 Main PID: 2788 (server.py)
   CGroup: /system.slice/pykms.service
           └─2788 /usr/bin/python2.7 /usr/local/py-kms-master/server.py 192.168.1.100 1688 -v

Nov 24 20:54:28 server.de systemd[1]: Starting PY-KMS...
Nov 24 20:54:28 -server.de systemd[1]: Started PY-KMS.

답변1

매뉴얼 페이지시스템 장치상태:

특히 "<", "<<", "">" 및 ">>"를 사용한 리디렉션, "|"를 사용한 파이프, "&"를 사용한 백그라운드에서 프로그램 실행 및 기타 쉘 구문 요소는 지원되지 않습니다.

그런 다음 사용 방법을 설명합니다.

ExecStart=/bin/sh -c 'dmesg | tac'

상황에 따라 다음과 같이 할 수 있습니다.

ExecStart=/bin/sh -c 'exec /usr/bin/python2.7 /usr/local/py-kms-master/server.py 192.168.1.100 1688 -v > /usr/local/py-kms-master/pykmsss.log'

관련 정보