博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux重启命令_3条命令重启Linux(另外4种安全方式)
阅读量:2522 次
发布时间:2019-05-11

本文共 4364 字,大约阅读时间需要 14 分钟。

linux重启命令

Linux完全有能力运行,而不需要数周,而是数年,而无需重新启动。 在某些行业中,这正是Linux的功能,这要归功于kpatchkgraph之类的进步。

但是,对于笔记本电脑和台式机用户而言,该指标有些极端。 虽然这可能不是日常情况,但至少每周一次,有时您有充分的理由重新启动计算机。 对于不需要经常重启的系统,Linux为何时重新启动提供了很多选择。

了解您的选择

不过,在继续之前,请注意重新启动。 在每个操作系统上,重新引导是一个独特的过程。 即使在系统中,由于不同的初始化系统或命令设计,关闭电源和重新启动的命令的行为也可能有所不同。

尽管有这个因素,两个概念仍然至关重要。 首先,在POSIX系统上很少需要重新启动。 如果需要,您的Linux机器一次可以运行数周或数月,而无需重新启动。 除非软件安装程序或更新程序特别建议,否则无需重新启动计算机即可重新启动计算机。 再说一次,重启也没有什么坏处,所以一切取决于您。

其次,重新启动是一个友好的过程,可以让程序有时间退出,保存文件,删除临时文件,更新文件系统日志等等。 尽可能使用GUI或终端中的预期接口重新启动。 如果强迫计算机关闭或重新启动,则可能会丢失未保存的数据甚至是最近保存的数据,甚至会损坏重要的系统信息。 只有在没有其他选择时,才应强制关闭计算机

点击按钮

重新引导或关闭Linux的第一种方法是最常见的方法,对于大多数台式机用户而言,无论他们使用哪种操作系统,它都是最直观的:这是GUI中的电源按钮。 由于关机和重新启动是工作站上的常见任务,因此通常可以在几个不同的位置找到电源按钮(通常具有重新启动和关闭选项)。 在GNOME桌面上,它在系统托盘中:

The GNOME power button.

它也在GNOME 活动菜单中:

The GNOME Activities menu power button.

在KDE桌面上,电源按钮可以在“ 应用程序”菜单中找到:

The KDE power buttons via the Applications menu.

您还可以通过右键单击桌面并选择“ 离开”选项来访问KDE电源控件,这将打开您在此处看到的窗口:

The KDE power buttons via the Leave option.

其他桌面在这些主题上提供了不同形式,但是总体思路是相同的:使用鼠标找到电源按钮,然后单击它。 您可能需要在重新引导和关闭电源之间进行选择,但最后结果几乎是相同的:很好地停止了进程,以便保存数据并删除临时文件,然后将数据同步到驱动器,然后将系统同步断电。

按下实体按钮

大多数计算机都有一个物理电源按钮。 如果按该按钮,Linux桌面可能会显示电源菜单,其中包含用于关闭或重新引导的选项。 此功能由子系统提供,该子系统与主板的固件进行通信以控制计算机的状态。

ACPI很重要,但范围有限,因此从用户的角度来看,没有太多可配置的内容。 通常,ACPI选项通常称为Power ,并设置为默认设置。 如果要更改此设置,可以在系统设置中进行。

在GNOME上,打开系统任务栏菜单,然后选择“ 活动” ,然后选择“设置”。 接下来,在左列中选择“ 电源”类别,这将打开以下菜单:

GNOME’s power button settings.

在“ 挂起和电源按钮”部分中,选择所需的物理电源按钮。

在台式机上,该过程相似。 例如,在KDE上,“ 系统设置”中的“ 电源管理”面板包含“ 按钮事件处理”选项

KDE电源管理

opensource.com

配置按钮事件的处理方式后,按下计算机的物理电源按钮将遵循您选择的任何选项。 根据您的计算机供应商(或零件供应商,如果您是自己制造的),轻按一个按钮,或者可能需要稍长一点的按动,因此您可能需要做一些测试才能掌握。

但是,请注意不要长时间按,因为它可能会在没有警告的情况下关闭计算机。

运行systemctl命令

如果您在终端上进行的操作比在GUI桌面上进行的操作更多,则可能更希望使用命令重新启动。 广义上讲,重新引导和关闭电源是init系统的过程-在接收到电源信号(分别为打开或关闭)之后使计算机启动或关闭的程序序列。

在大多数现代Linux发行版中, systemd是init系统,因此重新引导和关闭电源都可以通过systemd用户界面systemctl进行 。 在许多其他选项中, systemctl命令接受暂停 (暂停磁盘活动但不切断电源) 重启 (暂停磁盘活动并向主板发送复位信号)并关闭电源(暂停磁盘活动性,然后切断电源)。 这些命令通常等效于启动相同名称的目标文件。

例如,触发重启:

$  sudo systemctl start reboot.target

运行关机命令

传统的UNIX,在systemd出现之前(对于某些Linux发行版,例如来说, 现在 ),存在一些特定于停止系统的命令。 例如, shutdown命令可以关闭计算机的电源,但是它有几个选项可以精确控制其含义。

此命令需要一个时间参数(以分钟为单位),以便shutdown知道何时执行。 要立即重新启动,请附加-r标志:

$  sudo shutdown -r now

要立即断电:

$  sudo shutdown -P now

或者,您可以使用poweroff命令:

$  poweroff

要在10分钟后重新启动:

$  sudo shutdown -r 10

shutdown命令是关闭电源或重新启动计算机的安全方法,允许磁盘同步并结束进程。 此命令可在关闭后的最后5分钟内阻止新的登录,这在多用户系统上特别有用。

在当今的许多系统上, shutdown命令实际上只是对具有适当的重新引导或关闭电源选项的systemctl的调用。

运行重启命令

重启命令本身基本上是shutdown -r now的快捷方式。 在终端上,这是最简单,最快的重启命令:

$  sudo reboot

如果系统被阻止关闭(可能是由于失控的进程所致),则可以使用--force标志使系统始终关闭。 但是,此选项会跳过实际的关闭进程,这对于正在运行的进程可能会突然发生,因此仅应在shutdown命令阻止您关闭电源时使用。

在许多系统上, 重新引导实际上是通过适当的重新引导或关闭电源选项调用systemctl的。

在里面

在不带systemd的 Linux发行版上 ,您的计算机最多可以了解7个运行级别。 不同的发行版可以唯一地分配每种模式,但是通常0表示停止状态,6表示重新启动(介于两者之间的数字表示状态,例如单用户模式,多用户模式,GUI提示符和文本提示符) 。

这些模式在不带systemd的系统上的/ etc / inittab中定义。 在使用systemd作为初始化系统的发行中, / etc / inittab文件丢失了,或者只是一个占位符。

telinit命令是init系统的前端。 如果您使用的是systemd ,那么此命令是带有适当选项的systemctl的链接。

通过将计算机发送到运行级别0来关闭计算机电源:

$  sudo telinit 0

要使用相同的方法重启:

$  sudo telinit 6

此命令对您的数据有多不安全,完全取决于您的init配置。 大多数发行版都试图通过将运行级别映射到友好的命令来防止您拔出插头(或与其等效的数字)。

您可以通过阅读/etc/rc.d/etc/init.d中的初始化脚本,或者通过阅读/ lib / systemd / system /中systemd目标,自己了解每个运行级别会发生什么。

施加蛮力

到目前为止,我已经介绍了重新引导或关闭Linux计算机的所有正确方法。 确切地说,我在此处包括关闭Linux计算机的其他方法,但绝不建议使用这些方法。 它们并非设计为每天重新启动或关闭命令(为此存在重新启动关闭 ),但是它们是完成任务的有效手段。

如果您尝试这些方法,请在虚拟机中尝试它们。 否则,仅在紧急情况下使用它们。

程序

比init系统低一个步骤是/ proc文件系统,它几乎是计算机上发生的所有事情的虚拟表示。 例如,您可以查看您的CPU,就像它们是文本文件一样(使用cat / proc / cpuinfo ),查看笔记本电脑电池中还剩下多少电量,或者经过某种方式重新启动系统。

Linux内核中有一项针对系统请求的规定(大多数键盘上为Sysrq )。 您可以使用组合键直接与此子系统进行通信,理想情况下,无论计算机处于什么状态都可以; 由于Sysrq键可以是特殊的功能键,需要使用其他键才能访问(例如,许多笔记本电脑上为Fn ),因此它在某些键盘上变得很复杂。

一种不太可能失败的选项是使用echo将信息手动插入/ proc中 。 首先,请确保已启用Sysrq系统:

$  sudo echo 1 > / proc / sys / kernel / sysrq

要重新启动,可以使用Alt + Sysrq + B或键入:

$  sudo echo b > / proc / sysrq-trigger

这种方法不是定期重新启动计算机的合理方法,但可以在紧急情况下完成工作。

系统

内核参数可以在运行时使用sysctl进行管理。 内核参数很多,您可以使用sysctl --all查看所有这些参数。 除非您知道要查找的内容,否则对您来说可能没有多大意义,在这种情况下,您正在寻找kernel.panic

您可以使用-value选项查询内核参数:

$  sudo sysctl --value kernel.panic

如果返回0,则说明您正在运行的内核没有特殊设置,至少在默认情况下,可以在内核崩溃时重新启动。 这种情况相当典型,因为在灾难性的系统崩溃中立即重新启动会使诊断故障原因变得困难。 再说一次,无论内核从故障后自动重启中受益什么,都需要保持运行的系统,因此在某些情况下确实可以打开该选项。

您可以通过实验来激活此功能(如果继续进行,请在虚拟机中而不是在实际计算机上尝试):

$  sudo sysctl kernel.reboot= 1

现在,如果您的计算机遇到内核崩溃,它将设置为重新启动,而不是耐心等待您诊断问题。 您可以通过使用sysrq模拟灾难性崩溃来进行测试 。 首先,请确保已启用Sysrq:

$  sudo echo 1 > / proc / sys / kernel / sysrq

然后模拟内核恐慌:

$  sudo echo c > / proc / sysrq-trigger

您的计算机立即重新启动。

负责地重启

了解所有这些选项并不意味着您应该全部使用它们。 请仔细考虑您要完成的工作以及所选命令将执行的操作。 您不希望鲁ck破坏系统。 这就是虚拟机的用途。 但是,拥有太多选择意味着您已经准备好应对大多数情况。

我是否遗漏了您最喜欢的重启或关闭系统电源的方法? 列出我在评论中错过的内容!

翻译自:

linux重启命令

转载地址:http://bpbzd.baihongyu.com/

你可能感兴趣的文章
iOS开发系列之远程控制事件
查看>>
Scala当中parallelize并行化的用法
查看>>
java发展史
查看>>
实习小记-python中可哈希对象是个啥?what is hashable object in python?
查看>>
在SQL Server里为什么我们需要更新锁
查看>>
P1233木棍加工
查看>>
查看sqlserver数据库的编码格式
查看>>
管理带有子模块的git库[转]
查看>>
现在可以去哪些地方了解更好的抖音教学方式
查看>>
innodb与myisam的对比总结
查看>>
ORA:01745 无效的主机 绑定变量名
查看>>
Windows提权EXP辅助工具——Windows-Exploit-Suggester
查看>>
操作数数据类型 ntext 对于 max 运算符无效
查看>>
gcc 编译小得
查看>>
python基础之五种常用数据类型
查看>>
多线程和蕃茄炒蛋
查看>>
SSH错误:packet_write_wait: Connection to 10.57.19.250 port 22: Broken pipe
查看>>
ACTION 关联表之间查询语句 SQL语句写法
查看>>
find命令
查看>>
Ambari——大数据平台的搭建利器之进阶篇
查看>>