AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 434560
Accepted
CodeChari
CodeChari
Asked: 2018-03-31 11:21:06 +0800 CST2018-03-31 11:21:06 +0800 CST 2018-03-31 11:21:06 +0800 CST

如果我使用“telinit 6”而不是“rebo​​ot”命令重新启动我的计算机,它会有什么不同?[复制]

  • 772
这个问题在这里已经有了答案:
reboot , init 6 和 shutdown -r now 有什么区别? (4 个回答)
4年前关闭。

我试图了解 Unix 中的运行级别,我发现运行级别 6 是重新启动状态。所以我尝试使用该命令切换到运行级别 6 ,它与我的计算机上的telinit 6工作方式相同。reboot我使用的是 Kali Linux,所以不需要 sudo。

更改/切换符文级别只是调用某个进程的命令吗?当我们启动、重新启动或关闭电源时,我们只是在改变运行级别吗?

linux boot-loader
  • 2 2 个回答
  • 6597 Views

2 个回答

  • Voted
  1. jdwolf
    2018-03-31T12:44:24+08:002018-03-31T12:44:24+08:00

    Linux 中有一个名为 SysVinit 的 init 系统,它仿照 UNIX System V 的 init 系统。某些版本的 Linux 实际上仍然使用这个系统,保持与它的兼容性,例如 Systemd 的 SysVcompat,或者部分替换它(没有 sysvcompat,但它们仍然使用 sysv 脚本,如 Debian),或者将它全部替换,例如“纯” Systemd 系统。

    SysV 本质上实现了运行级别的概念。脚本放置在 /etc/rc{runlevel}.d/ 中,其中 runlevel 是运行级别。SysV 还定义了运行级别的默认排序行为,包括默认转到哪一个。每个运行级别中的每个脚本都使用其启动或关闭功能运行,具体取决于该运行级别是上升还是下降。因此,在 sysvinit 系统中,是的,当您启动其第一次运行 /sbin/init 时,该程序将随后运行每个运行级别中每个脚本的启动功能。我还应该指出,您可以安装比 /etc/rc* 中链接的脚本更多的脚本,这就是您启用和禁用脚本以及它们控制的服务的方式。

    不使用 sysv 的系统根本不需要像 systemd 那样做这个。简而言之,systemd 具有定义其依赖关系的单元,例如其他服务、挂载点、计时器或诸如“network.target”之类的目标。与其详细介绍 systemd,我只想说 systemd 保持与 sysv 脚本的完全兼容性,但不一定是它的运行级别。另外 init 可以先运行,或者 systemd 可以运行然后运行所有 sysv 的脚本。或者你的发行版可能已经用 systemd 单元替换了你所有的 sysv 脚本。大多数发行版都会安装兼容性脚本,以便通过 systemd之类的东西reboot或工作。telinit

    • 1
  2. Best Answer
    Abhik Bose
    2018-03-31T12:52:28+08:002018-03-31T12:52:28+08:00

    在init基于操作系统/sbin/telinit中链接到/sbin/init和在systemed基于操作系统中它链接到/sbin/systemed. 因此,这是一种与或类似软件进行通信的init方式systemed。

    telinit 6和的结果reboot是一样的,但他们却领悟了不同的想法。

    引用自http://www.tutorialspoint.com/unix_commands/init.htm

    运行级别是系统的软件配置,它只允许一组选定的进程存在。

    因此,更改runlevel不等于rebootingor power off。

    基于init操作系统的操作系统runlevel由/etc/inittab. 在启动系统时init读取文件以决定启动哪些进程组。运行级别 6 表示不要启动任何进程并重新启动。

    改变/etc/inittab是永久性的。如果文件被修改init,则在重新启动时更改运行级别并坚持下去,直到进一步修改文件。

    效果telinit是一次性的,无需重启。重新启动后init再次读取/etc/inittab并相应地启动运行级别。

    现在,运行级别 6 表示init要终止所有子进程并重新启动。telinit 6 init杀死所有子进程并重新启动。上,发出reboot命令,init 做同样的事情。但是,这并不意味着更改运行级别就等于重新启动。因为如果您将系统的运行级别更改为 6 永久使用/etc/inittab它将继续重新启动。

    如果您使用telinit 6重新启动系统而不是reboot命令它不会有任何区别。

    • 1

相关问题

  • 有没有办法让 ls 只显示某些目录的隐藏文件?

  • 使用键盘快捷键启动/停止 systemd 服务 [关闭]

  • 需要一些系统调用

  • astyle 不会更改源文件格式

  • 通过标签将根文件系统传递给linux内核

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    ssh 无法协商:“找不到匹配的密码”,正在拒绝 cbc

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    如何卸载内核模块“nvidia-drm”?

    • 13 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add 返回:“连接代理时出错:没有这样的文件或目录” 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya 为什么 Linux 使用 LF 作为换行符? 2017-12-20 05:48:21 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve