进入Linux救援(rescue)模式的四大法门
原文:http://blog.51cto.com/xxrenzhe/1272838
适用场景:
当误操作修改系统启动文件/etc/fstab, /etc/rc.d/rc.sysinit时,就会造成系统启动时读取磁盘或初始化环境失败,导致linux无法正常启动,此时就可以借助Linux的救援模式临时进入系统,进行文件修改,纠正错误
救援(rescue)模式的本质:
只是一个带shell的Linux运行环境,借助它可以通过mount和chroot进入要修复的系统
解决方法:
有Linux启动盘(或iso文件),系统是RHEL系统的:
用安装光盘或者硬盘安装的方式进入安装界面:在shell 中输入 Linux rescue
然后根据提示选择语言和键盘格式
选择是否配置网卡:一般系统到了要rescue了,网络也就不需要了,所以可以选择跳过网卡配置,当然你如果需要也可以选择是,具体设置过程和安装时一样
选择是否让系统查找硬盘上的RHEL系统,选择继续。
硬盘上的系统已经被找到并挂载在/mnt/sysimage 下
按提示chroot /mnt/sysimage,之后你就可以已经在你的要被拯救的系统下了
grub挂了的:grub-install /dev/hdxx
配置文件改错的:vi /etc/fstab vi /etc/inittab
软件包被毁的:rpm -F xxx.rpm
完成修复工作后,exit命令退出chroot,exit退出rescue shell 系统重启
有Linux启动盘(或iso文件),系统是非RHEL系统(如Debian)的:
前3步与上述方法1一致
第4步时,rescue程序会找不到硬盘上的系统,所以我们选择"跳过",直接进入shell
新建文件系统挂载点,进入系统磁盘分区
假设要拯救的为debian 系统,系统分区部署为:
/dev/hda1 为/boot分区
/dev/hda5 为/分区
/dev/hda6 为swap分区
==================================================
# fdisk -l (查看分区情况)
# mkdir /mnt/Linux
# mkdir /mnt/Linux/boot (根据fdisk -l 得到的信息创建目录)
# mount -t ext3 /dev/hda5 /mnt/Linux
# mount -t ext3 /dev/hda1 /mnt/Linux/boot (挂载硬盘上的文件系统)
# chroot /mnt/Linux (chroot 改变工作系统)继续方法1的第6-7步,做相应操作即可
无Linux启动盘(或iso文件):
系统启动时,按任意键进入grub选择界面
选择需要启动的Linux系统,按“e”进入编辑界面
选择kernel行,按“e”进入核心启动模式编辑界面
在kernel行的最后加上“init=/bin/bash”,按回车键(Enter),然后按“b”进行重新引导
引导系统会得到一个bash shell,但进入的系统是read-only的,需使用fsck检查系统
fsck -a /dev/hdaX
# 处理根分区,X是根分区号,如hda2将系统挂载成read-write的:mount / -o remount,rw
进行系统文件修改,或其他操作
在修复好系统后将系统重新挂载成ro的,就可以安全重启了:mount / -o remount,ro
进入单用户模式(适用于忘记root密码的):
前3步与方法3一致
第4步,需在kernel行的最后加上“single”或“s”,按回车键(Enter),然后按“b”进行重新引导
输入passwd修改root密码
输入init 6重新启动系统即可
参考资料:
http://os.51cto.com/art/201003/186560.htm
http://wenku.baidu.com/view/25e286c208a1284ac850433f.html
http://wenku.baidu.com/view/7325421ec5da50e2524d7f76.html
进入Linux救援(rescue)模式的四大法门的更多相关文章
- linux(rhel) rescue修复详解
修复linux,先准备好一张安装光盘,光驱安装好后开机,选择从光驱启动.等待安装盘显示操作界面时选择"rescue"选项,如果有光标提示的话,也可以输入:linux rescue进 ...
- 在grub的rescue模式修复linux引导
今天在windows 10系统收到系统更新通知,没看清楚就手贱点了马上更新.以为只是像那些普通更新一样重启一下更新就完了,万万没想到这个是覆盖更新,也就是说这是一个全新的系统更新而不是系统补丁.在安装 ...
- openstack虚拟机rescue模式
nova rescue vm_instance es.ops 20190426 linux虚拟机在出现类似kernel panic后,根据panic信息以及故障前的操作,定位问题的发生点,进行修复 n ...
- linux单用户模式
linux单用户模式 2014年11月11日 17:18 在grub上相应要启动的内核上按“e”. 进入下一界面,继续按“e”. 在进入文本界面后,输入“single”回车. 进入grub界面后,按“ ...
- linux磁盘分区模式
linux磁盘分区模式 模式一:MBR 1)主分区不超过四个 2)单个分区容量最大2TB 模式二:GPT 1)主分区个数"几乎"没有限制(原因:在GPT的分区表中最多可以支持128 ...
- VMware Workstation虚拟机中的Linux通过NAT模式共享上网配置教程
VMware Workstation虚拟机中的Linux通过NAT模式共享上网配置教程 在VMware Workstation虚拟机下面,Linux虚机要上网,一般是桥接模式,但我自己的电脑上网的环境 ...
- wpa_supplicant 移植及 linux 命令行模式配置无线上网
本文涉及内容为linux 命令行模式配置无线上网 及 wpa_supplicant 移植到开发板的过程,仅供参考. 1.源码下载 wpa_supplicant 源码下载地址 :http://hosta ...
- 逐步搭建Lamp环境之Linux的运行模式
首先先来看几个概念,分别是:单用户.单任务.多用户.多任务 单用户: 是指操作系统一般只能由一个人同时进行登录 单任务: 是指操作系统只能同时处理一个任务 多用户: 是指操作系统可以允许由多个用户同时 ...
- Linux下NAT模式和桥接模式的网络配置
Linux下NAT模式和桥接模式的网络配置 最近在配置linux虚拟机的时候发现有很多坑,现在记录下来以防日后又跳到坑里. 我的运行环境是:主机 windows 7 虚拟机 Virtualb ...
随机推荐
- Js里面IF(var)表示什么意思?js中if的写法、含义
Q:if(一个变量),没有> < !=这些半短逻辑, 什么时候为真 什么时候为假? A:是判断逻辑,javascript是弱变量类型语言,通俗地就是没有数据类型.任意值都有逻辑值(真或假) ...
- 树莓派进阶之路 (009) - 树莓派ftp脚本(原创)
FTP.sh #!/bin/sh cd echo "彻底卸载原有的ftp" sudo apt-get remove --purge vsftpd #(--purge 选项表示彻底删 ...
- macOS SIP 权限设置
1.macOS SIP 权限设置 对于 macOS 10.11+ 用户,由于系统启用了 SIP(System Integrity Protection), 导致 root 用户也没有权限修改 /usr ...
- eclipse插件安装的四种方法
Eclipse插件的安装方法 1.在eclipse的主目录(ECLIPSE_HOME,比如在我的机器上安装的目录是:D:\eclipse)有一个plugins的目录,这种方法的插件安装非常简单,只要将 ...
- Ubuntu局域网下利用client联网
Ubuntu是一个非常好的Linux操作系统,可是对于刚刚安装使用它的新手来说如何用Ubuntu连入网络却是一大难关.如今就记录一下自己在Ubuntu下上网的过程. ★client 将client解压 ...
- 一些http或https请求的参数,什么情况下需要urlencode编码
http协议中参数的传输是"key=value"这种简直对形式的,如果要传多个参数就需要用“&”符号对键值对进行分割.如"?name1=value1&na ...
- UnicodeDecodeError: 'utf-8' codec can't decode byte
for line in open('u.item'): #read each line whenever I run this code it gives the following error: U ...
- [转]Class.forName()的作用与使用总结
1.Class类简介: Java程序在运行时,Java运行时系统一直对所有的对象进行所谓的运行时类型标识.这项信息纪录了每个对象所属的类.虚拟机通常使用运行时类型信息选准正确方法去执行,用来保存这些类 ...
- [转]MVC 框架教程
Spring web MVC 框架提供了模型-视图-控制的体系结构和可以用来开发灵活.松散耦合的 web 应用程序的组件.MVC 模式导致了应用程序的不同方面(输入逻辑.业务逻辑和 UI 逻辑)的分离 ...
- java字符串拼接的几种方式
1. plus方式 当左右两个量其中有一个为String类型时,用plus方式可将两个量转成字符串并拼接. String a="";int b=0xb;String c=a+b;2 ...