누군가가 나에게 이것에 대한 올바른 방향을 알려줄 수 있기를 바랍니다.
아래 "journalctl -u sshd" 항목에 따라 sshd.service가 시작되는 것을 방지하는 새로운 시스템 경로 단위(아래 참조)가 있습니다.
내가 뭔가 잘못하고 있는 것이 분명하지만, 무엇을 잘못하고 있는지 모르겠습니다. 도와주세요! :-)
미리 감사드립니다
잡지:
Oct 10 17:08:28 host1.example.local systemd[1]: multi-user.target: Found ordering cycle on sshd.service/start
Oct 10 17:08:28 host1.example.local systemd[1]: multi-user.target: Found dependency on sshd-keygen.target/start
Oct 10 17:08:28 host1.example.local systemd[1]: multi-user.target: Found dependency on [email protected]
Oct 10 17:08:28 host1.example.local systemd[1]: multi-user.target: Found dependency on basic.target/start
Oct 10 17:08:28 host1.example.local systemd[1]: multi-user.target: Found dependency on paths.target/start
Oct 10 17:08:28 host1.example.local systemd[1]: multi-user.target: Found dependency on path-watch.path/start
Oct 10 17:08:28 host1.example.local systemd[1]: multi-user.target: Found dependency on multi-user.target/start
Oct 10 17:08:28 host1.example.local systemd[1]: multi-user.target: Job sshd.service/start deleted to break ordering cycle starting with multi-user.target/start
경로 단위 파일:
[Unit]
Description=Watch for changes (updates) to /mypath
Wants=network-online.target
After=multi-user.target
[Path]
PathChanged=/mypath/
[Install]
WantedBy=multi-user.target
편집: 또한 단순히 "XYZ 목록에서 더 나은 답변을 얻을 수 있습니다."가 아닌 다른 곳에 게시하면 매우 감사하겠습니다.
답변1
제가 생각하는 문제의 핵심은Before=
경로 단위는 자동으로 paths.target에 대한 유형 종속성을 갖습니다., 장치가 효과적으로 부팅되도록 구성되었습니다.앞으로 paths.target
그리고뒤쪽에 multi-user.target
(전자는 매우 빠르며 후자는 매우 늦기 때문에 불가능합니다.) 인기가 없어 보이지만 DefaultDependencies=no
해당 섹션 [Unit]
에서 설정해 볼 수 있습니다 . 지정된 정렬 관계를 갖기 위해 경로 단위가 실제로 필요한지 고려하는 것이 좋습니다 multi-user.target
.
답변2
~에서경로 단위에 대한 문서:
기본 종속성
DefaultDependencies=no
설정하지 않으면 다음 종속성이 추가됩니다.
Before=
경로 단위는 자동으로 [.. ] 유형의 종속성을 갖습니다paths.target
.DefaultDependencies=
이 옵션은 조기 시작 또는 늦은 시스템 종료와 관련된 경로 단위에 대해서만 비활성화되어야 합니다 .
따라서 이 단위는 다음과 같은 정렬 관계를 갖습니다.
Before=paths.target
After=multi-user.target
그런데 multi-user.target
여기가 온다뒤쪽에basic.target
, 왔다뒤쪽에paths.target
, 이는 경로 단위 뒤에 위치하며, multi-user.target
그 뒤에 위치합니다...