`
totoxian
  • 浏览: 1071228 次
  • 性别: Icon_minigender_2
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

[转]Linux 系统的单用户模式、修复模式、跨控制台登录在系统修复中的运用

阅读更多

作者:北南南北
来自:LinuxSir.Org
摘要:本文主要讲述在系统修复时,登录系统的几种方法;比如当我们把root密码忘记,或者系统正常启动遇到困难时,我们可以通过单用户模式,修复模式linux rescue及跨越控制台登录等方法完成对文件系统的加载,登录,进而进行相应的修复;

当系统被破坏,或者登录遇到困难时,我们如何才能进入系统?比如我们把root密码忘记,或者系统不能正常进行启动时,我们首先想到的是如何登录系统,或如何备份文件系统中重要的数据;下面有以下几种方法供大家参考

目录索引

一、单用户模式;
1、以grub 系统引导管理器,单用户登录方法;
2、lilo 引导管理器单用户模式;

二、linux rescue 修复模式;

三、跨越控制台登录;

四、后记;
五、关于本文;
六、致谢;
七、参考文档;
八、相关文档;


++++++++++++++++++++++++++++++++++++++++++++++++++++++++
正文
++++++++++++++++++++++++++++++++++++++++++++++++++++++++


一、单用户模式;

单用户模式要求我们输入root用户的密码,否则您无法登录单用户模式;如果您丢失了root用户的密码,并不能用单用户模式来重设您的root密码;

另外单用户模式还有一个前提是您的grub 或者lilo 是能正常工作的;并且您知道您的系统问题发生在哪里,当以单用户模式登录时,您能打开文件系统的写操作,然后进行您想要进行的系统修复;

可能有的弟兄会说“我真的不知道系统哪块出了问题”,呵,如果真的不知道,那我也无能为力了,因为本文档主要讲述登录模式,并不是讲述如何修复系统的;


1、以grub 系统引导管理器,单用户登录方法;

在grub 启动后,移动键盘到Linux的启动项;按e键;然后再移动键盘到类似下面的一行,也就是kernel的那行:

kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/1 rhgb quiet

把光标移动这行后,再按一下e键,进入编辑这行;在行尾条一个空格 ,然后输入 linux single,也就是类似如下的:

kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/1 rhgb quiet linux single


结束编辑,按回车返回;

接着我们要启动系统,按一下b键启动;

当进入单用户模式运行后,系统提示我们输入root密码;输入正确后会进入系统;您可以用df -h 来查看文件系统挂载位置等,也可以用fdisk -l 来查看分区等;但对文件系统的写操作,可能还要看下面的;

单用户进入系统后,可能系统是只读的;要运行下面的命令;

#mount -o remount,rw /


2、lilo 引导管理器单用户模式;

在boot:处输入

linux single

当进入单用户模式运行后,系统提示我们输入root密码;输入正确后会进入系统;您可以用df -h 来查看文件系统挂载位置等,也可以用fdisk -l 来查看分区等;但对文件系统的写操作,可能还要看下面的;

单用户进入系统后,可能系统是只读的;要运行下面的命令;

#mount -o remount,rw /


二、linux rescue 修复模式;

Linux的修复模式就是 linux rescue;修复模式并不需要系统密码,当进入修复模式后,系统会提示我们要挂载哪个分区上的文件系统,我们根据自己的系统情况来选择就就是了。登录完成后,系统也会提示所在分区的文件系统会被挂载到哪个目录;如果您不知道挂载在哪里,请通过 df -h 来查看;

修复模式需要安装盘的第一张或独立的修复盘;比如 Fedora 就有专门的修复盘;其实修复盘在一定意义上来说类似livecd,是不需要安装到硬盘也能运行系统;然后通过mount 来挂载文件系统;其实当我们执行linux rescue 时,象Fedora 这类的系统,会有一些提示,比如他提示他要mount 哪个分区,我们选择一下就行了;

执行修复模式时,需要以下几个步骤;

其一:在BIOS中,设置首个启动驱动器为CDROM;
其二;找出系统安装盘的第一张;放入CDROM ;当光盘运行时,会提示安装的界面;

在boot:后面输入 linux rescue ,然后按回车;

boot:linux rescue

进入修复模式,我们能做些什么呢??什么都可以做,比如挂载usb盘进行数据备份;修改系统中的配置文件... ... 重新设置root密码、挂载文件系统 ... ... 只要能想到,大多都可以完成;


三、跨越控制台登录;

真正的跨越控制台登录是不需要输入root密码的,如果您把root密码丢失,就要想到跨越控制台登录;我们前面所说的linux rescue 从本质上来说,就是跨越控制台登录,因为无需要密码验证就能登录系统;

跨越控制台登录主要包括:借grub和lilo 跨越控制台登录; linux rescue 模式;第三方livecd 系统和第三方Linux系统;

1、通过grub和lilo 引导,跨越控制台登录;


1)如果您用的是grub进行系统引导;

在grub 启动后,移动键盘到Linux的启动项;按e键;然后再移动键盘到类似下面的一行,也就是kernel的那行:

kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/1 rhgb quiet

把光标移动这行后,再按一下e键,进入编辑这行;在行尾条一个空格 ,然后输入 linux single,也就是类似如下的:

kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/1 rhgb quiet linux init=/bin/bash


结束编辑,按回车返回;

接着我们要启动系统,按一下b键启动;

可能系统是只读的;要运行下面的命令;

#mount -o remount,rw /

然后我们可以通过 df -h 来查看文件系统的加载情况;既然都把文件系统挂载了,有什么活干不了的呢?重设root密码,备份文件... ...

比如重设root密码;

#passwd



2)如果您用lilo 进行系统引导;

在boot:处输入

boot:linux init=/bin/bash

当进入系统后,您可以用df -h 来查看文件系统挂载位置等,也可以用fdisk -l 来查看分区等;但对文件系统的写操作,可能还要看下面的;

可能系统是只读的;要运行下面的命令;

#mount -o remount,rw /


2、linux rescue ;

请参考前面第二点所说的修复模式;


3、借linux的livecd光盘 或第三方linux系统;

linux的livecd版本是无需安装的linux 系统,在光盘上就可以运行的linux 系统; livecd 大多是用来修复之用,livecd 集成了常用的系统操作工具;

第三方Linux系统是指你的机器上安装一个以上的Linux系统,如果其中一个发生问题,我们就可以用另一个来修复;

livecd 和第三方linux系统来修复已经被破坏的Linux ,常用的工具有mount 和chroot等等 ;如果您只是简单的更改存在问题的系统文件,用mount 就足够了。chroot 工具可以改变/,进而进入另一个系统,这个工具的确有用。

我们还是举个例子来说明如何通过用mount和chroot;

至于机器中第三方Linux和Livecd的使用比较简单,这里就不多说了;

livecd就是在光盘上运行的linux ,您可以找一个livecd的发行版本刻录一下就能用了,使用简单方便;

下载地址:

http://www.frozentech.com/content/livecd.php

常用的有 SLAX,Knoppix,Damn Small Linux,Ubuntu ... ...

大体都差不多,下载一个小的备用也行,就看您怎么用了;

通过livecd linux 或其它linux 来修复已经破坏的Linux步骤如下:

1)mount 挂载文件系统;

注:执行mount 及chroot时,要以root权限运行,以下同;

比如存在问题的系统位于 /dev/hda5 ,如果您不知道哪个分区是linux的,您可以通过fdsik -l 来查看;

[root@localhost ~]# fdisk -l 注:查看分区情况;
[root@localhost ~]# pwd 注:确定当前工作目录;
/root 注:当前工作目录为/root
[root@localhost ~]# mkdir systmp 注:在当前工作目录下创建一个临时目录;
[root@localhost ~]# mount /dev/hda5 systmp/ 注:挂载hda5到tmpsys目录中;
[root@localhost ~]# df -h 注:查看是否已经挂载;
Filesystem 容量 已用 可用 已用% 挂载点
/dev/hda8 11G 9.8G 581M 95% /
/dev/shm 236M 0 236M 0% /dev/shm
/dev/hda5 7.9G 5.9G 2.0G 76% /root/systmp 注:看好了,是挂载到了/root/systmp目录中;

既然把/dev/hda5分区的文件系统已经挂载了,我们就能对已经挂载的文件系统进行写操作;如果是简单的备份和文件修改,是完全能行的;

注意:在写操作的过程中,要倍加不心,在操作某个文件的时候,要先备份;当出现不能mount的情况,可能是您的当前所用的内核不支持相应的文件系统;如果系统要求指定文件系统的时候,请看如下的例子;

mount -t 文件系统类型 磁盘分区 挂载目的目录

对于linux的文件系统类型主要有:reiserfs,ext3,ext2;具体用什么文件系统类型,你最明白;如果您还是不知道,就一个一个的尝试;比如我的hda5是reiserfs的,可以用下面的命令来挂载;

[root@localhost ~]# mount -t reiserfs /dev/hda5 systmp/


2)chroot 到已经挂载的文件系统;

chroot这个工具很有用,很多Linux都支持chroot切换到另一个文件系统中,然后进行一系列系统包的安装和系统配置;这并不是说任何文件系统都能chroot切入 ,首先这个文件系统中得具备系统运行的一定的工具和环境,比如/bin和/sbin 目录是拥有等....

用中文表达不清楚,还是举例来说明;

比如我的机器中有两个Linux系统,一个运行正常,另一个有点问题(比如是root密码忘记了),我想通过正常的系统来修复另一个;首先我们进行的是mount ,也就是前面所说的,然后下一步就是chroot ;通过chroot 切换到要修复的文件系统中;

比如存在问题的系统位于 /dev/hda5

[root@localhost ~]# fdisk -l
[root@localhost ~]# pwd
/root
[root@localhost ~]# mkdir systmp
[root@localhost ~]# mount /dev/hda5 systmp/
[root@localhost ~]# df -h
Filesystem 容量 已用 可用 已用% 挂载点
/dev/hda8 11G 9.8G 581M 95% /
/dev/shm 236M 0 236M 0% /dev/shm
/dev/hda5 7.9G 5.9G 2.0G 76% /root/systmp

[root@localhost ~]# chroot systmp 注:chroot到hda5分区的系统中;
bash-3.00# 注:已经登录;
bash-3.00# df -lh 注:查看文件系统挂载情况;
Filesystem 容量 已用 可用 已用% 挂载点
/dev/hda5 7.9G 5.9G 2.0G 76% /
proc 7.9G 5.9G 2.0G 76% /proc
sysfs 7.9G 5.9G 2.0G 76% /sys

上面我们就通过chroot 命令完成了通过一个系统到另一个系统的跨控制台登录;Livecd 如果要完成此任务,也是通过这样过程完成的。

我们既然已经登录到有问题的系统了,可以进行相应的修复工作,比如对root密码的恢复,软件包的安装,相应文件的修改... ... 我想您应该知道怎么做,对不对???

有些发行版的安装盘类似livecd ,比如slackware 的安装盘的第一张,当他启动到让你输入用户名和密码进行安装时,我们不必输入什么,或者直接输入root ,就能进入cdrom 虚拟环境了;这时我们就用前面所说mount加载文件系统,然后chroot挂载的文件系统;

四、后记; 正在写文件系统的管理,可能要花几天时间;努力之中;

五、关于本文;

看到论坛的弟兄还在大呼丢了root密码怎么恢复,虽然坛里也有不少文档,但大多没有形成系统,为了解决问题而重写此文,可能有的弟兄需要这样的文档;既然有“市场”,我就写,没有什么大不了的;有的弟兄认为是小题大作,就当我锻炼身体好了;这样的文档谁都会写,没有什么难的;

六、致谢; 这次感谢我自己一下吧,因为我还在坚持写文档;给自己加加油;哈哈;

七、参考文档; man 和help 吧;兄弟,你也会;

八、相关文档;

http://www.linuxsir.org/main/?q=node/110

分享到:
评论

相关推荐

    Linux的单用户、修复模式等在系统修复中的运用

    Linux 的单用户、修复模式等在系统修复中的运用 Linux 操作系统提供了多种修复模式,包括单用户模式、修复模式和跨越控制台登录等,这些模式可以帮助我们在系统出现问题时进行修复和维护。下面我们将详细介绍这些...

    Linux的单用户、修复模式等在系统修复中的运用.docx

    总结来说,Linux的单用户模式和修复模式是系统管理员的重要工具,它们允许在系统出现问题时,通过低级别的访问权限进行修复。了解和掌握这些模式的使用方法,对于维护和管理Linux系统至关重要。在实际操作中,一定要...

    Linux的单用户、修复模式等在系统修复中的运用.pdf

    在Linux操作系统中,当遇到系统故障或者需要进行紧急维护时,单用户模式和修复模式是两个非常重要的工具。它们允许管理员在系统最小化运行环境中进行问题诊断和修复。 **一、单用户模式** 单用户模式是一种安全的...

    Linux图形模式 文本模式切换总结

    在Linux操作系统中,有两种主要的工作模式:图形模式(Graphical User Interface, GUI)和文本模式(Text User Interface, TUI)或终端模式(Terminal Mode)。理解这两种模式以及如何在它们之间切换是每个Linux用户...

    Ubuntu18.04设置单用户登录修改文件.pdf

    Ubuntu系统在登录时卡住,或是在recovery模式下无法修改文件时,单用户模式是一种特殊的启动方式,它允许用户以最小的系统环境登录,不加载大部分服务和守护进程,只提供对系统的有限访问。这种模式主要用于系统维护...

    Linux学习之CentOS(二十二)--进入单用户模式下修改Root用户的密码

    单用户模式(Run Level 1)是一种用于维护和紧急修复场景下的特殊运行级别,在此模式下,只有单一用户(通常是Root用户)可以通过控制台访问系统,并且网络服务和其他用户的服务都被禁用。这意味着,在单用户模式下...

    Windows和Linux双系统的用户如何卸载Linux

    在双系统环境中,如果用户不再需要使用 Linux,可以卸载 Linux 分区,以释放硬盘空间和简化系统结构。卸载 Linux 可以提高系统的整体性能和安全性。 卸载 Linux 的步骤 卸载 Linux 需要遵循以下步骤: 1. 删除 ...

    Linux网格控制台主机的安全策略.pdf

    在信息技术领域,Linux网格控制台主机的安全策略是确保网格计算环境中用户能够安全、自由地访问和使用计算资源的重要方面。网格技术是一种整合全球分散资源的基础设施,旨在提供更强大、更便捷的服务。在Linux操作...

    最小的Linux系统制作过程详解

    9. **启动终端和登录提示**:在多用户模式下,`init`会启动控制台终端,显示登录提示,允许用户输入用户名和密码。 在制作最小的Linux系统,如BabyLinux时,这些过程都需要被简化和定制。编译内核时,只保留必要的...

    Python-从命令行在python交互式控制台中运行你的代码

    在命令行中启动Python交互式控制台非常简单,你只需打开终端(在Windows上是命令提示符,Mac或Linux上是Terminal),然后输入`python`或`python3`(根据你的系统配置和Python版本)并按回车键。这样,你就可以直接在...

    远程管理控制台最新汉化版

    这个“远程管理控制台最新汉化版”显然是一款专为中文用户设计的软件,旨在提供全中文界面,使得国内用户在操作过程中能够更加便捷地理解和使用各项功能。 在IT领域,远程管理主要涉及到以下知识点: 1. **远程...

    Linux常用命令集锦

    在Linux中,使用`/bin/su`或者直接以`root`用户登录可以切换到超级用户身份。超级用户的提示符通常是`#`,而普通用户的提示符通常是`$`。请注意,作为超级用户操作时要格外小心,误操作可能会对系统造成严重破坏。 ...

    Linux问题“冷”处理.pdf

    在本文中,我们将探讨几个与Linux操作系统相关的常见问题及其解决方案,这些问题主要涉及到系统启动、用户登录和权限管理。首先,我们来看第一个问题:无法从主控台登录。 问题描述:用户在启动时尝试通过自定义的`...

    linux系统学习笔记

    然而,给定内容中提到的“下载了一个Windows的”似乎与上下文不符,因为在Linux系统中,应通过包管理器(如apt、yum或dnf)来安装NTP。例如,在基于Debian的系统上,可以使用命令`sudo apt install ntp`来完成安装。...

    控制台代码

    5. **命令解析**:在控制台代码中,会有一个部分专门负责解析用户输入的命令,将其转化为设备可理解的指令,然后通过网络发送。这可能涉及到字符串处理、正则表达式匹配等编程技术。 6. **安全性**:由于涉及到远程...

    Linux系统引导过程及引导修复

    Linux系统提供了多种启动级别,包括关机、单用户模式、无图形网络模式、有图形网络模式等。可以使用systemctl set-default命令设置默认启动级别。如果忘记超级用户密码,可以通过在开机选择界面按键,进入引导文件...

    在Linux下快速删除文件及关闭系统

    在Linux操作系统中,管理和操作文件是日常工作中必不可少的一部分。本文主要关注如何在Linux下快速删除文件以及正确关闭系统,这两个话题对于任何Linux用户来说都至关重要。 首先,让我们深入了解一下如何在Linux中...

    Linux服务器配置与管理:Linux系统图形及字符界面.pptx

    每个虚拟终端可以独立进行登录会话,这意味着用户可以在不同的终端上以不同的用户身份同时进行操作,或者同时运行多个应用程序。通过Ctrl+Alt+F2至F6的快捷键组合,用户可以在图形界面和字符界面之间快速切换。 ...

Global site tag (gtag.js) - Google Analytics