나는 다음과 같은 신생 기업을 운영하고 있습니다.
# hwclock - adjust system clock and timezone
#
# The hwclock task adjusts the system clock when the hardware clock is
# set to localtime (e.g. when dual-booting with Windows), and also
# ensures that the system timezone is set so that timestamps are written
# to FAT devices.
description "adjust system clock and timezone"
start on starting mountall
task
script
exec hwclock --systz --utc --noadjfile
end script
systemd 서비스로 전환하고 싶습니다.
systemd에서는 어떻게 구현해야 합니까 start on starting mountall
?
아래와 같이 systemd 서비스를 생성했는데 어떻게 해야할지 모르겠습니다 start on starting mountall
.
[Unit]
Description=hwclock
After=
Before=
[Service]
ExecStart=/sbin/hwclock --systz --utc --noadjfile
답변1
다음 줄이 필요합니다.
Requires=
After=
여기에 명시된 바와 같이:
Requires=: 이 지시문은 이 장치가 본질적으로 의존하는 모든 장치를 나열합니다. 현재 장치가 이미 활성화된 경우 여기에 나열된 장치도 성공적으로 활성화되어야 합니다. 그렇지 않으면 장치가 실패합니다. 기본적으로 이러한 장치는 현재 장치와 병렬로 시작됩니다.
After=: 이 지시문에 나열된 장치는 현재 장치가 시작되기 전에 시작됩니다. 이는 필요한 경우 위 지시문을 통해 설정해야 하는 종속성을 의미하지 않습니다.
구조는 다음과 같아야 합니다.
[Unit]
Description=hwclock
Requires= # mountall most happen
After= # mountall should have started before hwclock run
[Service]
Type=oneshort
ExecStart=/sbin/hwclock --systz --utc --noadjfile
~에서여기:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Upstart stanza | systemd unit file directive | systemd unit file section
| |
-------------------------------------------------------------------------
start on | Wants, Requires, Before, |
| After | Unit
--------------------------------------------------------------------------
참고: 이는 Ubuntu 시스템용이지만 유사해야 합니다. 바라보다:https://www.freedesktop.org/software/systemd/man/systemd.unit.html반품.