Ubuntu如何进救援模式
<h2 id="linux的救援模式-1">linux的救援模式-1</h2><h1 id="详解在-ubuntu-中引导到救援模式或紧急模式">详解在 Ubuntu 中引导到救援模式或紧急模式</h1>
<p>这篇教程将介绍如何在 Ubuntu 22.04、20.04 和 18.04 LTS 版本中引导到 救援Rescue 模式或 紧急Emergency 模式。</p>
<blockquote>
<p>你可能已经知道,在 RHEL 7 、RHEL 8 、Ubuntu 16.04 LTS 及其更新的版本的 Linux 发行版中 运行等级Runlevels 已经被 系统目标Systemd target 所替代。更多关于 运行等级Runlevel 和 系统目标Systemd targets 的信息,参考 这篇指南 。</p>
</blockquote>
<p>这篇指南是针对 Ubuntu 编写的,但是,下面所给的步骤应该也适用于大多数使用 systemd 作为默认服务管理器的 Linux 发行版。</p>
<p>在进入主题前,让我们简单的理解:什么是 救援rescue 模式 和 紧急Emergency 模式,以及这两种模式的目的是什么。</p>
<h3 id="什么是救援模式">什么是救援模式?</h3>
<p>在 Linux 发行版中,救援模式等效于使用 SysV 作为默认的服务器管理器的 单用户single user 模式。在救援模式中,将挂载所有的本地文件系统,将仅启动一些重要的服务。但是,不会启动一般的服务(例如,网络服务)。</p>
<p>救援模式在不能正常引导系统的情况下是很有用的。此外,我们可以在救援模式下执行一些重要的救援操作,例如,重新设置 root 密码 。</p>
<h3 id="什么是紧急模式">什么是紧急模式?</h3>
<p>与救援模式相比,在紧急模式中,不会启动任何的东西。不会启动服务、不会挂载挂载点、不会建立套接字、什么都不会启动。你将所拥有的只是一个 <strong>原始的 shell</strong> 。紧急模式适用于调试目的。</p>
<p>首先,我们将看到如何在 Ubuntu 22.04 和 20.04 LTS 发行版中引导到救援模式或紧急模式。在 Ubuntu 22.04 和 20.04 LTS 中的过程是完全相同的!</p>
<h3 id="在-ubuntu-2204--2004-lts-中引导到救援模式">在 Ubuntu 22.04 / 20.04 LTS 中引导到救援模式</h3>
<p>我们可以使用两种方法来引导到救援模式。</p>
<h4 id="方法-1">方法 1</h4>
<p>打开你的 Ubuntu 系统。在 BIOS 徽标出现后,按下 <code>ESC</code> 按键来显示 GRUB 菜单。</p>
<p>在 GRUB 菜单中,选择第一项,并按下 <code>e</code> 按键来编辑它。</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153646w195y18td8bdy397.png"></p>
<p><em>GRUB Menu In Ubuntu 22.04 / 20.04 LTS</em></p>
<p>按下 <code>↓</code> 按键,并找到以单词 <code>linux</code> 开头的一行代码,并在其结尾处添加下面的一行代码。为到达其结尾处,只需要按下 <code>Ctrl + e</code> 组合键,或使用你键盘上的 <code>END</code> 按键或 <code>←</code>/<code>→</code> 按键。</p>
<pre><code>systemd.unit=rescue.target
</code></pre>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153647vakswabkkavrj1v4.png"></p>
<p><em>Edit Grub Boot Menu Entries To Enter Into Rescue Mode In Ubuntu 22.04 / 20.04 LTS</em></p>
<p>在添加上面的代码行后,按下 <code>Ctrl + x</code> 组合键或按下 <code>F10</code> 按键来引导到救援模式。</p>
<p>数秒后,你将作为 root 用户来登录到救援模式(即单用户模式)。将会提示你按下回车键来进入维护。</p>
<p>下图是 Ubuntu 22.04 / 20.04 LTS 系统的救援模式的样子:</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153648wlwusckkyt1uoyha.png"></p>
<p><em>Boot Into Rescue Mode In Ubuntu 22.04 / 20.04 LTS</em></p>
<p>现在,在救援模式中做你想做的任何事。在救援模式中,在你执行任何操作前,你可能需要以 读/写模式来挂载根(<code>/</code>)文件系统。</p>
<pre><code>mount -n -o remount,rw /
</code></pre>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153649k1cddi1ama7mt4it.png"></p>
<p><em>Mount Root File System In Read Write Mode In Ubuntu 22.04 / 20.04 LTS</em></p>
<p>在完成后,按下 <code>Ctrl + d</code> 组合键来引导到正常模式。或者,你可以输入下面的任意一个命令来引导到正常模式。</p>
<pre><code>systemctl default
</code></pre>
<p>或者,</p>
<pre><code>exit
</code></pre>
<p>如果你想重新启动系统,而不是引导到正常的模式,输入:</p>
<pre><code>systemctl reboot
</code></pre>
<h4 id="方法-2">方法 2</h4>
<p>在这种方法中,你不需要编辑 GRUB 启动菜单项目。</p>
<p>打开系统电源,并从 GRUB 启动菜单中选择 Ubuntu 高级选项Advanced options for Ubuntu。</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153650zj2lpl0gg5rzg7pj.png"></p>
<p><em>Choose Advanced Options For Ubuntu From Grub Boot Menu</em></p>
<p>接下来,你将看到一个带有内核版本的可用的 Ubuntu 版本的列表。在 Ubuntu 中的 GRUB 启动菜单中选择 恢复模式Recovery mode 。</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153651n7uvyd7dxzq437s4.png"></p>
<p><em>Choose Recovery Mode In Grub Boot Menu In Ubuntu 22.04 / 20.04 LTS</em></p>
<p>数秒后,你将看到 Ubuntu 的 恢复Recovery 菜单。从恢复菜单中,选择 进入 root 的 shell 提示符Drop to root shell prompt 选项 ,并按下回车键。</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153652u0ovopa4d7uc4pzu.png"></p>
<p><em>Enter Into Root Shell Prompt In Ubuntu 22.04 / 20.04 LTS</em></p>
<p>现在,你将进入维护。</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153652smwz1mwlzgfqgmhq.png"></p>
<p><em>Ubuntu Maintenance Mode</em></p>
<p>通过输入下面的命令来 以读/写模式的方式 来挂载根(<code>/</code>)文件系统:</p>
<pre><code>mount -n -o remount,rw /
</code></pre>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153653wol7s3j03687zjm5.png"></p>
<p><em>Mount Root File System In Read Write Mode In Ubuntu</em></p>
<p>在救援模式中做你想做的任何事。</p>
<p>在完成后,输入 <code>exit</code> 来返回到恢复菜单。</p>
<pre><code>exit
</code></pre>
<p>最后,选择 救援正常启动Resume normal boot 选项,并按下回车键。</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153653grrq9n1qs5t1ref0.png"></p>
<p><em>Boot Into Normal Mode In Ubuntu</em></p>
<p>再次按下回车键来退出恢复模式,并继续引导到正常模式。</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153654tfa4j9f4pg77ug4o.png"></p>
<p><em>Exit The Recovery Mode In Ubuntu</em></p>
<p>如果你不想引导到正常模式,从救援模式中输入 <code>reboot</code> 并按下回车键来重新启动你的系统。</p>
<h3 id="在-ubuntu-2204--2004-lts-中引导到紧急模式">在 Ubuntu 22.04 / 20.04 LTS 中引导到紧急模式</h3>
<p>当 GRUB 菜单出现时,按下 <code>e</code> 按键来编辑它。</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153646w195y18td8bdy397.png"></p>
<p><em>GRUB Menu In Ubuntu 22.04 / 20.04 LTS</em></p>
<p>找到以单词 <code>linux</code> 开头的一行代码,并在其结尾处添加下面的一行代码:</p>
<pre><code>systemd.unit=emergency.target
</code></pre>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153655bzfkxiciek3xk6ip.png"></p>
<p><em>Edit Grub Boot Menu Entries To Enter Into Emergency Mode In Ubuntu 22.04 / 20.04 LTS</em></p>
<p>在添加上面的代码行后,按下 <code>Ctrl + x</code> 组合键,或按下 <code>F10</code> 按键来引导到紧急模式。</p>
<p>数秒后,你将作为 <code>root</code> 用户来进入维护。将会提示你按下回车键来进入紧急模式。</p>
<p>下图是 Ubuntu 22.04 / 20.04 LTS 系统的紧急模式的样子:</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153656i7kq3pl87eeacxdk.png"></p>
<p><em>Boot Into Emergency Mode In Ubuntu 22.04 / 20.04 LTS</em></p>
<p>现在,在紧急模式中做你想做的任何事。在紧急模式中,在你执行任何操作前,你可能需要以读/写模式来挂载根(<code>/</code>)文件系统。</p>
<pre><code>mount -n -o remount,rw /
</code></pre>
<p>在完成后,按下 <code>Ctrl + d</code> 组合键来引导到正常模式。或者,你可以输入下面的任意一个命令来引导到正常模式。</p>
<pre><code>systemctl default
</code></pre>
<p>或者,</p>
<pre><code>exit
</code></pre>
<p>如果你想重新启动系统,而不是引导到正常模式,输入:</p>
<pre><code>systemctl reboot
</code></pre>
<h3 id="在-ubuntu-1804-lts-中引导到救援模式">在 Ubuntu 18.04 LTS 中引导到救援模式</h3>
<p>启动你的 Ubuntu 系统。当 GRUB 菜单出现时,选择第一项并按下按键 <code>e</code> 来编辑。(为到达其行尾处,只需要按下 <code>Ctrl + e</code> 组合键,或使用你键盘上的 <code>END</code> 按键或 <code>←</code>/<code>→</code> 按键):</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153657y5bzw64wbqw3xmbj.png"></p>
<p><em>Grub Menu</em></p>
<p>如果你没有看到 GRUB 菜单,只需要在 BIOS 徽标出现后,按下 <code>ESC</code> 按键来显示 GRUB 菜单。</p>
<p>找到以单词 <code>linux</code> 开头的一行代码,并在其结尾处添加下面的一行代码(为到达其行尾处,只需要按下 <code>Ctrl + e</code> 组合键,或使用你键盘上的 END<code>按键或</code>←<code>/</code>→` 按键):</p>
<pre><code>systemd.unit=rescue.target
</code></pre>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153658o48s9tl8os0qp496.png"></p>
<p><em>Edit Grub Menu</em></p>
<p>在添加上面的代码行后,只需要按下 <code>Ctrl + x</code> 组合键,或按下 <code>F10</code> 按键来引导到救援模式。数秒后,你将作为 <code>root</code> 用户进入维护(即单用户模式)。</p>
<p>下图是 Ubuntu 18.04 LTS 服务器系统的救援模式的样子:</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153659st34z5z00jy5taoj.png"></p>
<p><em>Ubuntu Rescue Mode</em></p>
<p>接下来,输入下面的命令来挂载根(<code>/</code>)文件系统为读/写模式。</p>
<pre><code>mount -n -o remount,rw /
</code></pre>
<h3 id="在-ubuntu-1804-lts-中引导到紧急模式">在 Ubuntu 18.04 LTS 中引导到紧急模式</h3>
<p>引导你的 Ubuntu 到紧急模式基本与上述方法相同。你所需要做的全部工作是,在编辑 GRUB 菜单时,将 <code>systemd.unit=rescue.target</code> 替换为 <code>systemd.unit=emergency.target</code> 。</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153659h6w9bvxrbb4mbk46.png"></p>
<p><em>Edit Grub Menu</em></p>
<p>在你添加 <code>systemd.unit=emergency.target</code> 后,按下 <code>Ctrl + x</code> 组合键,或按下 <code>F10</code> 按键来引导到紧急模式。</p>
<p><img src="https://img.linux.net.cn/data/attachment/album/202206/14/153700v0k43e4jov34a44m.png"></p>
<p><em>Ubuntu Emergency Mode</em></p>
<p>最后,你可以使用下面的命令来以读/写模式的方式来挂载根(<code>/</code>)文件系统:</p>
<pre><code>mount -n -o remount,rw /
</code></pre>
<h3 id="在救援模式和紧急模式之间切换">在救援模式和紧急模式之间切换</h3>
<p>如果你正在救援模式中,你不必像我上述提到的那样来编辑 GRUB 的菜单启动项。相反,你只想要输入下面的命令来立刻切换到紧急模式:</p>
<pre><code>systemctl emergency
</code></pre>
<p>同样,为从紧急模式切换到救援模式,输入:</p>
<pre><code>systemctl rescue
</code></pre>
<h3 id="总结">总结</h3>
<p>现在,你知道了什么是救援模式和紧急模式,以及如何在 Ubuntu 22.04 、20.04 和 18.04 LTS 系统中启动到这些模式。正如我已经提到的,在这里提供的这些步骤应该也适用于大多数当前使用 systemd 作为默认服务管理器的 Linux 发行版。</p><br><br>
来源:https://www.cnblogs.com/nwq1101/p/18038235
頁:
[1]