diff --git a/zh-cn/device-dev/subsystems/subsys-boot-init-jobs.md b/zh-cn/device-dev/subsystems/subsys-boot-init-jobs.md index c941adea0129814c475df75a9e358cf95126442a..7bae312d04c8465cf2bd34f7f25f98dd348632ec 100644 --- a/zh-cn/device-dev/subsystems/subsys-boot-init-jobs.md +++ b/zh-cn/device-dev/subsystems/subsys-boot-init-jobs.md @@ -34,51 +34,51 @@ job就是命令集合,jobs管理就是对要执行的一组命令集合进行 **表1** 命令集说明 | 命令 | 命令格式和示例 | 说明 | | -------- | -------- | -------- | - | mkdir | mkdir 目标文件夹 [mode] [owner] [group]
如:mkdir /storage/myDirectory
mkdir /storage/myDirectory 0755 root root| 创建文件夹命令,mkdir和目标文件夹之间有且只能有一个空格。
系统类型:小型系统和标准系统 | - | chmod | chmod 权限 目标
如:chmod 0600 /storage/myFile.txt
chmod 0750 /storage/myDir | 修改权限命令,chmod权限目标之间间隔有且仅有一个空格,权限必须为0xxx格式。
系统类型:小型系统和标准系统| - | chown | chown uid gid 目标
如:chown 900 800 /storage/myDir
chown 100 100 /storage/myFile.txt | 修改属组命令,chown uid gid目标之间间隔有且仅有一个空格。
系统类型:小型系统和标准系统 | - | mount | mount fileSystemType src dst flags [data]
如:mount vfat /dev/mmcblk0 /sdc rw,umask=000
mount jffs2 /dev/mtdblock3 /storage nosuid | 挂载命令,各参数之间有且仅有一个空格。flags参考base/startup/init_lite/services/init/init_common_cmds.c中mountFlagMap函数mountFlagMap[],data为可选字段。
系统类型:小型系统和标准系统 | - | start | start serviceName
如:start foundation| 启动服务命令,start后面跟着service名称,该service名称必须能够在services数组中找到。
系统类型:小型系统和标准系统 | - | export | export key value
如:export TEST /data/test | 设置环境变量命令。后面跟两个参数,第一个参数是环境变量名,第二个参数是环境变量值。
系统类型:小型系统和标准系统 | - | rm | rm filename
如:rm /data/testfile | 删除文件命令。后面跟一个参数,即文件的绝对路径。
系统类型:小型系统和标准系统 | - | rmdir | rmdir dirname
如:rmdir /data/testdir | 删除目录命令。后面跟一个参数,即目录的绝对路径。
系统类型:小型系统和标准系统 | - | write | write filename value
如:write /data/testfile 0 | 写文件命令。后面跟两个参数,第一个参数是文件的绝对路径,第二个参数是要写入文件的字符串。
系统类型:小型系统和标准系统 | - | stop | stop serviceName
如:stop console | 关闭服务命令。后面跟一个参数,即要关闭的服务名。
系统类型:小型系统和标准系统 | - | copy | copy oldfile newfile
如:copy /data/old /data/new | 拷贝文件命令。后面跟两个参数,第一个参数是原文件绝对路径,第二个参数是新文件绝对路径。
系统类型:小型系统和标准系统 | - | reset | reset serviceName
如:reset console | 重置服务命令。后面跟一个参数,即要重启的服务名。目前reset命令的策略是,如果一个服务没有启动,则该命令会将其拉起,如果一个服务处于运行状态,则该命令会将其关闭后重启。
系统类型:小型系统和标准系统 | - | reboot | reboot [subsystem]
如:reboot updater | 重启系统命令。后面可以跟一个参数,也可以没有参数,当没有参数时执行该命令,将会使设备重启到当前系统,当后面跟参数时,参数应当是子系统的名字,例如,reboot updater,将会重启进入updater子系统。
系统类型:小型系统和标准系统 | - | sleep | sleep time
如:sleep 5 | 睡眠命令。后面可以跟一个参数,该参数是睡眠时间, 限制睡眠时间在5秒内。
sleep命令谨慎使用。
系统类型:小型系统和标准系统 | - | domainname | domainname name
如:domainname localdomain | 设置域名。
系统类型:小型系统和标准系统 | - | hostname | hostname name
如:hostname localhost | 设置主机名命令。
系统类型:小型系统和标准系统 | - | wait | wait filepath [time]
如:wait /data/testfile 或 wait /data/testfile 5| 等待命令,等待时间不超过5秒。
系统类型:小型系统和标准系统 | - | setrlimit | setrlimit resource curValue maxValue
如:setrlimit RLIMIT_CPU 10 100| 设定资源使用限制命令。
系统类型:小型系统和标准系统 | - | write | write path content
如:write /proc/sys/kernel/sysrq 0 | 写文件命令。
系统类型:小型系统和标准系统 | - | exec | exec 可执行文件路径 可执行文件传的参数
如: exec /system/bin/mkdir /data/test.txt | 系统调用命令。
系统类型:小型系统和标准系统 | + | mkdir | mkdir 目标文件夹 [mode] [owner] [group]
如:mkdir /storage/myDirectory
mkdir /storage/myDirectory 0755 root root| 创建文件夹命令,mkdir和目标文件夹之间有且只能有一个空格。
系统类型:小型系统和标准系统 | + | chmod | chmod 权限 目标
如:chmod 0600 /storage/myFile.txt
chmod 0750 /storage/myDir | 修改权限命令,chmod权限目标之间间隔有且仅有一个空格,权限必须为0xxx格式。
系统类型:小型系统和标准系统| + | chown | chown uid gid 目标
如:chown 900 800 /storage/myDir
chown 100 100 /storage/myFile.txt | 修改属组命令,chown uid gid目标之间间隔有且仅有一个空格。
系统类型:小型系统和标准系统 | + | mount | mount fileSystemType src dst flags [data]
如:mount vfat /dev/mmcblk0 /sdc rw,umask=000
mount jffs2 /dev/mtdblock3 /storage nosuid | 挂载命令,各参数之间有且仅有一个空格。flags参考base/startup/init_lite/services/init/init_common_cmds.c中mountFlagMap函数mountFlagMap[],data为可选字段。
系统类型:小型系统和标准系统 | + | start | start serviceName
如:start foundation| 启动服务命令,start后面跟着service名称,该service名称必须能够在services数组中找到。
系统类型:小型系统和标准系统 | + | export | export key value
如:export TEST /data/test | 设置环境变量命令。后面跟两个参数,第一个参数是环境变量名,第二个参数是环境变量值。
系统类型:小型系统和标准系统 | + | rm | rm filename
如:rm /data/testfile | 删除文件命令。后面跟一个参数,即文件的绝对路径。
系统类型:小型系统和标准系统 | + | rmdir | rmdir dirname
如:rmdir /data/testdir | 删除目录命令。后面跟一个参数,即目录的绝对路径。
系统类型:小型系统和标准系统 | + | write | write filename value
如:write /data/testfile 0 | 写文件命令。后面跟两个参数,第一个参数是文件的绝对路径,第二个参数是要写入文件的字符串。
系统类型:小型系统和标准系统 | + | stop | stop serviceName
如:stop console | 关闭服务命令。后面跟一个参数,即要关闭的服务名。
系统类型:小型系统和标准系统 | + | copy | copy oldfile newfile
如:copy /data/old /data/new | 拷贝文件命令。后面跟两个参数,第一个参数是原文件绝对路径,第二个参数是新文件绝对路径。
系统类型:小型系统和标准系统 | + | reset | reset serviceName
如:reset console | 重置服务命令。后面跟一个参数,即要重启的服务名。目前reset命令的策略是,如果一个服务没有启动,则该命令会将其拉起,如果一个服务处于运行状态,则该命令会将其关闭后重启。
系统类型:小型系统和标准系统 | + | reboot | reboot [subsystem]
如:reboot updater | 重启系统命令。后面可以跟一个参数,也可以没有参数,当没有参数时执行该命令,将会使设备重启到当前系统,当后面跟参数时,参数应当是子系统的名字,例如,reboot updater,将会重启进入updater子系统。
系统类型:小型系统和标准系统 | + | sleep | sleep time
如:sleep 5 | 睡眠命令。后面可以跟一个参数,该参数是睡眠时间, 限制睡眠时间在5秒内。
sleep命令谨慎使用。
系统类型:小型系统和标准系统 | + | domainname | domainname name
如:domainname localdomain | 设置域名。
系统类型:小型系统和标准系统 | + | hostname | hostname name
如:hostname localhost | 设置主机名命令。
系统类型:小型系统和标准系统 | + | wait | wait filepath [time]
如:wait /data/testfile 或 wait /data/testfile 5| 等待命令,等待时间不超过5秒。
系统类型:小型系统和标准系统 | + | setrlimit | setrlimit resource curValue maxValue
如:setrlimit RLIMIT_CPU 10 100| 设定资源使用限制命令。
系统类型:小型系统和标准系统 | + | write | write path content
如:write /proc/sys/kernel/sysrq 0 | 写文件命令。
系统类型:小型系统和标准系统 | + | exec | exec 可执行文件路径 可执行文件传的参数
如: exec /system/bin/mkdir /data/test.txt | 系统调用命令。
系统类型:小型系统和标准系统 | | syncexec | syncexec 可执行文件路径 可执行文件传的参数
如:syncexec /system/bin/udevadm trigger| 同步执行,syncexec 会调用wait等待子进程结束。参数个数不超过10个。
标准系统 - | mknode |mknod name { b \| c } Major Minor
如mknod path b 0644 1 9| 建立一个目录项和一个特殊文件的对应索引节点。
系统类型:标准系统 | - | makedev | makedev major minor
如:makedev -v update | 创建静态的设备节点命令,通常位于/dev目录下。
系统类型:标准系统 | - | symlink | symlink target link_name
如:symlink /proc/self/fd/0 /dev/stdin | 符号链接命令。
系统类型:标准系统 | - | trigger | trigger jobName
如:trigger early-fs | 触发job执行的命令。
系统类型:标准系统 | - | insmod | insmod [-f] [options]
如:insmod xxx.ko| 内核模块文件载入命令。
系统类型:标准系统 | + | mknode |mknod name { b \| c } Major Minor
如mknod path b 0644 1 9| 建立一个目录项和一个特殊文件的对应索引节点。
系统类型:标准系统 | + | makedev | makedev major minor
如:makedev -v update | 创建静态的设备节点命令,通常位于/dev目录下。
系统类型:标准系统 | + | symlink | symlink target link_name
如:symlink /proc/self/fd/0 /dev/stdin | 符号链接命令。
系统类型:标准系统 | + | trigger | trigger jobName
如:trigger early-fs | 触发job执行的命令。
系统类型:标准系统 | + | insmod | insmod [-f] [options]
如:insmod xxx.ko| 内核模块文件载入命令。
系统类型:标准系统 | | setparam | setparam paramName paramValue
如:setparam sys.usb.config hdc| 设置系统参数。
标准系统 | - | load_persist_params | load persist params
如:load_persist_params | 加载persist参数。load_persist_params命令后有且仅有一个空格。
系统类型:标准系统 | - | load_param | load params
如:load_param /data/test.normal.para| 将文件里的param加载到内存。
系统类型:标准系统 | - | load_access_token_id | 如:load_access_token_id | 将access token信息写入data/service/el0/access_token/nativetoken.json文件,load_access_token_id后有且只有一个空格。
系统类型:标准系统 | - | ifup | ifup 激活网络接口
如:ifup eth0 | 激活指定的网络接口。
系统类型:标准系统 | - | mount_fstab | mount_fstab fstab.test
如:mount_fstab /vendor/etc/fstab.test| 按照fstab挂载分区的命令。
系统类型:标准系统 | - | umount_fstab | umount_fstab fstab.test
如:umount_fstab /vendor/etc/fstab.test | 按照fstab卸载分区的命令。
系统类型:标准系统 | - | restorecon | restorecon file or dir
如:restorecon /file | 重新加载selinux 的context。
系统类型:标准系统 | - | stopAllServices | stopAllServices [bool]
如:stopAllServices false 或 stopAllServices | 停止所有服务, 最长响应时间默认10毫秒。
系统类型:标准系统 | - | umount |umount path
如:umount /vendor | 卸载已经挂载的硬件设备 。
系统类型:标准系统 | - | sync | 如:sync  | 同步写入数据到磁盘。sync后有且仅有一个空格。
系统类型:标准系统 | - | timer_start | timer_start serviceName
如:timer_start console | 启动服务计时器。
系统类型:标准系统 | - | timer_stop | timer_stop serviceName
如:timer_stop console | 停止服务计时器。
系统类型:标准系统 | - | init_global_key | init_global_key path
如:init_global_key /data | data分区文件加密key初始化。
系统类型:标准系统 | - | init_main_user | 如:init_main_user| 主用户目录加密。
系统类型:标准系统 | - | mkswap | mkswap file
如:mkswap /swapfile1 | 在一个文件或者设备上建立交换分区。
系统类型:标准系统 | - | swapon | swapon file
如:swapon /swapfile1| 激活交换空间。
系统类型:标准系统 | + | load_persist_params | load persist params
如:load_persist_params | 加载persist参数。load_persist_params命令后有且仅有一个空格。
系统类型:标准系统 | + | load_param | load params
如:load_param /data/test.normal.para| 将文件里的param加载到内存。
系统类型:标准系统 | + | load_access_token_id | 如:load_access_token_id | 将access token信息写入data/service/el0/access_token/nativetoken.json文件,load_access_token_id后有且只有一个空格。
系统类型:标准系统 | + | ifup | ifup 激活网络接口
如:ifup eth0 | 激活指定的网络接口。
系统类型:标准系统 | + | mount_fstab | mount_fstab fstab.test
如:mount_fstab /vendor/etc/fstab.test| 按照fstab挂载分区的命令。
系统类型:标准系统 | + | umount_fstab | umount_fstab fstab.test
如:umount_fstab /vendor/etc/fstab.test | 按照fstab卸载分区的命令。
系统类型:标准系统 | + | restorecon | restorecon file or dir
如:restorecon /file | 重新加载selinux 的context。
系统类型:标准系统 | + | stopAllServices | stopAllServices [bool]
如:stopAllServices false 或 stopAllServices | 停止所有服务, 最长响应时间默认10毫秒。
系统类型:标准系统 | + | umount |umount path
如:umount /vendor | 卸载已经挂载的硬件设备 。
系统类型:标准系统 | + | sync | 如:sync  | 同步写入数据到磁盘。sync后有且仅有一个空格。
系统类型:标准系统 | + | timer_start | timer_start serviceName
如:timer_start console | 启动服务计时器。
系统类型:标准系统 | + | timer_stop | timer_stop serviceName
如:timer_stop console | 停止服务计时器。
系统类型:标准系统 | + | init_global_key | init_global_key path
如:init_global_key /data | data分区文件加密key初始化。
系统类型:标准系统 | + | init_main_user | 如:init_main_user| 主用户目录加密。
系统类型:标准系统 | + | mkswap | mkswap file
如:mkswap /swapfile1 | 在一个文件或者设备上建立交换分区。
系统类型:标准系统 | + | swapon | swapon file
如:swapon /swapfile1| 激活交换空间。
系统类型:标准系统 | | mksandbox | mksandbox fileName
如:mksandbox system | 创建沙盒。
标准系统 | - | loadcfg | loadcfg filePath
如:loadcfg /patch/fstab.cfg | 加载其他cfg文件命令。后面跟着的目标文件大小不得超过50KB,且目前仅支持加载/patch/fstab.cfg,其他文件路径和文件名均不支持。/patch/fstab.cfg文件的每一行都是一条命令,命令类型和格式必须符合本表格描述,命令条数不得超过20条。
系统类型:小型系统 | + | loadcfg | loadcfg filePath
如:loadcfg /patch/fstab.cfg | 加载其他cfg文件命令。后面跟着的目标文件大小不得超过50KB,且目前仅支持加载/patch/fstab.cfg,其他文件路径和文件名均不支持。/patch/fstab.cfg文件的每一行都是一条命令,命令类型和格式必须符合本表格描述,命令条数不得超过20条。
系统类型:小型系统 | ### 接口说明 jobs管理属于init启动过程中的一环,是一个流程化的功能,是完全服务于init启动过程的,并不对其他组件提供任何功能接口,其运行逻辑契合cfg中命令组的管理,无法对其他类型管理提供帮助。下述主要介绍其在init当中的调用逻辑。