EnvironmentFile에는 다음이 있습니다.
EBUSD_OPTS="--scanconfig -d /dev/ttyEBUS -c /etc/ebusd --log=\"all notice\" --log=\"update error\""
.service 파일에서:
EnvironmentFile=-/etc/default/ebusd
ExecStart=/usr/bin/ebusd $EBUSD_OPTS
--log= 뒤의 따옴표가 실행 파일에 변경 없이 전달될 것으로 예상하지만 작동하지 않는 것 같습니다. 나는 모든 유형의 큰따옴표, 작은따옴표, 이중, 삼중 이스케이프 내부 따옴표, 단일 외부 따옴표 등을 시도했지만 성공하지 못했습니다.
답변1
EnvironmentFile에서 외부 따옴표를 가져옵니다.
EBUSD_OPTS=--scanconfig -d /dev/ttyEBUS -c /etc/ebusd --log="all notice" --log="update error"
ExecStart에 중괄호를 추가합니다.
ExecStart=/usr/bin/ebusd ${EBUSD_OPTS}
또한 중괄호 뒤에 후행 공백이 있어야 했습니다.