Linux命令--重启系统的方法

原文网址:Linux命令--重启系统的方法_IT利刃出鞘的博客-CSDN博客

简介

本文介绍Linux重启系统的方法。

普通重启

reboot

reboot的工作过程跟下边的halt差不多,不过它是引发主机重启,而halt是关机。它的参数与halt相差不多。

shutdown

简介

shutdown命令安全地将系统关机。 有些用户会使用直接断掉电源的方式来关闭linux,这是十分危险的。因为linux与windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失﹐使系统处于不稳定的状态﹐甚至在有的系统中会损坏硬件设备。而在系统关机前使用shutdown命令﹐系统管理员会通知所有登录的用户系统将要关闭。并且login指令会被冻结﹐即新的用户不能再登录。直接关机或者延迟一定的时间才关机都是可能的﹐还可能重启。这是由所有进程〔process〕都会收到系统所送达的信号〔signal〕决定的。这让像vi之类的程序有时间储存目前正在编辑的文档﹐而像处理邮件〔mail〕和新闻〔news〕的程序则可以正常地离开等等。

shutdown的工作是送信号〔signal〕给init程序,要求它改变runlevel。

Runlevel 0被用来停机〔halt〕,runlevel 6是用来重新激活〔reboot〕系统﹐而runlevel 1则是被用来让系统进入管理工作可以进行的状态﹔这是预设的﹐假定没有-h也没有-r参数给shutdown。要想了解在停机〔halt〕或者重新开机〔reboot〕过程中做了哪些动作﹐你可以在这个文件/etc/inittab里看到这些runlevels相关的资料。

使用示例

  • shutdown -h now  #立刻关机
  • shutdown -h +1    #1分钟后关机
  • shutdown -r +1  #1分钟后重启

shutdown 参数

  • -c:cancel,其他用户可以取消目前正在执行的关机程序,或者Control-C终止shutdown程序
  • -k:仅仅向每个登录用户发出警告信息,并不真正关机
  • -f:重新启动时不执行fsck文件系统检查命令;
  • -F:重新启动时执行fsck文件系统检查命令;
  • -h:关机不关闭电源(halt)或关闭电源(power off),具体是哪一种取决于系统
  • -H --halt:关机(halt);
  • -P --poweroff:关机,等价于 poweroff 命令
  • -n:不调用 init 程序进行关机,而由 shutdown 自己进行
  • -r:重启。等价于 reboot 命令
  • -t <秒数>:延迟多少秒之后再执行关机
  • --help:显示帮助信息
  • --version:显示版本

halt

简介

halt:关机但是不关闭电源,需要手动关闭电源(加p参数会关闭电源)。

若系统的run level在0-6中,则关闭系统,否则调用shutdown -h来取代。

halt执行时,杀死应用进程,执行sync系统调用,文件系统写操作完成后会停止内核。

注意:云服务器尽量不要用此命令,因为运行后,它长时间处于正在关机状态。建议使用shutdown -h,可以比较快的关机。

示例

halt               #立即停止系统,需要人工关闭电源

参数

  • -n 防止sync系统调用﹐它用在用fsck修补根分区之后﹐以阻止内核用老版本的超级块〔superblock〕覆盖修补过的超级块。
  • -w 并不是真正的重启或关机﹐只是写wtmp〔/var/log/wtmp〕纪录。
  • -d 不写wtmp纪录〔已包含在选项-n中〕。
  • -f 强制关机或重启。(不调用shutdown)
  • -i 关机〔或重启〕前﹐关掉所有的网络接口。
  • -p 该关机时调用poweroff(关闭电源)。

init

简介

init是所有进程的祖先﹐它的进程号始终为1﹐所以发送TERM信号给init会终止所有的 用户进程﹑守护进程等。shutdown 就是使用这种机制。

示例

init 6           #重启

启动级别(run level)

init 0,1,2,3,4,5,6

  • 0:系统关机。系统默认运行级别不能设为0,否则一开机就会关机。
  • 1:单用户工作状态,只有root,用于系统维护,禁止远程登陆 
  • 2:多用户状态(没有NFS) 
  • 3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式 
  • 4:安全模式
  • 5:X11控制台,登陆后进入图形GUI模式 
  • 6:系统关闭并重启。默认运行级别不能设为6,否则一开机就会重启。

强制重启

简介

实际生产环境中某些情况下 Linux 服务器系统在出现致命错误需要远程进行重启,通过常规的 reboot、init 6 等方法无法正常重启(例如重启时卡在驱动程序里等情况),这时就需要通过下面介绍的几种特殊的方法进行强制重启。

下面这些强制重启 Linux 的方法都是直接跳过 umount 文件系统及 sync 等操作,可能导致数据损坏,不在特殊情况下请勿使用。另外当然这些都是需要 root 超级用户权限的。

reboot

reboot -nf

magic SysRq key

magic SysRq key 通过 proc 接口提供用户直接发底层命令给 kernel 的功能,可以实现关机、重启、宕机等操作,Linux kernel 需要开启 CONFIG_MAGIC_SYSRQ 才可以支持 magic SysRq key。

强制重启系统:

echo 1 > /proc/sys/kernel/sysrq
echo b > /proc/sysrq-trigger

 强制关闭系统:

echo 1 > /proc/sys/kernel/sysrq
echo o > /proc/sysrq-trigger

在x86平台上,组合键”<ALT> + SysRq + <command key>“组成SysRq键以完成各种功能。但是,在一些键盘上可能没有SysRq键。SysRq键实际上就是”Print Screen“键。并且可能有些键盘不支持同时按三个按键,所以你可以”按住ALT键“,”按一下SysRq键“,再”按一下<command key>键“,如果你运气好的话,这个会有效果的。不过放心,现在的键盘一般都支持同时按3个或3个以上的键。

<command key>有很多,这里只挑几个来说,其他的可以参考sysrq.txt文件。

'b' —— 将会立即重启系统,并且不会管你有没有数据没有写回磁盘,也不卸载磁盘,而是完完全全的立即关机
'o' —— 将会关机
's' —— 将会同步所有以挂在的文件系统
'u' —— 将会重新将所有的文件系统挂在为只读属性

watchdog

如果 Linux kernel 未开启 magic SysRq key 或者不起作用,可以尝试使用 watchdog 重启方法。watchdog 通过监控数据输入是否正常可以实现在系统出现异常时自动重启系统,这里我们刚好可以借用的。

首先需要加载 watchdog 支持,这个和主板硬件设备有关,如果只需要软件模拟的,可以依次运行:

modprobe softdog
cat /dev/watchdog

运行完第二条命令会马上退出并报错,同时系统日志中就会提示:

softdog: Unexpected close, not stopping watchdog!

这就表示 watchdog 设备是被意外关闭的而不是正常停止的,大约等待 60 秒之后你就会发现 Linux 系统自动重启了。Linux watchdog 的异常等待时间是通过 /proc/sys/kernel/watchdog_thresh 设置的,一般默认为 60 秒。

IPMI 

上面几种方法都不能用?如果你的主板刚好支持 IPMI 管理接口的话,那可以直接通过 IPMI 实现硬件上的强制关机或重启。

首先加载 IPMI 支持

modprobe ipmi_msghandler ipmi_devintf ipmi_si

 确认 IPMI 设备是否已找到

ls -l /dev/ipmi*

如果输出正常的话表示 IPMI 被正确加载了,接着安装 ipmitool 管理工具。ipmitool 可以通过 IPMI 接口完成对本机或远程主机的一系列管理操作。

这里我们就用直接电源管理的,重启系统:

ipmitool power reset

运行完成后主机就会马上重启,相应的关闭主机可以运行命令:

ipmitool power off

ipmitool 还可以实现在系统未启动时远程查看监控主板硬件状态等功能

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/144743.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

centos 6.10 安装 readline 6.2.0

下载地址 解压文件 cd readline-6.2 ./configure -prefix /usr/local/readline-6.2 make && make install安装完成

【Qt之QSplashScreen】开场动画使用:进度条加载及设置鼠标指针不转圈

效果 开场动画效果如下&#xff1a; 开场动画 介绍 QSplashScreen小部件提供了一个启动屏幕&#xff0c;可以在应用程序启动期间显示。 启动屏幕是一个小部件&#xff0c;通常在应用程序启动时显示。启动屏幕通常用于启动时间较长的应用程序(例如需要花费时间建立连接的数据…

《Effective C++》条款15

在资源管理类中提供对原始资源的访问 class A {... }; int day(const A* ptr) {... } int main() {shared_ptr<A> ptr(new A);cout << day(ptr) << endl; } 这样写是错误的。因为day函数要求的参数是指针&#xff0c;而你传的实际上是一个对象。 如何解决呢&…

在docker下安装suiteCRM

安装方法&#xff1a; docker-hub来源&#xff1a;https://hub.docker.com/r/bitnami/suitecrm curl -sSL https://raw.githubusercontent.com/bitnami/containers/main/bitnami/suitecrm/docker-compose.yml > docker-compose.yml//然后可以在docker-compose.yml文件里修…

深度学习+opencv+python实现车道线检测 - 自动驾驶 计算机竞赛

文章目录 0 前言1 课题背景2 实现效果3 卷积神经网络3.1卷积层3.2 池化层3.3 激活函数&#xff1a;3.4 全连接层3.5 使用tensorflow中keras模块实现卷积神经网络 4 YOLOV56 数据集处理7 模型训练8 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &am…

网络支付安全:面临的风险与防范策略

随着电子商务的繁荣和移动支付技术的发展&#xff0c;网络支付已成为全球消费者日常生活中不可或缺的一部分。然而&#xff0c;这种便捷的支付方式也带来了许多安全风险&#xff0c;这些风险可能威胁到用户的财务安全和个人隐私。本文将深入探讨网络支付面临的主要安全风险&…

HTML5学习系列之主结构

HTML5学习系列之主结构 前言HTML5主结构定义页眉定义导航定义主要区域定义文章块定义区块定义附栏定义页脚 具体使用总结 前言 学习记录 HTML5主结构 定义页眉 head表示页眉&#xff0c;用来表示标题栏&#xff0c;引导和导航作用的结构元素。 <header role"banner…

Java和JavaScript是一样的技术吗?

目录 一、Java 是什么 二、JavaScript 是什么 三、Java 和 JavaScript 的区别 一、Java 是什么 Java是一种广泛使用的计算机编程语言&#xff0c;最初由Sun Microsystems&#xff08;后被Oracle收购&#xff09;于1995年发布。Java是一种面向对象的语言&#xff0c;设计初衷…

qnx 工程目录创建工具 addvariant

文章目录 前言一、addvariant 是什么二、addvariant 使用实例1. variant names 参数说明2. 创建一个可执行文件工程3. 创建一个动态库工程 总结参考资料 前言 本文主要介绍如何在qnx 开发环境中创建工程目录及其相关的配置文件(common.mk, Makefile 文件等) 软件版本&#xff…

Java 注解

常见的注解 Override Overload Deprecated 过时 等..... /** *deprecated {link #方法名()}提示可替代方法 */ Deprecated 注解类:Annotion,给编译器进行执行 声明注解使用 interface,本质也是接口,也可以设置抽象方法,起到属性的作用 package java.lang.annotation…

1、LeetCode之两数之和

两数之和 给定一个整数数组 nums和一个目标值target&#xff0c;请你在该数组中找出和为目标值的那两个整数&#xff0c;并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是&#xff0c;你不能重复利用这个数组中同样的元素。 nums [2,7,11,15]target 9[0,1]枚…

图解未来:数据可视化引领智慧决策时代

图表和数据可视化在数据分析中的关键作用 引言&#xff1a; 在现代数据科学中&#xff0c;数据可视化扮演着至关重要的角色。通过图表和可视化工具&#xff0c;我们能够更直观、更有效地理解数据的分布、趋势和关联性。本文将深入讨论三个主要的数据可视化工具&#xff1a;mat…

mindspore mindyolo目标检测华为昇腾上推理使用、训练;华为OBS文件传输使用

参考&#xff1a; https://github.com/mindspore-lab/mindyolo 使用案例&#xff1a; https://github.com/mindspore-lab/mindyolo/blob/master/GETTING_STARTED.md 安装&#xff1a; pip install mindyolo特别注意opencv-python、opencv-python-headless版本问题&#xff0…

代码随想录算法训练营Day 53 || 1143.最长公共子序列、1035.不相交的线、53. 最大子序和

1143.最长公共子序列 力扣题目链接 给定两个字符串 text1 和 text2&#xff0c;返回这两个字符串的最长公共子序列的长度。 一个字符串的 子序列 是指这样一个新的字符串&#xff1a;它是由原字符串在不改变字符的相对顺序的情况下删除某些字符&#xff08;也可以不删除任何…

Arthas(阿尔萨斯)--(三)

目录 一、Arthas学习 1、class/classloader相关命令一 1、sc 2、sm 2、class/classloader相关命令二 1、jad 2、mc 3、redefine 三、class/classloader相关命令三 一、Arthas学习 Arthas(阿尔萨斯)--(一) Arthas(阿尔萨斯)--(二) 1、class/classloader相关命令一 …

【手写数据库toadb】代码又更新了,增加了解析树,查询树,执行计划,向更多复杂SQL迈进了一步

toadb updated by 2023/11/15 ​专栏内容&#xff1a; 手写数据库toadb 本专栏主要介绍如何从零开发&#xff0c;开发的步骤&#xff0c;以及开发过程中的涉及的原理&#xff0c;遇到的问题等&#xff0c;让大家能跟上并且可以一起开发&#xff0c;让每个需要的人成为参与者。 …

003.文件描述符、重定向

1、文件描述符 文件描述符是与输入和输出流相关联的整数。最广为人知的文件描述符是stdin、stdout和stderr。我们可以将某个文件描述符的内容重定向到另一个文件描述符中。 在编写脚本的时候会频繁用到标准输入&#xff08;stdin&#xff09;、标准输出&#xff08;stdout&am…

Visual Studio Code配置c/c++环境

Visual Studio Code配置c/c环境 1.创建项目目录2.vscode打开项目目录3.项目中添加文件4.文件内容5.配置编译器6.配置构建任务7.配置调试设置 1.创建项目目录 d:\>mkdir d:\c语言项目\test012.vscode打开项目目录 3.项目中添加文件 4.文件内容 #include <iostream> u…

网络编程TCP/UDP通信

1 网络通信概述 1.1 IP 和端口 所有的数据传输&#xff0c;都有三个要素 &#xff1a;源、目的、长度。 怎么表示源或者目的呢&#xff1f;请看图 所以&#xff0c;在网络传输中需要使用“IP 和端口”来表示源或目的。 1.2 网络传输中的 2 个对象&#xff1a;server 和 cl…

nvidia-docker部署pytorch服务【GPU工作站】

文章目录 一、安装 Docker二、安装 NVIDIA Container Toolkit三、宿主机安装 cuda 和 nvidia-driver四、测试一、安装 Docker 可以参考这篇文章 https://blog.csdn.net/weixin_43721000/article/details/124237932 二、安装 NVIDIA Container Toolkit 参考nvidia官方 https:/…