1{
2    "import" : [
3            "/etc/init.usb.cfg",
4            "/etc/init.usb.configfs.cfg",
5            "/vendor/etc/init.${ohos.boot.hardware}.cfg"
6    ],
7    "jobs" : [{
8            "name" : "pre-init",
9            "cmds" : [
10                "write /proc/sys/kernel/sysrq 0",
11                "start ueventd",
12                "start watchdog_service",
13                "mkdir /data",
14                "mount_fstab /vendor/etc/fstab.${ohos.boot.hardware}",
15                "chown system system /data",
16                "chmod 0771 /data",
17                "mkdir /data/service 0711 root root",
18                "mkdir /data/service/el0 0711 root root",
19                "mkdir /data/vendor/log 0755 system log",
20                "load_persist_params "
21            ]
22        }, {
23            "name" : "init",
24            "cmds" : [
25                "copy /proc/cmdline /dev/urandom",
26                "copy /system/etc/prop.default /dev/urandom",
27                "symlink /proc/self/fd/0 /dev/stdin",
28                "symlink /proc/self/fd/1 /dev/stdout",
29                "symlink /proc/self/fd/2 /dev/stderr",
30                "write /proc/sys/kernel/panic_on_oops 1",
31                "write /proc/sys/kernel/hung_task_timeout_secs 0",
32                "write /proc/cpu/alignment 4",
33                "write /proc/sys/kernel/sched_tunable_scaling 0",
34                "write /proc/sys/kernel/sched_latency_ns 10000000",
35                "write /proc/sys/kernel/sched_wakeup_granularity_ns 2000000",
36                "write /proc/sys/kernel/sched_child_runs_first 0",
37                "write /proc/sys/kernel/randomize_va_space 2",
38                "write /proc/sys/vm/mmap_min_addr 32768",
39                "write /proc/sys/net/ipv4/ping_group_range 0 2147483647",
40                "write /proc/sys/net/unix/max_dgram_qlen 600",
41                "write /proc/sys/kernel/sched_rt_runtime_us 950000",
42                "write /proc/sys/kernel/sched_rt_period_us 1000000",
43                "write /proc/sys/net/core/rmem_max 262144",
44                "write /proc/sys/net/core/wmem_max 262144",
45                "write /proc/sys/net/ipv4/fwmark_reflect 1",
46                "write /proc/sys/net/ipv6/fwmark_reflect 1",
47                "write /proc/sys/net/ipv4/tcp_fwmark_accept 1",
48                "write /proc/sys/net/ipv4/conf/all/accept_redirects 0",
49                "write /proc/sys/net/ipv6/conf/all/accept_redirects 0",
50                "chmod 0400 /proc/net/fib_trie",
51                "chown system system /proc/pressure/memory",
52                "chmod 0664 /proc/pressure/memory",
53                "mkdir /dev/fscklogs 0770 root system",
54                "write /proc/sys/abi/swp 1",
55                "symlink /proc/self/fd /dev/fd",
56                "export DOWNLOAD_CACHE /data/cache",
57                "setrlimit RLIMIT_NICE 40 40",
58                "setrlimit RLIMIT_NOFILE 32768 32768",
59                "write /sys/class/leds/vibrator/trigger transient",
60                "chown system system /sys/power/state",
61                "chown system system /sys/power/wakeup_count",
62                "chmod 0660 /sys/power/state",
63                "ifup lo",
64                "hostname localhost",
65                "domainname localdomain",
66                "export TMPDIR /data/local/tmp"
67            ]
68        },  {
69            "name" : "post-init",
70            "cmds" : [
71                "trigger early-fs",
72                "trigger fs",
73                "trigger post-fs",
74                "trigger late-fs",
75                "trigger post-fs-data",
76                "trigger firmware_mounts_complete",
77                "trigger early-boot",
78                "trigger boot"
79            ]
80        }, {
81            "name" : "post-fs",
82            "cmds" : [
83                "mount rootfs rootfs / remount bind ro nodev",
84                "chown root log /proc/vmallocinfo",
85                "chmod 0440 /proc/vmallocinfo",
86                "chown root log /proc/slabinfo",
87                "chmod 0440 /proc/slabinfo",
88                "chown root system /proc/kmsg",
89                "chmod 0440 /proc/kmsg",
90                "chmod 0444 /sys/fs/selinux/policy"
91            ]
92        }, {
93            "name" : "late-fs",
94            "cmds" : [
95                "chmod 0755 /sys/kernel/debug/tracing"
96            ]
97        }, {
98            "name" : "post-fs-data",
99            "cmds" : [
100                "init_global_key /data",
101                "mkdir /data/app 0711 root root",
102                "mkdir /data/app/el1 0711 root root",
103                "mkdir /data/app/el1/bundle 0711 root root",
104                "mkdir /data/app/el1/bundle/public 0711 root root",
105                "mkdir /data/app/el2 0711 root root",
106                "mkdir /data/app/el3 0711 root root",
107                "mkdir /data/app/el4 0711 root root",
108                "mkdir /data/service/el1 0711 root root",
109                "mkdir /data/service/el1/public 0711 root root",
110                "mkdir /data/service/el2 0711 root root",
111                "mkdir /data/service/el2/public 0711 root root",
112                "mkdir /data/chipset 0711 root root",
113                "mkdir /data/service/el0/public 0711 root root",
114                "mkdir /data/service/el0/public/for-all-app 0711 root root",
115                "mkdir /data/chipset/el1 0711 root root",
116                "mkdir /data/chipset/el1/public 0711 root root",
117                "mkdir /data/service/el1/public/for-all-app 0711 root root",
118                "mkdir /data/chipset/el2 0711 root root",
119                "init_main_user ",
120                "mkdir /data/app/el1/0 0711 root root",
121                "mkdir /data/app/el1/0/base 0711 root root",
122                "mkdir /data/app/el1/0/database 0711 system system",
123                "mkdir /data/app/el2/0 0711 root root",
124                "mkdir /data/app/el2/0/base 0711 root root",
125                "mkdir /data/app/el2/0/database 0711 system system",
126                "mkdir /data/app/el2/0/log 0711 system system",
127                "mkdir /data/app/el3/0 0711 root root",
128                "mkdir /data/app/el3/0/base 0711 root root",
129                "mkdir /data/app/el4/0 0711 root root",
130                "mkdir /data/app/el4/0/base 0711 root root",
131                "mkdir /data/service/el1/0 0711 root root",
132                "mkdir /data/service/el2/0 0711 root root",
133                "mkdir /data/service/el2/0/hmdfs 0711 system system",
134                "mkdir /data/chipset/el1/0 0711 root root",
135                "mkdir /data/chipset/el2/0 0711 root root",
136                "mkdir /data/bootchart 0755 shell shell",
137                "mkdir /data/app-staging 0750 system system",
138                "copy /data/system/entropy.dat /dev/urandom",
139                "mkdir /data/misc 01771 system misc",
140                "mkdir /data/local 0751 root root",
141                "mkdir /data/preloads 0775 system system",
142                "mkdir /data/vendor 0771 root root",
143                "mkdir /data/vendor_ce 0771 root root",
144                "mkdir /data/vendor_de 0771 root root",
145                "mkdir /data/vendor/hardware 0771 root root",
146                "mkdir /data/local/tmp 0771 shell shell",
147                "mkdir /data/local/traces 0777 shell shell",
148                "mkdir /data/data 0771 system system",
149                "mkdir /data/app-private 0771 system system",
150                "mkdir /data/app-ephemeral 0771 system system",
151                "mkdir /data/app-asec 0700 root root",
152                "mkdir /data/app-lib 0771 system system",
153                "mkdir /data/app 0771 system system",
154                "mkdir /data/ota 0771 root root",
155                "mkdir /data/ota_package 0770 update update",
156                "chown update update /data/ota_package",
157                "chmod 0770 /data/ota_package",
158                "mkdir /data/resource-cache 0771 system system",
159                "chown system system /data/resource-cache",
160                "chmod 0771 /data/resource-cache",
161                "mkdir /data/lost+found 0770 root root",
162                "mkdir /data/drm 0770 drm drm",
163                "mkdir /data/mediadrm 0770 mediadrm mediadrm",
164                "mkdir /data/nfc 0770 nfc nfc",
165                "mkdir /data/nfc/param 0770 nfc nfc",
166                "mkdir /data/backup 0700 system system",
167                "mkdir /data/ss 0700 system system",
168                "mkdir /data/system 0775 system system",
169                "mkdir /data/system/dropbox 0700 system system",
170                "mkdir /data/system/heapdump 0700 system system",
171                "mkdir /data/system_de 0770 system system",
172                "mkdir /data/system_ce 0770 system system",
173                "mkdir /data/misc_de 01771 system misc",
174                "mkdir /data/misc_ce 01771 system misc",
175                "mkdir /data/user 0711 system system",
176                "mkdir /data/user_de 0711 system system",
177                "symlink /data/data /data/user/0",
178                "mkdir /data/media 0770 media_rw media_rw",
179                "mkdir /data/media/obb 0770 media_rw media_rw",
180                "mkdir /data/cache 0770 system cache",
181                "mkdir /data/cache/recovery 0770 system cache",
182                "mkdir /data/cache/backup_stage 0700 system system",
183                "mkdir /data/cache/backup 0700 system system",
184                "setparam sys.use_memfd false",
185                "chown root system /dev/fscklogs/log",
186                "chmod 0770 /dev/fscklogs/log",
187                "chmod 0660 /dev/fuse"
188            ]
189        }, {
190            "name" : "boot",
191            "cmds" : [
192                "write /proc/sys/net/core/xfrm_acq_expires 3600",
193                "write /proc/sys/vm/overcommit_memory 1",
194                "write /proc/sys/vm/min_free_order_shift 4",
195                "chown root system /sys/block/zram0/idle",
196                "chmod 0664 /sys/block/zram0/idle",
197                "write /proc/sys/vm/dirty_expire_centisecs 200",
198                "write /proc/sys/vm/dirty_background_ratio 5",
199                "chown system system /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq",
200                "chmod 0660 /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq",
201                "chown system system /sys/class/leds/red/brightness",
202                "chown system system /sys/class/leds/green/brightness",
203                "chown system system /sys/class/leds/blue/brightness",
204                "chown root radio /proc/cmdline",
205                "setparam net.tcp.default_init_rwnd 60"
206            ]
207        }, {
208            "name" : "param:sys.sysctl.extra_free_kbytes=*",
209            "condition" : "sys.sysctl.extra_free_kbytes=*",
210            "cmds" : [
211                "write /proc/sys/vm/extra_free_kbytes ${sys.sysctl.extra_free_kbytes}"
212            ]
213        }, {
214            "name" : "param:sys.sysctl.tcp_def_init_rwnd=*",
215            "condition" : "sys.sysctl.tcp_def_init_rwnd=*",
216            "cmds" : [
217                "write /proc/sys/net/ipv4/tcp_default_init_rwnd ${sys.sysctl.tcp_def_init_rwnd}"
218            ]
219        }, {
220            "name" : "param:security.perf_harden=0",
221            "condition" : "security.perf_harden=0",
222            "cmds" : [
223                "write /proc/sys/kernel/perf_event_paranoid 1",
224                "write /proc/sys/kernel/perf_event_max_sample_rate ${debug.perf_event_max_sample_rate:-100000}",
225                "write /proc/sys/kernel/perf_cpu_time_max_percent ${debug.perf_cpu_time_max_percent:-25}",
226                "write /proc/sys/kernel/perf_event_mlock_kb ${debug.perf_event_mlock_kb:-516}"
227            ]
228        }, {
229            "name" : "param:security.perf_harden=1",
230            "condition" : "security.perf_harden=1",
231            "cmds" : [
232                "write /proc/sys/kernel/perf_event_paranoid 3"
233            ]
234        }, {
235            "name" : "boot && param:const.debuggable=1",
236            "condition" : "boot && const.debuggable=1",
237            "cmds" : [
238                "chmod 0773 /data/misc/trace",
239                "chmod 0775 /data/misc/wmtrace",
240                "start console"
241            ]
242        }, {
243            "name" : "reboot",
244            "cmds" : [
245                "stopAllServices ",
246                "sync ",
247                "umount /vendor",
248                "umount /data MNT_FORCE",
249                "sync "
250            ]
251       }
252    ],
253    "services" : [{
254            "name" : "ueventd",
255            "path" : ["/system/bin/ueventd"],
256            "socket" : [{
257                "name" : "ueventd",
258                "family" : "AF_NETLINK",
259                "type" : "SOCK_DGRAM",
260                "protocol" : "NETLINK_KOBJECT_UEVENT",
261                "permissions" : "0660",
262                "uid" : "system",
263                "gid" : "system",
264                "option" : [
265                    "SOCKET_OPTION_PASSCRED",
266                    "SOCKET_OPTION_RCVBUFFORCE",
267                    "SOCK_CLOEXEC",
268                    "SOCK_NONBLOCK"
269                ]
270            }],
271            "critical" : [ 0, 15, 5],
272            "ondemand" : true,
273            "sandbox" : 0,
274            "start-mode" : "condition"
275        }, {
276            "name" : "console",
277            "path" : ["/system/bin/sh"],
278            "disabled" : 1,
279            "console" : 1,
280            "uid" : "root",
281            "gid" : ["shell", "log", "readproc"],
282            "start-mode" : "condition"
283        }, {
284            "name" : "watchdog_service",
285            "path" : ["/system/bin/watchdog_service", "10", "20"],
286            "disabled" : 1,
287            "uid" : "watchdog",
288            "gid" : ["watchdog", "log", "readproc"],
289            "start-mode" : "condition"
290        }, {
291            "name" : "misc",
292            "path" : ["/system/bin/misc_daemon", "--write_logo", "/vendor/logo.rgb"],
293            "once" : 1
294        }
295    ]
296}
297