linux单用户模式

2014年11月11日

17:18

在grub上相应要启动的内核上按“e”。

进入下一界面,继续按“e”。

在进入文本界面后,输入“single”回车。

进入grub界面后,按“b”,即进入single模式

一、单用户模式;

单用户模式要求我们输入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挂载的文件系统。

源文档 <http://blog.chinaunix.net/uid-12765590-id-121921.html>

linux单用户模式的更多相关文章

  1. linux单用户模式修改密码

    Linux使用版本: Centos 7 救援模式: 1,在虚拟机设置里查看光驱是否开启启动,要保证设置状态里的两个选项都已选择. 2,先将Centos系统关机,然后在VMware左侧选中这台虚拟机并右 ...

  2. Linux单用户模式(修改密码、运行级别)方法详解

    很多新手当面对"忘记 root 账户密码导致无法登陆系统"这个问题时,直接选择重新系统.其实大可不必,我只需要进入 emergency mode(单用户模式)更新 root 账户的 ...

  3. Linux 单用户模式的使用

    在进入系统启动菜单时,选择kernel,输入"e"后进入,在kernel开头的启动项后输入(空格) /single或者 / 1,然后输入"b"重新启动机器,此时 ...

  4. 进入Linux单用户模式

    1.       在启动系统出现如下画面时按Enter键进入系统设置页面: 2.       系统设置页面: 3.       按下e键进入: 4.       选择第二项,按e键进入 5.      ...

  5. linux单用户模式修改密码与系统启动级别

    目录 一:系统启动级别 二:单用户模式修改密码 一:系统启动级别 系统启动级别: 0 关机 1 单用户模式(无法通过xshell方式使用)(虚拟机操作)(系统云服务商后台) 2 多用户无网络模式 3 ...

  6. Linux进入单用户模式

    有时候配置linux的过程中,因为一些误操作导致系统初始化时堵塞或挂起而无法进入系统,原因往往是因为配置文件设置错误,部分文件被误删之类.遇到这种情况一般新手的做法就是重装(虚拟机不装白不装),但在实 ...

  7. CentOS6.3修复模式/单用户模式修改fstab文件

    今天修改LVM逻辑卷的名称时候,忘记更改fstab配置文件了,导致机器重启后找不到盘,进不了系统!立即用光盘进入修复模式进行修复!  1.修复模式操作方法: 用光盘进入Linux修复模式,插入cent ...

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

    在上一篇随笔里面详细讲解了Linux系统的启动过程 (Linux学习之CentOS(二十一)--Linux系统启动详解),我们知道Linux系统的启动级别一共有6种级别,通过 /etc/inittab ...

  9. 使用单用户模式破解Linux密码

    使用单用户模式破解Linux密码 特别说明:在实际工作应用中,安装Linux操作系统必须设置装载口令,否则很容易被破解. 1.使用reboot指令重启Linux操作系统 2.在进入操作系统数秒时,单击 ...

随机推荐

  1. Tomcat的work目录作用

    Tomcat的work目录作用 很多网友喜欢把tomcat的work目录里的东西叫做缓存,其实那不是很恰当,work目录只是tomcat的工作目录,也就是tomcat把jsp转换为class文件的工作 ...

  2. PHP 验证码:扭曲+粘连+变形

    一,绪论 由于项目需要,需要加强目前的验证码,我们参照的对象是支付宝. 基于PHP CodeIgniter 框架,代码放置在下面的路径下. /application/libraries 二,主要代码 ...

  3. 使用CloudFlare 的 PKI 工具集 cfssl 来生成 Certificate Authority (CA) 证书和秘钥文件

    要安装kubernetes最新版集群,https://github.com/opsnull/follow-me-install-kubernetes-cluster 这个文档必须要研习一下了. 以下实 ...

  4. 20145105 《Java程序设计》实验二总结

    实验二 Java面向对象程序设计 一. 实验内容: 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.多态.建模 初步掌握UML 熟悉S.O.L.I.D原则 了解设计模式 二. 实验步骤 (一 ...

  5. 20145105 《Java程序设计》第6周学习总结

    20145105 <Java程序设计>第6周学习总结 教材学习内容总结 第十章 输入/输出 一.InputStream与OutputStream (一)串流设计的概念 输入串流代表对象:j ...

  6. 移动页面click延迟引发的touch问题

    一.事件捕获与冒泡 先扯一下事件的触发流程,这个之后会用到. DOM2级事件规定事件包括三个阶段: ① 事件捕获阶段 ② 处于目标阶段 ③ 事件冒泡阶段 大概的流程就是事件从最外层一层一层往里面传递( ...

  7. 使用ShellExecute打开默认程序(邮件客户端)

    转载:http://www.cnblogs.com/xubin0523/archive/2012/11/01/2749729.html ShellExecute ShellExecute的功能是运行一 ...

  8. E: could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporary unavailable) E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is an other process using it

    1. 问题详细提示如下: E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarly unava ...

  9. luogu P2184 贪婪大陆

    乍一不咋会 ╭(╯3╰)╮ 把地雷L到R看成一条线段 要求的就是区间内有多少条线段经过 很明显是要用[1,R]内的起点个数-[1,L-1]的终点个数 然后这起点和终点个数可以用简单的差分线段树来维护一 ...

  10. excel在msdn上的说明文档

    Microsoft.Office.Tools.Excel.Worksheet 对象提供和 Excel 主互操作程序集中的 Microsoft.Office.Interop.Excel.Workshee ...