使用硬件时钟节省时间

来自 Alpine Linux

安装硬件

我使用了 PiFace Real Time Clock。安装 CR1220 电池并正确安装到板上后,请参阅手册

安装软件

添加来自内核的模块

/etc/modules

添加这些模块,以便它们在启动时加载。如果您不想重启,可以分别使用 modprobe 加载每个模块。

/etc/modules的内容

i2c_dev i2c_bcm2708 i2c:mcp7941x

/media/mmcblk0p1/config.txt

您需要以读写模式挂载它

mount -o remount,rw /media/mmcblk0p1

将这两个参数添加到末尾

/media/mmcblk0p1/config.txt的内容

dtparam=i2c1=on dtparam=i2c_arm=on

mount -o remount,ro /media/mmcblk0p1

然后您需要重启。

绑定硬件时钟设备

您需要确保在 hwclock 启动时创建设备(如果尚未创建)。在 /etc/conf.d/hwclock 的底部添加以下内容

/etc/conf.d/hwclock的内容

... start_pre() { if [ -d "/sys/class/i2c-adapter/i2c-1/i2c-dev/i2c-1" ]; then einfo "正在创建 RTC 设备"; echo mcp7941x 0x6f > /sys/class/i2c-adapter/i2c-1/new_device fi }

目前这是必要的,但在未来当 issue 1032 解决后,您应该能够直接添加

/media/mmcblk0p1/config.txt的内容

... dtparam=i2c-rtc,mcp7941x

/media/mmcblk0p1/config.txt

在启动时启动 hwclock

需要启动 hwclock 服务,硬件时钟设备才能真正执行任何操作。通过运行以下命令检查 hwclock 是否已启动

rc-status | grep hwclock

如果输出

 hwclock                                                           [  started  ]

hwclock 已经启动。否则手动启动它并将其添加到默认的 init.d 运行级别,以便它在启动时启动

rc-service hwclock start

rc-update add hwclock default

如果您在无盘模式(非持久性根文件系统)下运行 Alpine Linux,请通过以下方式保存配置

lbu commit -d