시스템 런타임 단위 파일의 용도는 무엇입니까?

시스템 런타임 단위 파일의 용도는 무엇입니까?

내가 읽은 systemd 유닛 파일 문서에 따르면 유닛 파일은 파일 시스템의 세 위치에서 찾을 수 있다고 나와 있습니다.

  1. /etc/systemd/system/: 시스템 유닛 파일
  2. /run/systemd/system/:런타임 단위 파일
  3. /lib/systemd/system/(때때로 /usr/lib/systemd/system/): 패키지의 기본 유닛 파일

내가 아는 한, 시스템 장치 파일은 (아마도 사용자가 구성한) 시스템 데몬용입니다. 또한 기본 패키지 단위 파일은 합리적인 기본값을 제공하는 패키지 설치와 함께 제공되는 단위 파일이라는 것도 이해합니다.

그러나 런타임 단위 파일의 목적을 설명하는 문서를 찾을 수 없습니다. 런타임 단위 파일의 용도는 무엇입니까? 시스템 관리자로서 시스템을 만들 수 있나요? 런타임 단위 파일을 사용하여 해결할 수 있는 문제의 예는 무엇입니까? 런타임 단위 파일이 패키지 단위 파일보다 우선하지만 시스템 단위 파일보다 우선하지 않는 이유는 무엇입니까?

답변1

역사적으로 런타임 단위 파일은 기계 생성 단위용이었습니다. 해당 공급업체 단위(있는 경우)를 재정의해야 하지만 사용자가 재정의할 수 있도록 설계되었습니다.정의된 우선순위.

오늘날에는 버스 API를 사용하여 생성된 임시 셀로 대부분 대체되었다고 생각합니다. 이러한 셀은 어디에도 파일로 표시되지 않습니다.

답변2

런타임 파일은 /run/systemd/system재부팅 시 변경/수정 사항을 유지하지 않고 현재 시작 중에 프로세스(유닛)를 수정하는 기능에서 발생합니다.

~에서시스템 제어.1:

--runtime
           When used with enable, disable, edit, (and related commands),
           make changes only temporarily, so that they are lost on the
           next reboot. This will have the effect that changes are not
           made in subdirectories of /etc/ but in /run/, with identical
           immediate effects, however, since the latter is lost on
           reboot, the changes are lost too.

           Similarly, when used with set-property, make changes only
           temporarily, so that they are lost on the next reboot.

답변3

내 시스템에서 단위 파일에 /run/systemd가 사용되는 것을 본 적이 없습니다. /lib/systemd에서 수정되지 않은 단위 파일을 실행하는 경우에도 사용할 수 있습니다.

일반적으로 /lib/systemd에는 기본 유닛 파일과 타이머가 포함되어 있으며(여기서 편집해서는 안 됩니다), /etc/systemd에는 활성화된(/lib/systemd 파일에 대한 링크) 및 사용자 정의 유닛 파일과 타이머가 포함되어 있습니다.

타이머와 유닛 파일을 사용자 정의하여 sudo systemctl edit unit/timer원본 파일에 일부 콘텐츠를 추가하거나 sudo systemctl edit --full unit/timer유닛 파일이나 타이머를 완전히 편집할 수 있습니다.

답변4

지침을 읽고 시작하세요.여기런타임 단위 파일은 특정 프로세스에 대한 또 다른 유형의 시스템 구성 파일인 것처럼 보입니다.

또한 런타임 시 생성되고 프로세스가 종료되면 삭제됩니다.

도움이 된다면 이 페이지에서 "실행"을 검색하고 모든 항목을 읽어보세요. 거기에서 동일한 결론을 도출하는 것은 쉽습니다.

관련 정보