Tôi nhận thức được theo chủ đề và được cho là một câu trả lời cho nó . Ngoại trừ một câu trả lời không phải là một câu trả lời theo nghĩa chung. Nó cho biết vấn đề là gì trong một trường hợp cụ thể, nhưng không nói chung.
Câu hỏi của tôi là: có cách nào để gỡ lỗi chu kỳ đặt hàng một cách chung chung không? Ví dụ: có một lệnh sẽ mô tả chu kỳ và những gì liên kết đơn vị này với đơn vị khác?
Ví dụ: tôi đã theo dõi journalctl -b
(vui lòng bỏ qua ngày, hệ thống của tôi không có RTC để đồng bộ hóa thời gian với):
Jan 01 00:00:07 host0 systemd[1]: Found ordering cycle on sysinit.target/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on local-fs.target/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on cvol.service/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on basic.target/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on sockets.target/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on dbus.socket/start
Jan 01 00:00:07 host0 systemd[1]: Found dependency on sysinit.target/start
Jan 01 00:00:07 host0 systemd[1]: Breaking ordering cycle by deleting job local-fs.target/start
Jan 01 00:00:07 host0 systemd[1]: Job local-fs.target/start deleted to break ordering cycle starting with sysinit.target/start
trong đó cvol.service (dịch vụ đã được giới thiệu và phá vỡ chu trình) là:
[Unit]
Description=Mount Crypto Volume
After=boot.mount
Before=local-fs.target
[Service]
Type=oneshot
RemainAfterExit=no
ExecStart=/usr/bin/cryptsetup open /dev/*** cvol --key-file /boot/***
[Install]
WantedBy=home.mount
WantedBy=root.mount
WantedBy=usr-local.mount
Theo tạp chí, cvol.service muốn basic.service, ngoại trừ việc nó không, ít nhất là không rõ ràng. Có một lệnh sẽ chứng minh nơi liên kết này được bắt nguồn từ đâu? Và nói chung, có một lệnh, trong đó sẽ tìm thấy các chu kỳ và hiển thị mỗi liên kết trong chu kỳ bắt nguồn từ đâu?