override.conf
파일을 만들어 디렉토리 systemd-journal-catalog-update.service
에 넣었습니다 . systemd-journal-catalog-update.service.d/
그 목적 systemd-tmpfiles-setup.service
은 에서 제거하는 것입니다.systemd-journal-catalog-update.service file.
이제 파일에 다음이 포함됩니다.
[Unit]
After=local-fs.target systemd-tmpfiles-setup.service
내 override.conf
파일에는 다음이 있습니다.
[Unit]
After=
After=local-fs.target
그러나 systemd-journal-catalog-update.service
파일이 변경되지 않는 것 같습니다. 파일 작동 방식을 오해하고 있습니까 override.conf
? 원본 서비스 파일을 수동으로 수정할 수 있다는 것을 알고 있지만 프로젝트 상황에 따라 이를 옵션으로 제한하고 있습니다. 여러분이 줄 수 있는 어떤 도움/조언도 대단히 감사하겠습니다.
답변1
원하는 것(드롭인 파일을 통해 장치에서 종속성 제거)은 불가능합니다.systemd.unit매뉴얼 페이지:
종속성(After= 등)은 빈 목록으로 재설정할 수 없으므로 종속성은 드롭인에서만 추가할 수 있습니다. 종속성을 제거하려면 전체 단위를 재정의해야 합니다.
맨 페이지의 예제 2를 따르면 전체 유닛 파일을 재정의할 수 있습니다.
유닛 파일의 공급업체 설정을 재정의하는 방법에는 두 가지가 있습니다. 즉, /usr/lib/systemd/system에서 /etc/systemd/system으로 유닛 파일을 복사하고 선택한 설정을 수정하는 것입니다. [...] 첫 번째 방법의 장점은 전체 단위를 쉽게 무시하고 공급업체 단위가 더 이상 구문 분석되지 않는다는 것입니다. 공급업체의 유닛 파일 개선 사항이 업데이트 시 자동으로 통합되지 않는다는 단점이 있습니다.
귀하의 경우에는 (루트로)
cp /usr/lib/systemd/system/systemd-journal-catalog-update.service /etc/systemd/system
systemctl daemon-reload
systemctl restart systemd-journal-catalog-update
그 후에는 systemctl status
다음의 서비스 파일을 가리킵니다 /etc
.
# systemctl status systemd-journal-catalog-update
● systemd-journal-catalog-update.service - Rebuild Journal Catalog
Loaded: loaded (/etc/systemd/system/systemd-journal-catalog-update.service; static)
Active: active (exited) since Sat 2021-05-22 16:27:07 CEST; 3 weeks 2 days ago
[...]
앞서 언급한 내용은 systemctl cat
다음 파일에도 표시되지 않습니다 /etc/
.
# systemctl cat systemd-journal-catalog-update
# /etc/systemd/system/systemd-journal-catalog-update.service
# SPDX-License-Identifier: LGPL-2.1-or-later
#
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
[Unit]
Description=Rebuild Journal Catalog
[...]
/etc
이제 원하는 대로 파일을 편집하고 , systemctl daemon-reload
다시 실행하고, systemctl restart systemd-journal-catalog-update
사용자 정의 단위 파일과 해당 설정으로 서비스를 실행할 수 있습니다.
매뉴얼 페이지에 언급된 다음 사항에 유의하십시오.
공급업체의 유닛 파일 개선 사항이 업데이트 시 자동으로 통합되지 않는다는 단점이 있습니다.
이제 systemd는 배포판의 systemd 패키지에 있는 것과 완전히 다른 단위 파일을 읽으므로 해당 파일의 업데이트를 /usr/lib
자신의 복사본에 수동으로 적용해야 합니다. 패키지 관리자가 추적하는 구성 파일이 로컬 관리자와 패키지 모두에 의해 수정된 경우 일반적으로 생성되는 .rpmnew
(RPM 기반 배포판에서) 또는 (팩맨 기반 배포판에서) 파일은 이 경우 생성되지 않습니다..pacnew