侧边栏壁纸
Linux入门自学网博主等级

每日学一条Linux命令,终成Linux大神

  • 累计撰写 725 篇文章
  • 累计创建 143 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Linux init命令教程:如何控制系统的运行状态(附实例详解和注意事项)

Linux init命令介绍

init命令是Linux系统中最重要的命令之一,它是所有进程的父进程,也是系统启动和关闭的最后一步。init的全称是initialization,它的作用是根据/etc/inittab文件中的脚本来创建和管理各种进程。/etc/inittab文件是init命令的配置文件,它定义了不同的运行级别(runlevel)和相应的进程。init命令可以控制系统的运行状态,比如单用户模式、多用户模式、图形界面模式等。init命令也可以重新加载配置文件、重新执行自身或发送信号给其他进程。

Linux init命令适用的Linux版本

init命令是传统的Linux系统初始化方式,它适用于大多数的Linux发行版,比如Red Hat、CentOS、Debian、Ubuntu等。但是,一些新的Linux发行版,比如Fedora、Arch Linux、openSUSE等,已经采用了systemd作为系统初始化方式,它是一个更先进的系统管理工具,可以替代init命令。如果你的Linux系统使用了systemd,你可以用systemctl命令来代替init命令,它们的功能和语法类似,但是systemctl命令更强大和灵活。你可以用以下命令来检查你的Linux系统使用的是哪种初始化方式:

[linux@bashcommandnotfound.cn ~]$ ps -p 1

如果输出的是init,说明你的系统使用的是init命令;如果输出的是systemd,说明你的系统使用的是systemd。

Linux init命令的基本语法

init命令的基本语法如下:

init [选项] {命令}

其中,选项可以是以下之一:

  • -t 秒数:在执行命令之前,等待指定的秒数。
  • -b:强制重新引导系统,不执行任何关闭脚本。
  • -s:在执行命令之前,切换到单用户模式。

命令可以是以下之一:

  • 0:关闭系统。
  • 6:重新引导系统。
  • 2, 3, 4, 5:启动对应的运行级别。
  • 1, s, S:进入救援模式。
  • q, Q:重新加载init配置文件。
  • u, U:重新执行init命令。

Linux init命令的常用选项或参数说明

init命令的常用选项或参数如下表所示:

选项或参数说明
0关闭系统,相当于执行shutdown -h now命令。
6重新引导系统,相当于执行reboot命令。
2启动多用户模式,但不配置网络接口或启动守护进程。
3启动多用户模式,配置网络接口和启动守护进程。
4用户自定义的运行级别,一般不使用。
5启动多用户模式,配置网络接口和启动守护进程,并进入图形界面。
1, s, S进入救援模式,不配置网络接口或启动守护进程,只允许root用户登录。
q, Q重新加载init配置文件,使之生效。
u, U重新执行init命令,相当于执行telinit u命令。

Linux init命令的实例

下面是一些使用init命令的实例:

实例1:关闭系统

如果要关闭系统,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ init 0

这个命令会执行所有的关闭脚本,然后关闭电源。

实例2:重新引导系统

如果要重新引导系统,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ init 6

这个命令会执行所有的关闭脚本,然后重新启动系统。

实例3:进入救援模式

如果要进入救援模式,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ init 1

或者

[linux@bashcommandnotfound.cn ~]$ init s

或者

[linux@bashcommandnotfound.cn ~]$ init S

这些命令都会切换到单用户模式,不配置网络接口或启动守护进程,只允许root用户登录。这个模式可以用来修复一些系统问题,比如文件系统损坏、密码丢失等。

实例4:切换到图形界面

如果要切换到图形界面,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ init 5

这个命令会启动多用户模式,配置网络接口和启动守护进程,并进入图形界面。这个模式可以用来进行一些图形化的操作,比如浏览网页、播放视频等。

实例5:重新加载init配置文件

如果修改了init配置文件,想要使之生效,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ init q

或者

[linux@bashcommandnotfound.cn ~]$ init Q

这些命令都会重新加载init配置文件,但不会改变当前的运行级别。

实例6:重新执行init命令

如果想要重新执行init命令,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ init u

或者

[linux@bashcommandnotfound.cn ~]$ init U

这些命令都会重新执行init命令,相当于重启init进程,但不会影响其他进程。

实例7:等待10秒后关闭系统

如果要等待10秒后关闭系统,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ init -t 10 0

这个命令会在10秒后执行所有的关闭脚本,然后关闭电源。

实例8:强制重新引导系统

如果要强制重新引导系统,不执行任何关闭脚本,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ init -b 6

这个命令会立即重新启动系统,不管有没有未保存的数据或正在运行的进程。

实例9:切换到单用户模式

如果要切换到单用户模式,不配置网络接口或启动守护进程,只允许root用户登录,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ init -s 1

或者

[linux@bashcommandnotfound.cn ~]$ init -s s

或者

[linux@bashcommandnotfound.cn ~]$ init -s S

这些命令都会在切换到单用户模式之前,先执行所有的关闭脚本,然后只允许root用户登录。这个模式可以用来修复一些系统问题,比如文件系统损坏、密码丢失等。

实例10:切换到多用户模式

如果要切换到多用户模式,配置网络接口和启动守护进程,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ init 3

这个命令会启动多用户模式,配置网络接口和启动守护进程。这个模式可以用来进行一些网络或服务相关的操作,比如远程登录、文件传输等。

Linux init命令的注意事项

使用init命令时,需要注意以下几点:

  • init命令只能由root用户或具有CAP_SYS_BOOT能力的用户执行,普通用户不能执行。
  • init命令是传统的Linux系统初始化方式,一些新的Linux发行版已经使用了systemd替代了init命令,如果你的系统使用了systemd,你可以用systemctl命令来代替init命令。
  • 如果你执行了init 0或init 6命令,系统会关闭或重新引导,你可能会丢失未保存的数据,所以在执行这些命令之前,最好先保存你的工作。
  • 如果你执行了init 1, s或S命令,系统会进入救援模式,只允许root用户登录,你可能会无法访问网络或其他服务,所以在执行这些命令之前,最好先备份你的数据。
  • 如果你执行了init 2, 3, 4或5命令,系统会切换到相应的运行级别,你可能会看到一些进程的启动或停止的信息,所以在执行这些命令之前,最好先关闭你的图形界面或其他应用程序。
  • 如果你执行了init q, Q, u或U命令,系统会重新加载或重新执行init命令,你可能会看到一些进程的重启的信息,所以在执行这些命令之前,最好先确认你的配置文件是否正确。
  • 如果你的系统没有init命令,或者你输入了错误的选项或参数,你可能会看到以下的错误信息:

bash: init: command not found

这时,你可以检查你的系统是否使用了systemd,或者你的环境变量是否正常。

Linux init命令的快捷键

使用init命令时,你可以使用一些快捷键来方便地执行一些常用的命令,而不需要输入完整的命令。以下是一些常用的快捷键:

  • Ctrl+Alt+Delete:重新引导系统,相当于执行init 6命令。
  • Ctrl+Alt+F1~F6:切换到不同的终端,相当于执行chvt命令。
  • Ctrl+Alt+F7:切换到图形界面,相当于执行chvt 7命令。
  • Alt+Up:向上滚动终端的屏幕,相当于执行less命令。
  • Alt+Down:向下滚动终端的屏幕,相当于执行more命令。

Linux init命令相关命令

除了init命令,还有一些与之相关的命令,它们可以用来查看或修改系统的运行级别或初始化方式。以下是一些相关的命令:

0

评论区