Как настроить часы RTC в Ubuntu Core?

У меня есть малина Pi 3, которая регистрирует данные во времени, поэтому мне нужны часы RTC

Я подключил dtoverlay=i2c-rtc,ds3231 к config.txt.

hwclock.service было бы идеально, но оно маскировано, и я не могу разоблачить его.

hwclock -s работает нормально, но когда я пытаюсь выполнить из ограниченного щелчка, я получаю это (управление временем связано) :

ed10vi86@localhost:~$ sudo hwclock.hwclock-test -s --debug hwclock from util-linux 2.27.1 Using the /dev interface to the clock. Assuming hardware clock is kept in UTC time. Waiting for clock tick... /dev/rtc does not have interrupt functions. Waiting in loop for time from /dev/rtc to change ...got clock tick Time read from Hardware Clock: 2017/06/29 10:49:54 Hw clock time : 2017/06/29 10:49:54 = 1498733394 seconds since 1969 Time since last adjustment is 1498733394 seconds Calculated Hardware Clock drift is 0.000000 seconds Calling settimeofday: tv.tv_sec = 1498733394, tv.tv_usec = 0 tz.tz_minuteswest = -120 /snap/hwclock/x1/hwclock-test: line 2: 1656 Bad system call hwclock $@

И snappy-debug.security scanlog:

= Seccomp = Time: Jun 29 12:49:54 Log: auid=1000 uid=0 gid=0 ses=1 pid=1656 comm="hwclock" exe="/sbin/hwclock" sig=31 arch=40000028 79(settimeofday) compat=0 ip=0x76f0c246 code=0x0 Syscall: settimeofday

Работает отлично в devmode

0
задан 29 June 2017 в 17:14

2 ответа

Я знаю, что это отложенный ответ, но я решил поделиться своим решением. Кажется, что вы можете «воссоздать» сервис hwclock и получить желаемый результат, как показано ниже:

Чтобы разоблачить услугу, соответствующий файл определения должен присутствовать в /etc/systemd/system. К счастью, в Ubuntu Core этот каталог сопоставляется с /writable/system-data/etc/systemd/system - поэтому в этом доступном для записи каталоге вы можете создать файл с именем hwclock.service со следующим содержимым (если необходимо):

[Unit] Description=Hardware clock synchronization [Service] Type=oneshot ExecStart=/sbin/hwclock --hctosys --utc --adjfile=/writable/system-data/etc/adjtime ExecStop=/sbin/hwclock --systohc --utc --adjfile=/writable/system-data/etc/adjtime [Install] WantedBy=multi-user.target

Затем вы может разоблачить и включить службу как обычно:

sudo systemctl unmask hwclock sudo systemctl enable hwclock
0
ответ дан 18 July 2018 в 10:56

Я знаю, что это отложенный ответ, но я решил поделиться своим решением. Кажется, что вы можете «воссоздать» сервис hwclock и получить желаемый результат, как показано ниже:

Чтобы разоблачить услугу, соответствующий файл определения должен присутствовать в /etc/systemd/system. К счастью, в Ubuntu Core этот каталог сопоставляется с /writable/system-data/etc/systemd/system - поэтому в этом доступном для записи каталоге вы можете создать файл с именем hwclock.service со следующим содержимым (если необходимо):

[Unit] Description=Hardware clock synchronization [Service] Type=oneshot ExecStart=/sbin/hwclock --hctosys --utc --adjfile=/writable/system-data/etc/adjtime ExecStop=/sbin/hwclock --systohc --utc --adjfile=/writable/system-data/etc/adjtime [Install] WantedBy=multi-user.target

Затем вы может разоблачить и включить службу как обычно:

sudo systemctl unmask hwclock sudo systemctl enable hwclock
0
ответ дан 24 July 2018 в 19:41

Другие вопросы по тегам:

Похожие вопросы: