Linux `init 0` 相关命令的完整使用指南

news2025/4/20 1:42:35

Linux `init 0` 相关命令的完整使用指南—目录

  • 一、`init` 系统简介
  • 二、`init 0` 的含义与作用
  • 三、不同 Init 系统下的 `init 0` 行为
    • 1. SysVinit(如 CentOS 6、Debian 7)
    • 2. systemd(如 CentOS 7+、Ubuntu 16.04+)
    • 3. Upstart(如 Ubuntu 14.04)
  • 四、相关命令详解与对比
  • 五、安全关机最佳实践
  • 六、常见问题与解决方案
    • 1. 执行 `init 0` 无反应
    • 2. 强制关机导致数据丢失
    • 3. 无法切换运行级别
  • 七、高级用法与脚本示例
    • 1. 编写关机脚本
    • 2. 通过 `systemd` 服务管理关机
  • 八、总结


一、init 系统简介

init(Initialization)是 Linux 系统启动的第一个进程(PID 1),负责管理系统服务的启动、停止和进程调度。不同 Linux 发行版使用不同的 init 实现:
• SysVinit(传统):基于运行级别(Runlevel)管理。
• Upstart(Ubuntu 14.04 之前):事件驱动的初始化系统。
• systemd(现代主流):基于单元(Unit)和服务(Service)管理。

init 0 是 SysVinit 中的运行级别命令,但在 systemd 中行为可能不同。以下内容将覆盖不同系统的实现。


二、init 0 的含义与作用

• 运行级别 0:在 SysVinit 中表示关机(Shutdown)。
• 执行效果:触发系统关机流程,终止所有进程并关闭电源(或进入维护模式)。


三、不同 Init 系统下的 init 0 行为

1. SysVinit(如 CentOS 6、Debian 7)

• 命令:

sudo init 0

• 效果:立即关闭系统,等同于 shutdown -h now

2. systemd(如 CentOS 7+、Ubuntu 16.04+)

• 兼容性:systemd 保留了 init 命令的软链接,但实际行为由 systemd 处理:

ls -l /sbin/init
# 输出类似:lrwxrwxrwx 1 root root 16 Apr  1 10:00 /sbin/init -> /lib/systemd/systemd

• 执行效果:init 0 会被重定向到 systemctl poweroff,安全关闭系统。

3. Upstart(如 Ubuntu 14.04)

• 不支持 init 0:需改用 shutdownservice 命令。


四、相关命令详解与对比

命令适用系统效果备注
init 0SysVinit立即关机不推荐在 systemd 中使用
shutdown -h now所有系统立即关机最通用的关机命令
poweroff所有系统立即关机等同于 shutdown -h now
reboot所有系统立即重启等同于 shutdown -r now
systemctl poweroffsystemd 系统安全关机推荐在 systemd 中使用
halt旧版系统停止 CPU,不关闭电源可能导致数据未保存

五、安全关机最佳实践

  1. 普通用户关机:
    sudo shutdown -h now
    
  2. 定时关机(10 分钟后):
    sudo shutdown -h +10
    
  3. 取消关机计划:
    sudo shutdown -c
    

六、常见问题与解决方案

1. 执行 init 0 无反应

• 原因:在 systemd 系统中,init 0 可能被忽略或未正确链接。
• 解决:

sudo systemctl poweroff  # 直接使用 systemd 命令

2. 强制关机导致数据丢失

• 风险:直接断电或强制终止进程可能损坏文件系统。
• 预防:始终使用 shutdowninit 0 确保数据同步。

3. 无法切换运行级别

• 原因:权限不足或配置错误。
• 解决:

sudo chmod +s /sbin/init  # 赋予执行权限(谨慎操作)

七、高级用法与脚本示例

1. 编写关机脚本

#!/bin/bash
# save_shutdown.sh
logger "System shutdown initiated by user $(whoami)"
/sbin/shutdown -h now

• 使用:

chmod +x save_shutdown.sh
sudo ./save_shutdown.sh

2. 通过 systemd 服务管理关机

• 创建服务文件(如 /etc/systemd/system/custom-shutdown.service):

[Unit]
Description=Custom Shutdown Service
DefaultDependencies=no
Before=shutdown.target

[Service]
Type=oneshot
ExecStart=/usr/bin/logger "Custom shutdown script executed"

[Install]
WantedBy=shutdown.target

• 启用服务:

sudo systemctl enable custom-shutdown.service

八、总结

init 0 的核心作用:触发系统关机,但需根据 init 系统类型(SysVinit/systemd)调整命令。
• 推荐命令:优先使用 shutdown -h nowsystemctl poweroff,确保安全性和兼容性。
• 注意事项:避免强制关机,定期备份关键数据。


通过本指南,您可以全面掌握 Linux 系统中 init 0 的使用场景、兼容性问题及安全关机方法,适用于服务器管理、开发调试等多种场景。


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

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

相关文章

Vue3中发送请求时,如何解决重复请求发送问题?

文章目录 前言一、问题演示二、使用步骤1.One组件2.Two组件封装工具函数处理请求 总结 前言 在开发过程中,重复请求发送问题可能会导致数据不一致、服务器压力增加或用户操作异常。以下是解决重复请求问题的常见方法和最佳实践: 一、问题演示 我们看着…

观察者模式:从博客订阅到消息队列的解耦实践

观察者模式:从博客订阅到消息队列的解耦实践 一、模式核心:用事件驱动实现对象间松耦合 在新闻 APP 中,当热点事件发生时需要实时通知所有订阅用户;在电商系统中,库存变化需触发价格监控模块重新计算。这类场景的核心…

ReportLab 导出 PDF(页面布局)

ReportLab 导出 PDF(文档创建) ReportLab 导出 PDF(页面布局) ReportLab 导出 PDF(图文表格) PLATYPUS - 页面布局和排版 1. 设计目标2. 开始3. Flowables3.1. Flowable.draw()3.2. Flowable.drawOn(canvas,x,y)3.3. F…

【CVE-2024-10929】ARM CPU漏洞安全通告

安全之安全(security)博客目录导读 目录 一、概述 二、CVE详情 三、受影响产品 四、建议措施 五、致谢 六、版本历史 一、概述 在部分基于Arm架构的CPU中发现了一个潜在安全问题,称为Spectre-BSE(Branch Status Eviction,分支状态驱逐…

OpenCV 图形API(33)图像滤波-----高斯模糊函数gaussianBlur()

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 使用高斯滤波器对图像进行模糊处理。 该函数使用指定的高斯核对源图像进行滤波。输出图像必须与输入图像具有相同的类型和通道数。 cv::gapi::g…

【2025最新版】火鸟门户v8.5系统源码+PC、H5、小程序 +数据化大屏插件

一.介绍 火鸟地方门户系统V8.5源码 系统包含4端: PCH5小程序APP 二.搭建环境 系统环境:CentOS、 运行环境:宝塔 Linux 网站环境:Nginx 1.2.22 MySQL 5.6 PHP-7.4 常见插件:fileinfo ; redis 三.测…

关于 传感器 的详细解析,涵盖定义、分类、工作原理、常见类型、应用领域、技术挑战及未来趋势,结合实例帮助理解其核心概念

以下是关于 传感器 的详细解析,涵盖定义、分类、工作原理、常见类型、应用领域、技术挑战及未来趋势,结合实例帮助理解其核心概念: 一、传感器的定义与核心功能 1. 定义 传感器(Sensor)是一种能够将物理量&#xff…

EtherCAT转ProfiNet边缘计算网关配置优化:汽车制造场景下PLC与机器人协同作业案例

1.行业背景与需求分析 智能汽车焊装车间是汽车制造的核心工艺环节,某德国豪华品牌在其上海MEB工厂新建的焊装车间中,采用西门子S7-1500PLC作为ProfiNet主站,负责整线协调与质量追溯;同时部署KUKAKR1500Titan机器人(Eth…

HTTP协议 --- 超文本传输协议 和 TCP --- 传输控制协议

是基于 TCP 协议的 80 端口的一种 C/S 架构协议。 特点:无状态 --- 数据传输完成后,会断开 TCP 连接,哪怕浏览器还正常运行。 请求报文 --- 方法 响应报文 --- 状态码 是一种面向连接的可靠传输协议 。 面向连接 --- 在传输数据之前&am…

类和对象(下篇)(详解)

【本节目标】 1. 再谈构造函数 2. Static成员 3. 友元 4. 内部类 5. 再次理解封装 1. 再谈构造函数 1.1 构造函数体赋值 在创建对象时&#xff0c;编译器通过调用构造函数&#xff0c;给对象中各个成员变量一个合适的初始值。 #include <iostream> using name…

LeetCode【剑指offer】系列(位运算篇)

剑指offer15.二进制中1的个数 题目链接 题目&#xff1a;编写一个函数&#xff0c;输入是一个无符号整数&#xff08;以二进制串的形式&#xff09;&#xff0c;返回其二进制表达式中数字位数为 ‘1’ 的个数&#xff08;也被称为 汉明重量).&#xff09;。 思路一&#xff…

网络安全领域的AI战略准备:从概念到实践

网络安全领域的AI准备不仅涉及最新工具和技术的应用&#xff0c;更是一项战略必需。许多企业若因目标不明确、数据准备不足或与业务重点脱节而未能有效利用AI技术&#xff0c;可能面临严重后果&#xff0c;包括高级网络威胁数量的激增。 AI准备的核心要素 构建稳健的网络安全…

MacOs下解决远程终端内容复制并到本地粘贴板

常常需要在服务器上捣鼓东西&#xff0c;同时需要将内容复制到本地的需求。 1-内容是在远程终端用vim打开&#xff0c;如何用vim的类似指令达到快速复制到本地呢&#xff1f; 假设待复制的内容&#xff1a; #include <iostream> #include <cstring> using names…

基于PAI+专属网关+私网连接:构建全链路 Deepseek 云上私有化部署与模型调用架构

DeepSeek - R1 是由深度求索公司推出的首款推理模型&#xff0c;该模型在数学、代码和推理任务上的表现优异&#xff0c;市场反馈火爆。在大模型技术商业化进程中&#xff0c;企业级用户普遍面临四大核心挑战&#xff1a; 算力投入成本高昂&#xff1a;构建千亿参数级模型的训…

【cocos creator 3.x】cocos creator2.x项目升级3.x项目改动点

1、基本改动 基本改动&#xff1a;去掉了cc.&#xff0c;改成在顶部添加导入 项目升级时候直接将cc.去掉&#xff0c;根据提示添加引用 node只保留position,scale,rotation,layer 其余属性如opacity&#xff0c;如果需要使用需要在节点手动添加UIOpacity组件 3d层和ui层分开…

List基础与难度题

1. 向 ArrayList 中添加元素并打印 功能描述&#xff1a; 程序创建一个空的 ArrayList 集合&#xff0c;用于存储字符串类型的元素。向该 ArrayList 中依次添加指定的字符串元素。使用增强型 for 循环遍历 ArrayList 中的所有元素&#xff0c;并将每个元素打印输出到控制台。 …

Oracle19C低版本一天遭遇两BUG(ORA-04031/ORA-600)

昨天帮朋友看一个系统异常卡顿的案例&#xff0c;在这里分享给大家 环境&#xff1a;Exadata X8M 数据库版本19.11 1.系统报错信息 表象为系统卡顿&#xff0c;页面无法刷出&#xff0c;登陆到主机上看到节点1 系统等待存在大量的 cursor: pin S wait on X等待 查看两个节…

【4.1.-4.20学习周报】

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 摘要Abstract一、方法介绍1.1HippoRAG 1.2HippoRAG2二、实验2.1实验概况2.2实验代码2.3实验结果 总结 摘要 本博客介绍了论文《From RAG to Memory: Non-Parametri…

python学习—合并多个word文档

系列文章目录 python学习—合并TXT文本文件 python学习—统计嵌套文件夹内的文件数量并建立索引表格 python学习—查找指定目录下的指定类型文件 python学习—年会不能停&#xff0c;游戏抽签抽奖 python学习—循环语句-控制流 python学习—合并多个Excel工作簿表格文件 pytho…

[Python] UV工具入门使用指南——小试牛刀

背景 MCP开发使用到了uv&#xff0c;简单记录一下&#xff1a; 为什么MCP更推荐使用uv进行环境管理&#xff1f; MCP 依赖的 Python 环境可能包含多个模块&#xff0c;uv 通过 pyproject.toml 提供更高效的管理方式&#xff0c;并且可以避免 pip 的一些依赖冲突问题。…