开发板启动时,内核打印出"can't access tty,job control turned off"
内核 启动 打印 access can Control job 开发板
2023-09-14 08:58:46 时间
启动后的最后一行提示can't access tty,job control turned off,
这说明没有进入到控制台,原因就在于文件系统的/etc/inittab 这个文件里有问题
vi /etc/inittab
加上这一句:console::askfirst:-/bin/sh (注意:我之前写的是console::askfirst:/bin/sh,缺少了-,所以才报错)
因为,uboot的启动参数指定了console = ttySAC0 ,也就是串口控制台。所以要在/bin/sh 前加 - 。
--------------------------------------------------------
问题分析:
首先来了解下inittab文件,该文件保存在/etc/inittab
如果存在/etc/inittab文件,Busybox init 程序解析它,然后按照他的指示创建各种子进程,否则使用默认的配置创建子进程.
/etc/inittable文件中每个条目用来定义一个子进程,并确定它的启动方法,格式定义如下:
<id>:<runlevels>:<action>:<process>
例如:
ttySAC0::askfirst:-/bin/sh
对于Busybox init进程,上述各个字段作用如下:
<id>: 表示这个子进程要使用的控制台(既标准输入、标准输出、标准错误设备)。若果省略,则使用与init进程一样的控制台
<runlevels>:对于busybox init程序,这个字段没有意思,可以省略。
<action>:表示init进程如何控制这个子进程。
<process>:要执行的程序,它可以只可执行程序,也可以是脚本
如果<process>字段前有“-”字符,这个程序被称为“交互的”
这说明没有进入到控制台,原因就在于文件系统的/etc/inittab 这个文件里有问题
vi /etc/inittab
加上这一句:console::askfirst:-/bin/sh (注意:我之前写的是console::askfirst:/bin/sh,缺少了-,所以才报错)
因为,uboot的启动参数指定了console = ttySAC0 ,也就是串口控制台。所以要在/bin/sh 前加 - 。
--------------------------------------------------------
问题分析:
首先来了解下inittab文件,该文件保存在/etc/inittab
如果存在/etc/inittab文件,Busybox init 程序解析它,然后按照他的指示创建各种子进程,否则使用默认的配置创建子进程.
/etc/inittable文件中每个条目用来定义一个子进程,并确定它的启动方法,格式定义如下:
<id>:<runlevels>:<action>:<process>
例如:
ttySAC0::askfirst:-/bin/sh
对于Busybox init进程,上述各个字段作用如下:
<id>: 表示这个子进程要使用的控制台(既标准输入、标准输出、标准错误设备)。若果省略,则使用与init进程一样的控制台
<runlevels>:对于busybox init程序,这个字段没有意思,可以省略。
<action>:表示init进程如何控制这个子进程。
<process>:要执行的程序,它可以只可执行程序,也可以是脚本
如果<process>字段前有“-”字符,这个程序被称为“交互的”
相关文章
- 启动新内核出现:Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004
- ARM-Linux内核移植之(一)——内核启动流程分析
- Linux-0.0.1内核阅读连载笔记-2013.08.20
- 用户空间与内核空间,进程上下文与中断上下文[总结]
- MySQL内核月报 2014.09-MySQL· 限制改进·GTID和升级
- MySQL内核月报 2014.12-MySQL· 性能优化·并行复制外建约束问题
- Linux 内核启动流程
- 【Linux 内核 内存管理】memblock 分配器编程接口 ② ( memblock_add_range 函数分析 | memblock_insert_region 函数分析 )
- 【Linux 内核 内存管理】物理内存组织结构 ③ ( 内存管理系统三级结构 | 内存节点描述 | 内存节点 pglist_data 结构体 | pglist_data 结构体源码 )
- 【Linux 内核 内存管理】Linux 内核内存布局 ④ ( ARM64 架构体系内存分布 | 内核启动源码 start_kernel | 内存初始化 mm_init | mem_init )
- 【错误记录】编译 Linux 内核报错 ( fatal error: openssl/opensslv.h: No such file or directory )
- 【错误记录】编译 Linux 内核报错 ( /bin/sh: 1: bison: not found )
- Chromium内核原理之网络栈
- Linux内核启动相关流程
- linux内核radeon gpu源码解析5 —— drm_get_pci_dev函数详解2
- Linux内核之capabilities能力
- 波兰极客用一张软盘运行Linux系统,用的还是最新内核
- 无法打开内核设备“.Globalvmx86”: 系统找不到指定的文件。
- 内核编程常用命令
- Linux dmesg 命令 - 打印内核环形缓冲区
- Android内核开发:图解Android系统的启动过程
- 启动内核,能启动内核但是无法进入内核,始终卡在某一地方,比如 No soundcards found.