Linux关闭和重启系统一般使用相同的命令可以实现。

在Linux系统下常用在关机/重启命令有shutdown、halt、reboot和init,但每个命令的内部工作过程是不同的。

1、shutdown命令
Shutdown命令可以安全地关闭系统,有些用户会使用直接断电源的方式来关闭计算机,这是十分危险的。

Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,在有的系统中甚至会损坏硬件设备。

如果在系统关机前使用shutdown命令,系统管理员会通知所有登录的用户系统将要关闭,并且login命令会被冻结,即新的用户不能再登录。直接关机或者延迟一定的时间才关机都是可能的,还可能重启。

语法:shutdown [选项] [时间] [警告信息]

选项说明:

  -k:并不真正关机,只是发出警告信息给所有用户
  -r:关机后立即重新启动
  -h:关机后不重新启动
  -f:快速关机,重启动时跳过fsck
  -n:快速关机,不经过init程序
  -c:取消一个已经运行的shutdown[-time]:设定关机前的时间
举例:
1)立即关闭系统:shutdown -h now
2)定时45min后关闭系统:shutdown -h 45
3)重新启动系统,并发出警告信息:shutdown –r now“system will be reboot now!”

2、halt命令

halt命令就是调用“shutdown-h”命令执行的
语法:halt [选项]
选项说明:
  -c:防止sync系统调用,它用在fsck修补根分区之后,以阻止内核用老版本的超级块覆盖修补过的超级块
  -w:并不是真正的重启或关机,只是写wtmp(/var/log/wtmp)记录
  -d:不写wtmp记录(已包含在选项[-n]中)
  -f:没有调用shutdown而强制关机或重启

  -I:关机(或重启)前,关掉所有的网络接口  -p:该选项为缺省选项,即关机时调用poweroff

3、reboot命令
     Reboot的工作过程与halt相似,不过reboot是引发主机重启,而halt是引发主机关机。它的参数与halt相似

 4、init命令

 Init是所有进程的祖先,它的进程号始终为1,所以发送TREM信号给init会终止所有的用户进程和守护进程等。
shutdown就是使用这种机制。init定义了7个运行级别,其中init0为关机,init为重启。

Linux下服务器重启的更多相关文章

  1. Linux下不重启永久修改hostname

    LINUX下不重启永久修改hostname 1.如果只是修改hostname可以通过如下命令 hostname newHostname   注意:这种修改方式只有当前有效,等服务器重启后hostnam ...

  2. linux下不重启添加硬盘

    linux下热加载磁盘 临时给虚拟机加了一块硬盘,增加后懒得重启,于是看了看热加载 [root@centos5 ~]# cat /proc/scsi/scsiAttached devices:Host ...

  3. linux下不重启加硬盘

    linux下热加载磁盘 临时给虚拟机加了一块硬盘,增加后懒得重启,于是看了看热加载 [root@centos5 ~]# cat /proc/scsi/scsi Attached devices: Ho ...

  4. Linux下服务器搭建

    一.安装前准备工作 yum -y install gcc   yum -y install gcc-c++   yum -y install make yum -y install ncurses-d ...

  5. Linux下服务器环境的搭建和配置之一——Apache篇

    最近一个多月(2016-06-20开始至今),一直在忙海外广告平台FAQ系统的开发,既要负责服务器环境的搭建,又要写前端,还要写后台和数据库,甚至还要考虑产品需求和设计.所以是一个很大的挑战,对自身也 ...

  6. 【linux】【tomcat】linux下定时重启tomcat

    步骤: 一.创建脚本文件,本脚本文件用于停止,重启tomcat运行的java进程,并设置脚本文件权限 1.新建脚本文件tomcat.sh [注意文件创建的路径] [查看当前路径的命令:   pwd] ...

  7. 【linux】【tomcat】linux下定时重启tomcat 【CentOS 6.4】【CentOS 7.6】

    本章内容以CentOS 6.4   和   CentOS  7.6  两个版本为例.[6和7的命令不同] 转载 :https://www.cnblogs.com/sxdcgaq8080/p/10730 ...

  8. Linux下服务器开发的必要准备

    一.Windows下安装Xshell 二.Linux开启SSH 可以先查询有没有SSH服务 sudo ps -e |grep ssh 没有安装SSH的服务器 sudo apt-get install ...

  9. linux下定时重启tomcat

    工具/原料 linux tomcat 方法/步骤 编写tomcat_shutdown.sh: #!/bin/sh export JAVA_HOME=/home/oracle/jdk1..0_67/ e ...

随机推荐

  1. js运算

    今天把五个题目都做出来了,虽然可能用的方法比较麻烦.不过总体来说不错: <!DOCTYPE html><html> <head> <meta charset= ...

  2. C#多线程爬虫抓取免费代理IP

    这里用到一个HTML解析辅助类:HtmlAgilityPack,如果没有网上找一个增加到库里,这个插件有很多版本,如果你开发环境是使用VS2005就2.0的类库,VS2010就使用4.0,以此类推.. ...

  3. 8.13.2 TreeSet实现Comparable接口的两种方式

    推荐使用第二种方式,编写比较器可以使数据类的程序耦合度降低,同时比较器也可以重复利用! 第一种方式:数据类实现Comparable接口,实现其中的compareTo方法 创建对象时,使用TreeSet ...

  4. Android笔记: ViewPager基本用法

    ViewPager控件可以实现多个View(或fragment)滑动切换的效果,属于比较常用的控件.下面用一个简单的例子介绍一下该控件的基本用法. 首先是布局文件activity_view_pager ...

  5. SpringMVC获取页面数据乱码的解决get/post

    一.post请求方式的乱码 在web.xml中加入: <filter> <filter-name>CharacterEncodingFilter</filter-name ...

  6. 数据库索引B-树和B+树

    一开始学习数据结构的时候,主要学习的是数组,队列,链表,队列,栈,树这些数据结构,其中树主要学习二叉树,平衡二叉树,二叉搜索树等这些子节点最多只有两个的树结构.但是,当我们接触数据库的时候,你会发现数 ...

  7. React 实现一个漂亮的 Table

    概述 对于企业级后台产品来说,Table 应该是使用最频繁的组件了,它通常比 Form 和 Chart 的使用还频繁.对于这么一个常用的组件,我们决定要把它从 RSuite 中单独出来开发,并且要具有 ...

  8. 关于Java的静态:静态类、静态方法、静态变量、静态块等

    原文地址:Java static keyword - Class, Method, Variable, Block, import - JournalDev 很少看到文章能把静态这个问题解释的很清楚, ...

  9. ios 初体验<页面切换>

    本章类容:介绍如何新建一个页面,打开另一个页面 1.在前面中,在工程Appdelegate.m 里面程序第一个走的方法,新建一个窗口,视图,控制器,可视化等, 2.然后在ViewController. ...

  10. C#构建DataTable(转)

    Asp.net DataTable添加列和行的方法 方法一: DataTable tblDatas = new DataTable("Datas"); DataColumn dc ...