faqs-init.md 2.0 KB
Newer Older
D
duangavin123 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
# 启动恢复常见问题


## 系统启动过程中打印“parse failed!”错误后停止启动

**现象描述**

系统启动过程中,打印“[Init] InitReadCfg, parse failed! please check file /etc/init.cfg format.”错误,启动过程停止,如下图所示:

  **图1** 运行报错图

  ![zh-cn_image_0000001200053087](figures/zh-cn_image_0000001200053087.png)

**可能原因**

修改init.cfg文件时,漏掉或多加了逗号或括号等,导致init.cfg文件的json格式被破坏。

**解决办法**

仔细检查init.cfg文件,确保其格式符合json格式要求。


## 系统启动过程未结束就自动重启,如此反复持续

**现象描述**

镜像烧写完成后系统启动,启动过程未完成即自动重新启动,如此反复持续。

**可能原因**

被init启动的服务都有一个叫做“importance”的属性(详见[第2章表3](../subsystems/subsys-boot-init.md)第二章节表3描述)。

- 当该属性为0时,表示若当前服务进程退出,init不需要重启单板。

- 当该属性为1时,表示若当前服务进程退出,init需要重启单板。

因此出现上述现象的可能原因:有“importance”属性为1的服务在每次启动的过程中都会退出(可能是进程崩溃或出错自动退出),导致init进程自动重启单板。

**解决办法**

1. 需要通过日志确认崩溃或报错退出的服务,并解决其崩溃/报错的问题,然后重新烧写镜像即可。

2. 也可以将崩溃/报错退出的服务的“importance”属性改为0,然后重新烧写镜像,这样即使其退出,init也不会重启单板。


## 参数正确的情况下调用SetParameter/GetParameter返回失败

**现象描述**

在各参数正确的情况下调用SetParameter/GetParameter返回失败。

**可能原因**

程序对SetParameter/GetParameter这两个接口做了权限校验,在各参数正确的情况下调用SetParameter/GetParameter返回操作失败,很有可能是调用者的uid大于1000,没有调用权限。

**解决办法**

无需处理