blob: 1e07f8ade29d8239b595eb49d5cad807ac698de4 [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001#!/bin/sh /etc/rc.common
2# Copyright (C) 2014 OpenWrt.org
3
4START=11
5USE_PROCD=1
6
7validate_system_section() {
8 uci_load_validate system system "$1" "$2" \
9 'hostname:string:OpenWrt' \
10 'conloglevel:uinteger' \
11 'buffersize:uinteger' \
12 'timezone:string:UTC' \
13 'zonename:string'
14}
15
16system_config() {
17 [ "$2" = 0 ] || {
18 echo "validation failed"
19 return 1
20 }
21
22 echo "$hostname" > /proc/sys/kernel/hostname
23 [ -z "$conloglevel" -a -z "$buffersize" ] || dmesg ${conloglevel:+-n $conloglevel} ${buffersize:+-s $buffersize}
24 echo "$timezone" > /tmp/TZ
25 [ -n "$zonename" ] && [ -f "/usr/share/zoneinfo/${zonename// /_}" ] \
26 && ln -sf "/usr/share/zoneinfo/${zonename// /_}" /tmp/localtime \
27 && rm -f /tmp/TZ
28
29 # apply timezone to kernel
30 hwclock -u --systz
b.liub17525e2025-05-14 17:22:29 +080031
32 # Add by liubin
33 hwclock -s
b.liue9582032025-04-17 19:18:16 +080034}
35
36reload_service() {
37 config_load system
38 config_foreach validate_system_section system system_config
39}
40
41service_triggers() {
42 procd_add_reload_trigger "system"
43 procd_add_validation validate_system_section
44}
45
46start_service() {
47 reload_service
48}