Systemd-сервис для использования DS3231 RTC на Raspberry Pi

Следующий systemd-сервис будет автоматически. См. это руководство для получения дополнительной информации о настройке и убедитесь, что sudo i2cdetect -y 1 определяет RTC по адресу 0x68.

Это скрипт автоматической установки и включения сервиса на основе Простой скрипт автоустановки systemd-сервиса. Этот скрипт автоматически включит сервис при загрузке:

install_configure_rtc.sh
#!/bin/bash
# Этот скрипт устанавливает и включает/запускает службу systemd
# Также устанавливает файл службы
export NAME=ConfigureRTC

cat >/etc/systemd/system/${NAME}.service <<EOF
[Unit]
Description=${NAME}

[Service]
ExecStart=/bin/bash -c 'echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device && hwclock -s'
Restart=always

[Install]
WantedBy=multi-user.target
EOF

# Включить и запустить службу
systemctl enable --now ${NAME}.service
install_configure_rtc.sh
#!/bin/bash
# Этот скрипт устанавливает и включает/запускает службу systemd
# Также устанавливает файл службы
export NAME=ConfigureRTC

cat >/etc/systemd/system/${NAME}.service <<EOF
[Unit]
Description=${NAME}

[Service]
ExecStart=/bin/bash -c 'echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device && hwclock -s'
Restart=always

[Install]
WantedBy=multi-user.target
EOF

# Включить и запустить службу
systemctl enable --now ${NAME}.service

Это только сам systemd-сервис:

configure_rtc.service
[Unit]
Description=ConfigureRTC

[Service]
ExecStart=/bin/bash -c 'echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device && hwclock -s'
Restart=always

[Install]
WantedBy=multi-user.target
configure_rtc.service
[Unit]
Description=ConfigureRTC

[Service]
ExecStart=/bin/bash -c 'echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device && hwclock -s'
Restart=always

[Install]
WantedBy=multi-user.target

Check out similar posts by category: Linux Raspberry Pi