当我们从shell, 启动一个跑在另外一个tty的shell时将会碰到这个提示。 最常见的是, shell直接把/dev/console作为它的标准输入输出。比如 gentoo, arch使用硬盘安装大法, 但是却找不到硬盘是, 它会自动启动一个shell, 这个shell就是没有job control的了。

至于原因, 涉及的内容比较多, 所以我就不想在这里作详细的分析了。想深入了解的话, 自己看看 AUPE(这是一本书 英文全称Advanced Programming in the UNIX Environment 中文叫做 UNIX环境高级编程 )就是了。 大致的原因是, 一个session leader试图打开一个终端设备时, 假如这个leader没有控制终端, 那么这个终端设备将自动成为改session leader的的控制终端。了解这一点就不难理解为什么会有这个提示了: 就是说shell没有找到控制终端。

解决的办法很简单: 使用agetty 来调用shell。 agetty会创建新的会话, 自然没有了控制终端。所以自然, agetty所打开的tty自动成为了它的控制终端, 并且被agetty调用shell也会继承这一点。

以下是一个例子:

#!/bin/shTMPNAME=`mktemp /tmp/bbsh.XXX`
echo '#!/bin/sh' > $TMPNAME
echo 'exec /bin/sh' >> $TMPNAMEchmod +x $TMPNAME#请确保tty8 没有被其他程序正在使用
/sbin/agetty -l /tmp/bbsh 38400 tty8 linux
rm $TMPNAME

执行该脚本之后将在tty8, 运行一个agetty。 随意输入一个login name: 之后回车,将看到一个shell, 并且这个shell是带有job control的。这样你就可以建一个更好的minilinux了。

linux shell 提示 bash: no job control in this shell相关推荐

  1. Linux 7 提示 -bash: ifconfig: command not found

    在 Linux 7 服务器上,如果执行 ifconfig 命令,提示信息如下: -bash: ifconfig: command not found 说明该包没有安装,不能执行 ifconfig 命令 ...

  2. Linux | 终端显示为bash-4.1$以及提示bash:command not found的解决方法

    本文总结如何解决 Linux 终端显示为 bash-4.1 1 以及提示 bash: command not found 情形 2 ' 3 的解决方法. Updated: 2022 / 7 / 18 ...

  3. linux的shell类型_Linux中有哪些不同类型的Shell?

    linux的shell类型 Shells are an important part of any Linux user session. We are provided several differ ...

  4. s5pv210启动debian出错提示bash: cannot set terminal process group (-1): Inappropriate ioctl for device...

    1.启动参数如下: bootargs=root=/dev/nfs nfsroot=192.168.1.8:/opt/wheezy_fs ip=192.168.1.9:192.168.1.8:192.1 ...

  5. linux系列(七):shell编程、shell概念、ssh协议概念、执行shell文件的三种方式

    1 概念 https://www.xshell.com/zh/free-for-home-school/ 1.1 xshell(执行linux命令的客户端软件) Xshell [1] 是一个强大的安全 ...

  6. shell脚本详解(一)——初学shell脚本必看哦

    shell脚本详解 一.Shell脚本概述 1.1.shell脚本的概念 1.2.shell脚本应用场景 1.3.shell脚本能干什么 1.4. shell的作用--命令翻译器,"翻译官& ...

  7. linux中的bash shell的特性

    linux中的bash shell特性(基础) Shell也称命令行解释器,是我们对linux进行操作最直接的接触的脚本,所以说这对我们的今后的学习过程中非常重要. 当然,linux这种功能强大的操作 ...

  8. linux bash命令找不到,Linux下提示命令找不到:bash:command not found

    Linux下输入某些命令时会提示:bash:command not found. 首先,查看$PATH中是否包含了这些命令. $PATH:决定了shell到哪些目录中去寻找命令或程序,PATH值是一系 ...

  9. linux 中输入bash,Linux上Bash Shell编程

    Linux下Bash Shell编程 Bash Shell Programming in Linux Linux下Bash Shell编程 Bash what? 进阶的内容是什么? Okay, I g ...

最新文章

  1. Ubuntu在命令行下不能够切换字母的大小写,只能输入大写字母
  2. linux权限管理(chown、chgrp、chomd)
  3. 吴恩达《Machine Learning》精炼笔记 10:异常检测
  4. 收集10个顶级的CSS3代码生成器
  5. websockets_使用Java WebSockets,JSR 356和JSON映射到POJO的
  6. 人类遗传变异神库 | ClinVar数据库详解
  7. C# 利用类名字符串调用并执行类方法
  8. Java中哪些可以作为GC Roots
  9. Pandas 基本文本数据处理
  10. 最新cuDNN 7[Linux]百度云下载[免费] 适用于CUDA 10.0
  11. 特征选择和特征提取,及其分类
  12. 【评测】NHEK细胞(正常成人表皮角质形成层细胞)
  13. Mysql建数据库建表语法实践
  14. 宁皓网ninghao.net这个人的教程不错
  15. 解决或者设置网页变灰-CSS-filter属性-哀悼
  16. Unity 代码动态改变Sprite的实验
  17. python3GUI--翻译器By:PyQt5(附源码)
  18. android菜单回弹,Android--实现ViewPager边界回弹效果(转)
  19. 计算机日常应用之教学PPT-1
  20. 从「裁员无赔偿」到「拿到n+1」,看的我热血沸腾,我都想离职了

热门文章

  1. 数据中心网络架构 — 传统数据中心网络 — 胖树型三层网络架构
  2. 计算机网络基础 — 网络设备 — 网桥(Bridge)
  3. 分布式任务队列 Celery — 深入 Task
  4. Openstack组件实现原理 — Glance架构(V1/V2)
  5. Redis分布式锁 Spring Schedule实现任务调度
  6. 73. 解决ExtJS TreePanel 的 iconCls设置问题
  7. JDBC PreparedStatement 实现原理【推荐阅读】
  8. 【Linux基础】第五周作业
  9. pear Auth的使用
  10. 【Vegas原创】VMWare安装Linux5的注意事项